[coreboot] [RFC] kill unwanted_vpci, use "hidden" property instead
stepan at coresystems.de
Thu May 8 16:29:16 CEST 2008
Carl-Daniel Hailfinger wrote:
> Interesting proposal. If I understand you correctly, enabled=0 would mean
> - disabled on all chipsets
> - hidden on those chipsets where hiding is supported.
> There are two problems I have with that approach, though:
> - I don't understand PCI well enough to know how a device is disabled.
On a high level:
Disabling the device means we disable its memory and io space.
Hiding the device means we disable its config space.
So with any of the three resource types disabled, the device is not
really usable. They're just decoded differently.
> Does disabling the device mean disabling the resources as well? Does it
> mean the device won't respond to config cycles outside a special "enable
> cycle" anymore?
absolutely. If you have a special disable function, you will also need a
special enable function. But that won't happen, as you don't re-enable a
device that you disabled on purpose.
> - With automatic hiding, we lose the ability to leave a device
> untouched. Do we need an enum(disabled, hidden, enabled, untouched) for
> a full representation of possible states?
hidden implies disabled, since when you disable the config space of the
device, the BARs are gone, too.
untouched is not an option we provided at any time before, but basically
it implies disabled, too.
More information about the coreboot