ADC Home > Reference Library > Reference > Darwin > Kernel Framework Reference
|
IOATAController |
Inherits from: | |
Declared In: |
The base class for the ATA controller family.
Provides the interface common to all ata bus controllers. Subclasses of IOATAController implement drivers for specific bus hardware. Disk devices are clients of IOATAController and communicate via the IOATABusNub instantiated for each device discovered by the specific IOATAController subclass when it probes hardware. Via the nub, the ATA Controller provides standard information about bus capability, accepts requests for transfer mode configuration (timing), accepts requests for IO and bus operations, notifies the device driver about bus events which may affect the device, such as soft-resets or device removal (ie, media-bay and PC-card) and removal of queued IO requests which have not been dispatched into the hardware.
The HeaderDoc for this class is incomplete. The source however is heavily commented and should be consulted until such time as complete HeaderDoc is available.
Answers whether the bus is in state such that the next command can be dispatched.
Causes the command at the front of the queue to dequeue, made the current command and begin execution.
Handles 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 );
Returns true if bus is free to issue commands. Returns false if 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 );
Returns noErr if successful dispatch.
handleCommand |
Handles the client command from the workloop context.
protected
virtual IOReturn handleCommand( void *command, void *param1 = 0, void *param2 = 0, void *param3 = 0);
client
The client object.
command
The command code.
param0
Command parameter.
param1
Command parameter.
param2
Command parameter.
param3
Command parameter.
Returns kIOReturnSuccess on success, or an error code otherwise.
This method is called by executeCommand() to handle the client command from the workloop context.
ExpansionData |
protected
struct ExpansionData { };
This structure will be used to expand the capablilties of the IOWorkLoop in the future.
reserved |
protected
ExpansionData *reserved;
Reserved for future use. (Internal use only)
|
Last Updated: 2008-12-19