
In message 761C62B8-7757-11D8-A4C6-000393DBC2E8@motorola.com you wrote:
I agree with only enabling ports that will be used. I guess I would expect the port to be used in Linux. I'm working on an updated 2.6 SCC uart driver and realized that I needed to enable the 2nd port in BCSR. I had expected that u-boot would have already handled it.
The philosophy is to enable and/or initialize only those devices which are actually used by U-Boot itself. Even the network interfaces get initialized only at the moment when you issue the first command to access the network.
On the other hand a Linux device driver should assume it finds the device in an unknown random (*) state, it should perform all initialization it needs itself, and it should deinitialize the device (if the driver should get unloaded) into an idle state.
(*) "random" is not completely random, of course - it still assumes that the device is well-behaving, i. e. that interrupts are disabled etc.
Best regards,
Wolfgang Denk