Conceptual
Login

Bus Mastering: Letting a Card Drive the Bus

Normally the processor is the one that starts every transfer on the bus and devices only answer. A bus master is a device allowed to start transfers itself, which is what a card must be able to do if it is going to copy data into memory without help. That permission is off by default and a driver has to switch it on; forget, and the card's transfers are silently refused and the data never arrives.

Questions this Concept answers

  • A driver programs the virtual card's DMA registers correctly but never enables bus mastering. Why does the failure show up as nothing happening rather than as an error?