So, this differs from regular DMA in that:
  It can do scatter-gather.
  The normal dma controller is not involved (?)


On Wed, 13 Dec 2000, [EMAIL PROTECTED] (Rogier Wolff) wrote:
> Ahmon Dancy wrote:
> > Regarding bus mastering slots:
> 
> > Can anyone give a brief technical explanation of what bus mastering
> > slots are about and what card are likely to be bus mastering?
> 
> In the old days the CPU would be programmed to get data from IO cards
> (or put the data in). Programmed IO. 
> 
> Nowadays many cards can be told to go get the data themselves. So when
> I transfer 1Mb of data from my harddisk, the CPU has to tell the chip
> about 250 times where to put the data, and the harddisk-chip will do
> the rest by itself. In the old days, the CPU would have had to do a
> few instructions for every one or two bytes! 
> 
> So nowadays, network cards, sound cards, SCSI cards all do "bus
> mastering" and gather the data they need from memory themselves.
> 
> To do this, they request the system bus using a signal called "bus
> request". When the system is ready for this device, the system will
> signal "bus grant", and the device is allowed to access main memory. 
> 
> These signals need to be separate: there can be a network packet
> coming in at the same time as the harddisk having some data ready.
> 
> If these two cards were to share a busrequest /busgrant signal, they
> would both signal "bus request" at the same time, which would be
> recognized by the board just fine. However then, when the bus grant
> would happen, they would both start to access the bus at the same
> time. (compare this with two green lights on different roads with a
> traffic light...)
> 
> So, one card may say: write 1200 to address 5070 and the other may
> want: write 0034 to 0608. The result might be 1234 going to address
> 5678! (Or something completely different).
> 
> Now, on the BP6 (and a lot of other boards), two slots share a
> busrequest, and busgrant line. You get to use only one of them with a
> card that uses busmastering.
> 
> A second video card is an option. Video cards rarely use bus mastering. 
> 
> The multi-port serial cards that I've written drivers for also don't
> use busmastering. I'm told that RTL8139 cards don't use busmastering
> either.
> 
> Oh, the PCI people designed the Interrupt lines in such a way that
> they can be shared between different devices. So all PCI device
> drivers should be able to handle this situation. 
> 
>                       Roger. 
> 
> -- 
> ** [EMAIL PROTECTED] ** http://www.BitWizard.nl/ ** +31-15-2137555 **
> *-- BitWizard writes Linux device drivers for any device you may have! --*
> * There are old pilots, and there are bold pilots. 
> * There are also old, bald pilots. 
> 
> 



--
=-          To unsubscribe, email [EMAIL PROTECTED] with the       -=
=-                body of "unsubscribe linux-abit".                 -=

Reply via email to