IOATAController

Inherits from:
Declared In:

Overview

The base class for ata controller family. Provides the interface common to all ata bus controllers.

Discussion

The header doc for this class is incomplete. The source however is heavily commented and should be consulted until such time as complete header doc is available.



Functions

busCanDispatch

answers whether the bus is in state such that the next command can be dispatched.

dispatchNext

Causes the command at the front of the queue to dequeue, made the current command and begin execution.

handleCommand

Called by executeCommand() to handle the client command from the workloop context.


busCanDispatch


answers whether the bus is in state such that the next command can be dispatched.

protected

virtual bool busCanDispatch( void );
Return Value

true - bus is free to issue commands. false - bus cannot issue commands at this time.


dispatchNext


Causes the command at the front of the queue to dequeue, made the current command and begin execution.

protected

virtual IOReturn dispatchNext( void );
Return Value

noErr indicates successful dispatch.


handleCommand


Called by executeCommand() to handle the client command from the workloop context.

protected

virtual IOReturn handleCommand( void *command, void *param1 = 0, void *param2 = 0, void *param3 = 0);
Parameters
command

The command code.

param1

Command parameter.

param2

Command parameter.

param3

Command parameter.

Return Value

kIOReturnSuccess on success, or an error code otherwise.

Typedefs

ExpansionData

ExpansionData


protected

typedef struct ExpansionData { IOBufferMemoryDescriptor *_doubleBufferDesc; } ExpansionData;
Discussion

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

Member Data

reserved

reserved


protected

ExpansionData *reserved;
Discussion

Reserved for future use. (Internal use only)

 

 

Last Updated: 2009-10-14