Mac Developer Library

Developer

IOATABusInfo Class Reference

Options
Deployment Target:

On This Page
Language:

IOATABusInfo

used to indicate the capabilities of the bus the device is connected to, PIO and DMA modes supported, etc.

Inheritance


Not Applicable

Conforms To


Not Applicable

Import Statement


Not Applicable @import Kernel;

Availability


Available in OS X v10.0 and later.
  • factory method

    Declaration

    C++

    static IOATABusInfo* atabusinfo( void);

    Import Statement

  • bit-significant map of DMA mode(s) supported on the bus. Used by clients of ATAControllers to find out about the bus.

    Declaration

    C++

    UInt8 getDMAModes( void );

    Import Statement

  • returns the bit-significant map of PIO mode(s) supported on the bus. Used by clients of ATAControllers to find out about the bus.

    Declaration

    C++

    UInt8 getPIOModes( void );

    Import Statement

  • returns the socket type, internal fixed, media-bay, PC-Card Used by clients of ATAControllers to find out about the bus

    Declaration

    C++

    ataSocketType getSocketType( void );

    Import Statement

  • bit-significant map of Ultra mode(s) supported on the bus. Used by clients of ATAControllers to find out about the bus.

    Declaration

    C++

    UInt8 getUltraModes( void );

    Import Statement

  • How many devices are present on bus. Used by clients of ATAControllers to find out about the bus.

    Declaration

    C++

    UInt8 getUnits( void );

    Import Statement

  • The maximum number of 512-byte blocks this controller supports in a single Extended LBA transfer. Some controllers may be limited to less than the maximum sector count allowed under extended LBA protocol.

    Declaration

    C++

    UInt16 maxBlocksExtended( void);

    Import Statement

  • Bit significant map of supported transfer modes. Set by ATAControllers.

    Declaration

    C++

    void setDMAModes( UInt8 inModeBitMap );

    Import Statement

  • Set true if supports DMA Queued Feature. Set by ATAControllers.

    Declaration

    C++

    void setDMAQueued( bool inState);

    Import Statement

  • Set true for supports 48-bit LBA. Set by ATAControllers.

    Declaration

    C++

    void setExtendedLBA( bool inState );

    Import Statement

  • value set by controllers to indicate the maximum number of blocks allowed in a single transfer of data. Some dma engines may not be capable of supporting the full 16-bit worth of sector count allowed under 48 bit extended LBA. Default is 256 blocks, same as standard ATA.

    Declaration

    C++

    void setMaxBlocksExtended( UInt16 inMaxBlocks);

    Discussion

    function setMaxBlocksExtended

    Import Statement

  • Set true for supports overlapped packet feature set. Set by ATAControllers.

    Declaration

    C++

    void setOverlapped( bool inState);

    Import Statement

  • Bit significant map of supported transfer modes. Set by ATAControllers.

    Declaration

    C++

    void setPIOModes( UInt8 inModeBitMap);

    Import Statement

  • internal fixed, media-bay, PC-Card. Set by ATAControllers.

    Declaration

    C++

    void setSocketType( ataSocketType inSocketType );

    Import Statement

  • Bit significant map of supported transfer modes. Set by ATAControllers.

    Declaration

    C++

    void setUltraModes( UInt8 inModeBitMap );

    Import Statement

  • set to indicate how many devices are on this bus. Set by ATAControllers.

    Declaration

    C++

    void setUnits( UInt8 inNumUnits );

    Import Statement

  • True = DMA supported on bus - inferred by looking at the DMA mode bits. Used by clients of ATAControllers to find out about the bus.

    Declaration

    C++

    bool supportsDMA( void );

    Import Statement

  • Supports DMA Queued Feature set if true. Used by clients of ATAControllers to find out about the bus.

    Declaration

    C++

    bool supportsDMAQueued( void );

    Import Statement

  • Supports 48-bit LBA if true. Used by clients of ATAControllers to find out about the bus.

    Declaration

    C++

    bool supportsExtendedLBA( void );

    Import Statement

  • Supports overlapped packet feature set if true. Used by clients of ATAControllers to find out about the bus.

    Declaration

    C++

    bool supportsOverlapped( void );

    Import Statement

  • set this object to a blank state.

    Declaration

    C++

    virtual void zeroData( void);

    Import Statement

Data Types

  • Declaration

    C++

    struct ExpansionData { };

    Discussion

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

Instance Variables

  • Reserved for future use. (Internal use only)

    Declaration

    C++

    ExpansionData *reserved;