Copyright ©1995 by NeXT Computer, Inc.  All Rights Reserved.

IOEISADeviceDescription



Inherits From: IODeviceDescription : Object
Declared In: driverkit/i386/IOEISADeviceDescription.h



Class Description

IOEISADeviceDescriptions encapsulate information about IODirectDevices that run on ISA- and EISA-compliant computers. Usually, you need only to pass around IOEISADeviceDescription objects, without creating them, subclassing them, or sending messages to them. IOEISADeviceDescriptions are created by the system and initialized from IOConfigTables. They are then passed to the probe: method to instantiate the driver, using the device description.



Instance Variables

None declared in this class.



Method Types

Getting and setting the list of DMA channels
channel
channelList
numChannels
setChannelList:num:
Getting and setting the list of I/O port ranges
portRangeList
numPortRanges
setPortRangeList:num:
Getting the EISA slot number and ID
getEISASlotNumber
getEISASlotID



Instance Methods

channel
(unsigned int)channel

Returns the first DMA channel associated with this device. The return value is undefined if this device has no DMA channels associated with it.

See also:  channelList, numChannels, setChannelList:num:



channelList
(unsigned int *)channelList

Returns all the DMA channels associated with this device. You can get the number of items in the returned array by invoking numChannels. You should never free the data returned by this method.

See also:  channel, numChannels, setChannelList:num:



getEISASlotID
(IOReturn)getEISASlotID:(unsigned long *)slotID

Returns the EISA slot identifier for the device. In this identifier, the device ID is in the lower 16 bits, and the vendor ID is in the upper 16 bits.



getEISASlotNumber
(IOReturn)getEISASlotNumber:(unsigned int *)slotNumber

Returns the EISA slot number for the device.



numChannels
(unsigned int)numChannels

Returns the total number of DMA channels associated with this device. This number is determined from the IOConfigTable from which this IOEISADeviceDescription is initialized.

See also:  channel, channelList, setChannelList:num:



numPortRanges
(unsigned int)numPortRanges

Returns the total number of I/O port ranges associated with this device.



portRangeList
(IORange *)portRangeList

Returns all the I/O port ranges associated with this device. You can get the number of items in the returned array by invoking numPortRanges. You should never free the data returned by this method.

See also:  numPortRanges, setPortRangeList:num:



setChannelList:num:
(IOReturn)setChannelList:(unsigned int *)aList num:(unsigned int)numChannels

Sets the array and number of DMA channels associated with this device. You shouldn't normally invoke this method, since it overrides the normal configuration scheme (which is documented in Chapter 4).

See also:  channel, channelList, numChannels



setPortRangeList:num:
(IOReturn)setPortRangeList:(IORange *)aList num:(unsigned int)numPortRanges

Sets the array and number of I/O port ranges associated with this device. You shouldn't normally invoke this method, since it overrides the normal configuration scheme (which is documented in Chapter 4).

See also:  numPortRanges, portRangeList