Question

BME means "Bus Master Enable" and it is the Bit 2 in Command Register(offset 0x4) in PCI Config space. If this bit is set to 1 then this indicates the device has the ability to act as a master for data transfer. Besides, it is configured by system BIOS(as I knew...)

My question is: how system BIOS decide this bit ? (based on class code or ...?)

Was it helpful?

Solution

AFAIK, BIOS sets this bit blindly. If the device supports bus master access, the bit becomes 1, otherwise, the write to this bit has no effect and the bit remains 0.

Of course, you can instruct BIOS to skip PCI enumeration altogether by choosing "PnP OS" somewhere in BIOS menus.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top