HDAMA status
ron minnich
rminnich at lanl.gov
Tue Aug 5 13:30:00 CEST 2003
currently, I'm having PIRQ routing problems.
Etherboot loads the kernel just fine, and here's something very odd:
etherboot says the two MACs are at 1:3.0 and 1:4.0; the kernel says the
macs are at 2:3.0 and 2:4.0.
This is odd. Any one out there have a simple explanation for me?
Also the PIRQ in the CVS looked quite wrong, but dumping the PIRQ from a
running BIOS and using that fails as well.
I've gone so far as to have LinuxBIOS just jam the same interrupts the
standard bios uses by doing this in mainboard/arima/hdama/mainboard.c
static void
enable(struct chip *chip, enum chip_pass pass)
{
struct mainboard_arima_hdama_config *conf =
(struct mainboard_arima_hdama_config *)chip->chip_info;
switch (pass) {
default: break;
case CONF_PASS_PRE_BOOT:
{
struct device *p;
/* PIRQ is still wrong. Just set ethernet for now */
p = dev_find_slot(1, 0x18);
pci_write_config8(p, 0x3c, 0xb);
p = dev_find_slot(1, 0x20);
pci_write_config8(p, 0x3c, 0xb);
printk_err("JAM ethernet to IRQ 11!\n");
break;
}
}
}
But it didn't help at all. I also tried doing the same crude thing to
device 2:3.0 but that did not help.
This business of the gige appearing on different busses is very odd; any
explanation here?
Hints welcome :-)
ron
More information about the coreboot
mailing list