On 2/22/10 3:57 PM, Uwe Hermann wrote:
So folks, if you agree that we should clean up coreboot and make it easier for people, send me an Acked-by: for the above idea.
Signed-off-by: Stefan Reinauer stepan@coresystems.de
Acked-by: Uwe Hermann uwe@hermann-uwe.de
Awesome, thanks a lot!
However, there are some follow-up TODOs. All of those SBs have missing license headers and partly inconsistent coding-style (which is to be expected though, as the coding guidelines were not in place back then). I might be able to take care of that sooner or later, but any help is welcome.
Yes, we have massive cleanups to do, especially now that we got rid of the old config system, too.
I'll try to clean up things on the go, as I do other stuff, but I am glad to see how much easier it became to clean up and to the right thing now.
My main worry with this kind of stuff is that we get a certain degree of code duplication. As you correctly noted some of that just _looks_ duplicated as the i82801xx driver is incomplete. But there's also stuff which _is_ generic for most ICHs. Maybe we can later factor out some of that to some ichlib.c or something like that. For example the code in i82801*_early_smbus.c is likely a good candidate (didn't check the datasheets closely yet, though).
My main concern is that some things (like USB bug workarounds in ICH7) are very hard to figure out for more than one chipset. Even if the exact registers with the same name and meaning exists across chipsets, it might still be wrong to set such a register to a value that is a hard requirement on the other chipset with that register. As for the code duplication, I don't think we should create "libs" too soon; but there is an incredible amount of code that could be dropped by moving code from across the trees into their "drivers". Like a lot of romstage.c files have half the fallback and cache as ram magic built in....
Well, we'll see... I'll try to do the renaming orgy in the next two days...
Stefan