Mac Developer Library

Developer

IOFWPseudoAddressSpace Class Reference

Options
Deployment Target:

On This Page
Language:

IOFWPseudoAddressSpace

Inheritance


  • IOFWPseudoAddressSpace

Conforms To


Not Applicable

Import Statement


Not Applicable

Objective-C

@import Kernel;

Availability


Available in OS X v10.0 and later.

  • returns number of bytes starting at addr in this space

    Declaration

    C++

    virtual UInt32 contains( FWAddress addr);

    Return Value

    0 if it doesn't contain the address

  • A method for processing an address space read request

    Declaration

    C++

    virtual UInt32 doRead( UInt16nodeID, IOFWSpeed & speed, FWAddressaddr, UInt32len, IOMemoryDescriptor **buf, IOByteCount *offset, IOFWRequestRefConreqrefcon);

    Parameters

    nodeID

    FireWire Read from nodeID.

    speed

    at this 'speed'.

    addr

    with FireWire address 'addr'.

    len

    read 'len' bytes from nodeID.

    buf

    points to a memory descriptor containing the packet data.

    offset

    start from this 'offset' in 'buf'.

    reqrefcon

    Can be queried for extra info about the request.

    Return Value

    UIn32 returns kFWResponseComplete on success

  • A method for processing an address space write request

    Declaration

    C++

    virtual UInt32 doWrite( UInt16nodeID, IOFWSpeed& speed, FWAddressaddr, UInt32len, const void *buf, IOFWRequestRefConreqrefcon);

    Parameters

    nodeID

    FireWire Write to nodeID.

    speed

    at this 'speed'.

    addr

    with FireWire address 'addr'.

    len

    write 'len' bytes to nodeID.

    buf

    obtain bytes from location given by 'buf'.

    reqrefcon

    Can be queried for extra info about the request.

    Return Value

    UIn32 returns kFWResponseComplete on success

  • Initialize an address space object to handle r/w memory

    Declaration

    C++

    virtual bool initAll( IOFireWireBus *bus, FWAddress *addr, UInt32len, FWReadCallbackreader, FWWriteCallbackwriter, void *refcon);

    Parameters

    bus

    Points to IOFireWireBus object.

    addr

    Points to starting address for the Pseudo Address Space.

    len

    Length of the Pseudo Address Space.

    reader

    Callback handler for incoming Read.

    writer

    Callback handler for incoming Write.

    refcon

    Client's callback object.

    Return Value

    returns true on success, false on failure

  • Initialize a fixed address space at top of kCSRRegisterSpaceBaseAddressHi

    Declaration

    C++

    virtual bool initFixed( IOFireWireBus *bus, FWAddress addr, UInt32 len, FWReadCallback reader, FWWriteCallback writer, void *refcon);

    Parameters

    bus

    Points to IOFireWireBus object.

    addr

    Points to starting address for the Pseudo Address Space.

    reader

    Callback handler for incoming Read.

    writer

    Callback handler for incoming Write.

    refcon

    Client's callback object.

    Return Value

    returns true on success, false on failure

  • Installs a callback to receive notification, when FWIM has completed ARxReqInt processing and no incoming packets are left in the queue.

    Declaration

    C++

    inline void setARxReqIntCompleteHandler( void *refcon, IOFWARxReqIntCompleteHandlerhandler )

    Parameters

    refcon

    Client's callback object.

    handler

    Client callback to be invoked, at the end of interrupt processing.

    Return Value

    none.

  • Create an address space object to handle read-only memory (eg. the local ROM) handles everything itself

    Declaration

    C++

    static IOFWPseudoAddressSpace* simpleRead( IOFireWireBus *bus, FWAddress *addr, UInt32len, const void *data);

    Parameters

    bus

    Points to IOFireWireBus object.

    addr

    Points to starting address for the Pseudo Address Space.

    len

    Length of the Pseudo Address Space.

    data

    The virtual address of the first byte in the memory.

    Return Value

    returns valid IOFWPseudoAddressSpace on success, null on failure

  • A method for processing an address space read request

    Declaration

    C++

    static UInt32 simpleReader( void *refcon, UInt16nodeID, IOFWSpeed & speed, FWAddressaddr, UInt32len, IOMemoryDescriptor **buf, IOByteCount *offset, IOFWRequestRefConreqrefcon);

    Parameters

    refcon

    Client's callback object.

    nodeID

    FireWire Read from nodeID.

    speed

    at this 'speed'.

    addr

    with FireWire address 'addr'.

    len

    read 'len' bytes from nodeID.

    buf

    points to a memory descriptor containing the packet data.

    offset

    start from this 'offset' in 'buf'.

    reqrefcon

    Can be queried for extra info about the request.

    Return Value

    UIn32 returns kFWResponseComplete on success

  • Create an address space object to handle fixed read-only memory (eg. the local ROM) handles everything itself

    Declaration

    C++

    static IOFWPseudoAddressSpace* simpleReadFixed( IOFireWireBus *bus, FWAddressaddr, UInt32len, const void *data);

    Parameters

    bus

    Points to IOFireWireBus object.

    addr

    Points to starting address for the Pseudo Address Space.

    len

    Length of the Pseudo Address Space.

    data

    The virtual address of the first byte in the memory.

    Return Value

    returns valid IOFWPseudoAddressSpace on success, null on failure

  • Create an address space object to handle r/w memory handles everything itself

    Declaration

    C++

    static IOFWPseudoAddressSpace* simpleRW( IOFireWireBus *bus, FWAddress *addr, IOMemoryDescriptor *data);

    Parameters

    bus

    Points to IOFireWireBus object.

    addr

    Points to starting address for the Pseudo Address Space.

    data

    The virtual address of the first byte in the memory.

    Return Value

    returns valid IOFWPseudoAddressSpace on success, null on failure

  • Create an address space object to handle r/w memory handles everything itself

    Declaration

    C++

    static IOFWPseudoAddressSpace* simpleRW( IOFireWireBus *bus, FWAddress *addr, UInt32len, void *data);

    Parameters

    bus

    Points to IOFireWireBus object.

    addr

    Points to starting address for the Pseudo Address Space.

    len

    Length of the Pseudo Address Space.

    data

    The virtual address of the first byte in the memory.

    Return Value

    returns valid IOFWPseudoAddressSpace on success, null on failure

  • Create a Read/Write fixed address space at top of kCSRRegisterSpaceBaseAddressHi.

    Declaration

    C++

    static IOFWPseudoAddressSpace * simpleRWFixed( IOFireWireBus *control, FWAddressaddr, UInt32len, const void *data );

    Parameters

    control

    Points to IOFireWireBus object.

    addr

    Points to starting address for the Pseudo Address Space.

    len

    Length of the address range.

    data

    The virtual address of the first byte in the memory.

    Return Value

    returns valid IOFWPseudoAddressSpace on success, null on failure

  • A method for processing an address space write request

    Declaration

    C++

    static UInt32 simpleWriter( void *refcon, UInt16nodeID, IOFWSpeed& speed, FWAddressaddr, UInt32len, const void *buf, IOFWRequestRefConreqrefcon);

    Parameters

    refcon

    Client's callback object.

    nodeID

    FireWire Write to nodeID.

    speed

    at this 'speed'.

    addr

    with FireWire address 'addr'.

    len

    write 'len' bytes to nodeID.

    buf

    obtain bytes from location given by 'buf'.

    reqrefcon

    Can be queried for extra info about the request.

    Return Value

    UIn32 returns kFWResponseComplete on success

Data Types

  • Declaration

    C++

    struct ExpansionData { };

    Discussion

    This structure will be used to expand the capablilties of the class in the future.

Instance Variables

  • Reserved for future use. (Internal use only)

    Declaration

    C++

    ExpansionData *reserved;