[PATCH] Fix the LPC47M192 SuperIO on the MPC8641 HPCN

Segher Boessenkool segher at kernel.crashing.org
Fri Jun 8 18:22:38 EST 2007


>>> I suppose I could create a device node for the Super I/O config
>>> registers and use those instead of hardcoding it here.
>>
>> I'd just hide it all, do this setup in the firmware,
>> where it belongs, and don't expose the superio config
>> in the device tree.
>
> No more.  No more firmware-only initializations.

This setup is very board specific, and the board cannot
reasonably work without that setup being done right.  You
really want to push _that_ into Linux?  Alternatively,
you could put it into the device tree, but that doesn't
help anything either.

> It sounds great, in principle, until you actually have to figure out 
> why someone's setup isn't working.  I'm tired of having to see if the 
> dts, u-boot, and Linux are in sync.  If Linux wants to use a device, I 
> think it's not unreasonable to have it setup the device itself.  That 
> way, Linux can do whatever it wants with the device, and not have to 
> rely on U-Boot (or some other firmware) setting up the appropriate 
> bits.

There is one and only one way to set up the superio for
a certain board (assuming the legacy I/O and IRQ values
are considered fixed values).

> Please...no.  What happens next is that we find a small bug that 
> requires we modify U-Boot to do the initialization slightly 
> differently, and then requires Linux to act slightly differently.

This is equivalent to needing a board-level fix really.


Segher




More information about the Linuxppc-dev mailing list