Operating System - Linux
1752777 Members
6369 Online
108789 Solutions
New Discussion юеВ

i/o and memory space bits of PCI command register

 
esstee
Advisor

i/o and memory space bits of PCI command register

while trying to read the command register in a particular pci file in /proc/bus/pci directory, the iospace and memory space bits are disabled.

how can i enable it. or do i need to install the driver again.
3 REPLIES 3
Matti_Kurkela
Honored Contributor

Re: i/o and memory space bits of PCI command register

Normally, the generic PCI subsystem should handle the basic configuration of the PCI devices. If a device has special requirements ("quirks"), the driver for that device should be programmed to handle them.

If necessary, the PCI configuration can be manipulated using the "setpci" command... but the need to use it might be a sign of problems somewhere. (Hardware failure? BIOS bug? Maybe the driver is not quite "production quality" yet?)

If the device is integrated to the system motherboard, the lack of both I/O and memory space for the device might mean that the device is disabled by BIOS settings. If the BIOS does the disabling in this way, an OS-level program could ignore the BIOS settings and re-enable the device. This could have security implications, if disabling of that device (e.g. a front-panel USB port) is required by a site security policy.
MK
Ryan Goh
Frequent Advisor

Re: i/o and memory space bits of PCI command register

I never try before, but I found one good article, here is the link, http://www.puschitz.com/TuningLinuxForOracle.shtml, hope this can answer your question.
esstee
Advisor

Re: i/o and memory space bits of PCI command register

Thanks Matti for ur valuable inputs.
I am checking this register, internal bits 0 (I/O space) and 1 (memory space) enable/disable.

if the value of command register is zero then the PCI device is disabled. Also we can set enable it using setpci command. But in this case, it shldnt affect the memory mapping of other PCI devices, otherwise results in system malfunction.

Is the Base Address Registers are useful for this. there are around 6 BARs. which bar will represent the memory mapping of I/O and Memory spaces.