[coreboot] [PATCH] simplify coreboot PCI code

Carl-Daniel Hailfinger c-d.hailfinger.devel.2006 at gmx.net
Mon Sep 28 21:28:05 CEST 2009


On 27.09.2009 22:29, Carl-Daniel Hailfinger wrote:
> On 27.09.2009 20:49, Stefan Reinauer wrote:
>   
>> Simplify coreboot PCI handling
>>
>> This patch drops the conf1/conf2 autodetection and replaces it by 
>> (usually northbridge specific) hardcodes. 
>>
>> This patch also adds pci_domain_init() which needs to be called by
>> mainboard enable_dev() functions in order to be able to use the pci
>> config space functions. This allows to drop i386 specific code from
>> generic files again...
>>
>> There is an even better approach to the PCI config space access in mainboard
>> specific init files problem, but that should go into another patch:
>>
>> static void init(struct device *dev)
>> {
>> 	// Do the stuff here!
>> }
>>
>> static void enable_dev(struct device *dev)
>> {
>>    // Install an init function for this mainboard device
>>    dev->ops->init = init;
>> }
>>
>> struct chip_operations mainboard_ops = {
>>   .enable_dev = enable_dev,
>> };
>>
>> Signed-off-by: Stefan Reinauer <stepan at coresystems.de>
>>   
>>     
>
> I really like this patch. There are one or two things I don't understand
> yet, but I hope stuff will become clearer tomorrow after testing. Will
> ack after testing.
>   

Tested, ends up in a reboot loop. Sorry. Will post the logs (old vs.
new) in an hour.

There were some irritating ACPI IRQ routing changes between r4614 and
r4681 (IRQ lines with IRQ 0 were suddenly enabled), but they had no
influence on booting.

Regards,
Carl-Daniel

-- 
http://www.hailfinger.org/





More information about the coreboot mailing list