much better, Because don't need to cast conf to drivers_pci_onboard_config, it is not safe in pci_rom.c or pci_device.c
Do it. YH How about we bring the device:rom_address back and in the driver_pci_onboard::enable_dev(dev) { dev->rom_address = conf->rom_address; } and in pci_get|set_resources() { if (dev->on_mainboard && dev->rom_address !=0) { /* do nothing */ else { allocate_rom_resource(); } } and in pci_dev_init() { if (dev->on_mainboard && dev->rom_address !=0) { rom = dev->rom_address; else { rom = pci_rom_probe(); } } Ollie > Also in get_pci_rom_resource begin > Add > > if(dev->on_mainboard) { > > struct drivers_pci_onboard_config *conf; > > conf = dev->chip_info; > > if(conf->rom_address!=0) { > > return; > > } > > } > > In Pci_set_resource end > Add > > if(dev->on_mainboard) { > > struct drivers_pci_onboard_config *conf; > > conf = dev->chip_info; > > if(conf->rom_address!=0) { > > pci_write_config32(dev, PCI_ROM_ADDRESS, > conf->rom_address | 1); > > } > > } > > Then We can remove that in pci_rom.c > > YH > _______________________________________________ Linuxbios mailing list Linuxbios@clustermatic.org http://www.clustermatic.org/mailman/listinfo/linuxbios