Mac OS X Reference Library Apple Developer
Search

IOExtendedLBA

Inherits from:
Declared In:

Overview

If 48-bit LBAs are supported, IOExtendedLBA is used to represent a 48-bit LBA. The driver examines the ATA identify data to determine if 48-bit addressing is supported.



Functions

getCommand

Taskfile access. Registers are named in accordance with ATA Standards conventions

getDevice

Taskfile access. Registers are named in accordance with ATA Standards conventions

getExtendedLBA

convenience method that gets a 48-bit LBA

getFeatures16

Taskfile access. Registers are named in accordance with ATA Standards conventions

getLBAHigh16

convenience method that gets the high 16 bits of a 48-bit LBA

getLBALow16

convenience method that gets the lower 16 bits of a 48-bit LBA

getLBAMid16

convenience method that gets the middle 16 bits of a 48-bit LBA

getSectorCount16

Taskfile access. Registers are named in accordance with ATA Standards conventions

setCommand

Taskfile access. Registers are named in accordance with ATA Standards conventions

setDevice

Taskfile access. Registers are named in accordance with ATA Standards conventions

setExtendedLBA

convenience method that sets the taskfile registers into a 48-bit LBA address, along with sector count, and unit selected and LBA bit set

setFeatures16

Taskfile access. Registers are named in accordance with ATA Standards conventions

setLBAHigh16

convenience method that sets the high 16 bits of a 48-bit LBA

setLBALow16

convenience method that sets the lower 16 bits of a 48-bit LBA

setLBAMid16

convenience method that sets the middle 16 bits of a 48-bit LBA

setSectorCount16

Taskfile access. Registers are named in accordance with ATA Standards conventions

zeroData

convenience method that zeros out the lba, sector count, features, device, and command member variables


getCommand


Taskfile access. Registers are named in accordance with ATA Standards conventions

public

virtual UInt8 getCommand( void );

getDevice


Taskfile access. Registers are named in accordance with ATA Standards conventions

public

virtual UInt8 getDevice( void );

getExtendedLBA


convenience method that gets a 48-bit LBA

public

virtual void getExtendedLBA( UInt32 *outLBAHi, UInt32 *outLBALo );

getFeatures16


Taskfile access. Registers are named in accordance with ATA Standards conventions

public

virtual UInt16 getFeatures16( void );

getLBAHigh16


convenience method that gets the high 16 bits of a 48-bit LBA

public

virtual UInt16 getLBAHigh16( void );

getLBALow16


convenience method that gets the lower 16 bits of a 48-bit LBA

public

virtual UInt16 getLBALow16 ( void);

getLBAMid16


convenience method that gets the middle 16 bits of a 48-bit LBA

public

virtual UInt16 getLBAMid16( void );

getSectorCount16


Taskfile access. Registers are named in accordance with ATA Standards conventions

public

virtual UInt16 getSectorCount16( void );

setCommand


Taskfile access. Registers are named in accordance with ATA Standards conventions

public

virtual void setCommand( UInt8 inCommand );

setDevice


Taskfile access. Registers are named in accordance with ATA Standards conventions

public

virtual void setDevice( UInt8 inDevice );

setExtendedLBA


convenience method that sets the taskfile registers into a 48-bit LBA address, along with sector count, and unit selected and LBA bit set

public

virtual void setExtendedLBA( UInt32 inLBAHi, UInt32 inLBALo, ataUnitID inUnit, UInt16 extendedCount, UInt8 extendedCommand);

setFeatures16


Taskfile access. Registers are named in accordance with ATA Standards conventions

public

virtual void setFeatures16( UInt16 features );

setLBAHigh16


convenience method that sets the high 16 bits of a 48-bit LBA

public

virtual void setLBAHigh16( UInt16 lbaHigh );

setLBALow16


convenience method that sets the lower 16 bits of a 48-bit LBA

public

virtual void setLBALow16( UInt16 lbaLow);

setLBAMid16


convenience method that sets the middle 16 bits of a 48-bit LBA

public

virtual void setLBAMid16 ( UInt16 lbaMid);

setSectorCount16


Taskfile access. Registers are named in accordance with ATA Standards conventions

public

virtual void setSectorCount16( UInt16 sectorCount );

zeroData


convenience method that zeros out the lba, sector count, features, device, and command member variables

public

virtual void zeroData( void);

Structs and Unions

ExpansionData

ExpansionData


public

struct ExpansionData { };
Discussion

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

Member Data

reserved

reserved


Discussion

Reserved for future use. (Internal use only)

 

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

Last Updated: 2010-07-29