On Thu, May 08, 2008 at 12:16:08PM -0600, Marc Jones wrote:
There are two reasons to hide a device.
Good. I like starting the reasoning from this point of view.
- Your platform doesn't use the device and so there is no reason
for it to hang about.
I think this is common..
This option was addressed with the array of device location that you noted, but I don't think that anyone used it.
What is this refering to?
- There is shared hardware and only one device can be present at a
time. An example of this is IDE or flash
--8<-- 5536 book 5.18 Flash Controller This interface is shared with the IDE interface, using the same balls. NOR or NAND Flash may co-exist with IDE devices using PIO (Programmed I/O) mode. -->8--
This suggests that both devices can be visible and enabled with shared balls.
and 5536 USB configuration.
Port 4 HCI vs. UDC? Are they separate PCI functions?
Adding a hidden property could handle the first case but then every device will have a dts to contain a property that isn't used.
Not all devices will be hideable. Did we make a policy to allow implicit defaults (implemented in code I guess) in device dts files? If not then yes, every device dts needs the hidden=0 setting.
In the second case, the logic to hide the device is based on other configurations and the hidden property would either be pointless or confuse the issue of if or when the device should be hidden.
This is important. We must make dts cope with this type of mutually exclusive configuration. It is simply not good enough for the system to permit an incompatible/impossible configuration.
//Peter