[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

DMA channels with PCI devices



Hello,

I was wondering if there are predefined dma channels assigned to PCI devices.
In my AIX device driver I need to include dma support and one of the support
routines needs this information.

I know that AIX isn't your OS John but perhaps you can still tell me if PCI devices
use channels or dma arbitration levels.

d_map_init(int bid, int flags, int bus_flags, uint channel)
arguments:
	int bid;		bus type/number identifier
	int flags;	device capabilities
	int bus_flags;	flags specific to the target bus
	uint channel;	channel assignment specific to dev/bus

I tryed putting an entry in my odm database but the values I used 1-15 were
not accepted.  Are dma channels only valid on ISA.? Should I put 0 for the 
channel parameter?  The reason I wonder is that we use the same routine when performing DMA with ISA boards, where I know you can assign DMA channels.
0-3 usually.

For Hans eyes only ;)

To answer your question about attaching and detaching, we've done away with
a device driver and instead of turned my driver into a kernel extension that links
a bunch of service routines right into the kernel.  This can be done dynamically
of course.  I still use ODM to get it going but the main code doesn't
 interface with open, read, write, close but with direct calls to the device like 
P1394_afo (Firewire serial bus asynchronous send).  Anyways it's much
quicker and I attached and detached ONLY ONCE at the beginning and the
end of a session. (sorry for the indenting I don't know why Microsoft Exchange
is doing this.)  If this interests you look into AIX Kernel Extensions.

Craig Mathewson
craig@sederta.com
û¬š