[coreboot] [PATCH] (somewhat) clean up intel southbridge drivers
joe at settoplinux.org
Mon Feb 22 14:46:44 CET 2010
On Sat, 20 Feb 2010 17:39:03 -0500, Joseph Smith <joe at settoplinux.org>
> On 02/20/2010 05:32 PM, Stefan Reinauer wrote:
>> Hi there,
>> the intel southbridge drivers are a mess.
>> I suggest to do the following:
>> cd coreboot/src/southbridge
>> svn mv i82801ca i82801cx
>> svn mv i82801dbm i82801dx
>> svn mv i82801er i82801ex
>> svn copy i82801xx i82801bx
>> svn mv i82801xx i82801ax
>> (plus, fixing up the filenames in these directories and the romstage.c
>> and Kconfig files of the mainboards using those drivers)
>> And then cleaning up all the code undermining the driver infrastructure
>> in the 82801xx driver, so we can drop the spaghetti code that checks for
>> PCI devices in actual init functions all over the place.
>> Why? Because it is simply unmaintainable. The unified driver is not
>> unified, it's rather incomplete enough so nobody noticed. The ICH4 and
>> ICH4M are very similar. So are the ICH5 and ICH5M and ICH5R. It's a good
>> idea to have a "unified" driver per chipset generation. But not across
>> several generations of chipsets.
>> In order to fix graphics output for the i830/ich4 combination I'd like
>> to add an SMM handler and MBI interface to the ICH4 specific version of
>> the code. But there's not much gain in trying to check ICH0 datasheets
>> to see if what was never intended to be done on that chipset is
>> possible. And if I go and add guards for PCI IDs in the code, I'll
>> rather clean up the code to get it do the PCI ID matching that coreboot
>> intended for such cases instead of spaghettiing them into runtime
>> I don't think that a shared driver like this is worth the ugliness that
>> comes with it. It's fair to say that if you don't know if you have an
>> ICH0 or ICH4, you can't do a coreboot port, because you will fail in so
>> many other places before and after that.
>> 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 at coresystems.de>
> You have my
> Acked-by: Joseph Smith <joe at settoplinux.org>
> But you may want to hear from others first.
Anyone else want to comment on this?
More information about the coreboot