IOFireWireLocalUnitDirectoryInterface

Declared In:

Overview

Allows creation and management of unit directories in the config ROM of the local machine. After the unit directory has been built, Publish() should be called to cause it to appear in the config ROM. Unpublish() has the reverse effect as Publish().

This interface can be created using IOFireWireDeviceInterface::CreateLocalUnitDirectory.



Functions

AddEntry_FWAddress

Append an offset leaf

AddEntry_Ptr

Append a data leaf

AddEntry_UInt32

Append an immediate leaf

Publish

Causes a constructed or updated unit directory to appear in the local machine's config ROM. Note that this call will cause a bus reset, after which the unit directory will be visible to devices on the bus.

Unpublish

Has the opposite effect from Publish(). This call removes a unit directory from the local machine's config ROM. Note that this call will cause a bus reset, after which the unit directory will no longer appear to devices on the bus.


AddEntry_FWAddress


Append an offset leaf

IOReturn ( *AddEntry_FWAddress)(
    IOFireWireLibLocalUnitDirectoryRef self,
    int key,
    const FWAddress* value,
    CFStringRef inDesc);  
Parameters
self

The local unit directory interface to use.

key

The config ROM key for the data to be added.

value

A pointer to a FireWire address.

inDesc

Reserved; set to NULL.

Discussion

Appends an offset leaf to a unit directory. The address passed in value should be an address in initial unit space of the local config ROM.


AddEntry_Ptr


Append a data leaf

IOReturn ( *AddEntry_Ptr)(
    IOFireWireLibLocalUnitDirectoryRef self,
    int key,
    void *inBuffer,
    size_t inLen,
    CFStringRef inDesc);  
Parameters
self

The local unit directory interface to use.

key

The config ROM key for the data to be added.

inBuffer

A pointer to the data to be placed in the added leaf.

inLen

Length of the data being added.

inDesc

Reserved; set to NULL.

Discussion

Appends a leaf data node to a unit directory


AddEntry_UInt32


Append an immediate leaf

IOReturn ( *AddEntry_UInt32)(
    IOFireWireLibLocalUnitDirectoryRef self,
    int key,
    UInt32 value,
    CFStringRef inDesc);  
Parameters
self

The local unit directory interface to use.

key

The config ROM key for the data to be added.

value

The value to be added.

inDesc

Reserved; set to NULL.

Discussion

Appends an immediate leaf to a unit directory. Note that only the lower 3 bytes of the passed in value can appear in the unit directory.


Publish


Causes a constructed or updated unit directory to appear in the local machine's config ROM. Note that this call will cause a bus reset, after which the unit directory will be visible to devices on the bus.

IOReturn ( *Publish)(
    IOFireWireLibLocalUnitDirectoryRef self);  
Parameters
self

The local unit directory interface to use.


Unpublish


Has the opposite effect from Publish(). This call removes a unit directory from the local machine's config ROM. Note that this call will cause a bus reset, after which the unit directory will no longer appear to devices on the bus.

IOReturn ( *Unpublish)(
    IOFireWireLibLocalUnitDirectoryRef self);  
Parameters
self

The local unit directory interface to use.

Member Data

revision
version

revision


UInt32 revision;  
Discussion

Interface revision


version


UInt32 version;  
Discussion

Interface version

 

Did this document help you? Yes It's good, but... Not helpful...

 

Last Updated: 2009-10-15