On Tue, Apr 28, 2009 at 8:38 PM, Joseph Smith <[email protected]> wrote: > > > > On Mon, 27 Apr 2009 10:14:02 +0200, Stefan Reinauer <[email protected]> > wrote: >> On 27.04.2009 9:55 Uhr, Joseph Smith wrote: >>> Well, I have confirmed the problem. Looks there is something crazy about >>> how the ethernet and modem (even though the IP1000 doesn't actually have >> a >>> modem) are setup. If I disable the ICH4 ethernet and enable the AC97 >> ICH4 >>> modem, sure as shit it boots up everytime (VGA too) and all IRQS look >>> great. If I enable both of them EVERYTHING gets IRQ 0, and I have >> issues. >>> If I enable ethernet and disable the modem (this is the way it should >> be) >>> EVERYTHING gets IRQ 0, and I have issues..... >>> >>> Anyone seen this kind of thing before? I have no idea how to fix this >>> one.... >>> >>> > Well now were getting somewhere. It is as I thought. The modem and Ethernet > were not playing nice causing io read/write issues under 0x200, hence the > unexpected exception errors. The IRQ 0 problems also make sense because the > interrupt controllers live in that io area correct? I guess on this board > they were not designed to coincide...there isn't an actual on-board modem > anyways. > > So here is what I did to get it working, and this is the part I need help > with. > > 1. In auto.c I disabled the modem right off through the LPC device: > > /* Set the LPC device statically. */ > dev = PCI_DEV(0x0, 0x1f, 0x0); > > /* Disable Modem. */ > pci_write_config8(dev, 0xf2, 0x40); > > > 2. I completely removed the modem code from > src/mainboard/thomson/ip1000/Config.lb > > - device pci 1f.6 off end # AC'97 modem > > 3. Then I completely removed the modem code from > src/southbridge/intel/i82801xx/i82801xx_ac97.c > > -static const struct pci_driver i82801db_ac97_modem __pci_driver = { > - .ops = &ac97_ops, > - .vendor = PCI_VENDOR_ID_INTEL, > - .device = PCI_DEVICE_ID_INTEL_82801DB_AC97_MODEM, > -}; > > And boom :-) > I am booting like a rocket ship in action:-) > > > I have tried Just step 1 with no luck, and step 1 & 2 with no luck. So > even with the device disabled via the LPC and coreboot something from the > i82801db_ac97_modem() is still partially initializing causing this io > crazyness. I can submit a patch for steps 1-2 but....my question is how can > I completely disable the i82801db_ac97_modem() driver without having to > manually delete code every time I use a new revision??? > > Maybe a #ifdef to global disable modem define???
You've got this working but you are kind of abusing the build system, esp. if you are modifying files like i82801xx_ac97.c. I will leave it to someone else to discuss why you don't want to do step 3 ... I'm gonna go sleep now :-) ron -- coreboot mailing list: [email protected] http://www.coreboot.org/mailman/listinfo/coreboot

