Hi,
OpenBSD 5.0 fails to boot on older servers (generally Pentium III and
under) with the ServerWorks chipset. MSI should not try to be used on
these.
I created the following patch. The chipsets identified are educated
guesses based on Google search and sequence number, but there's not a
great way to cross reference and make sure all are included and the
PCI names don't match up to the marketing name. Anyway, this is a
good enough start and should make people happy as their systems will
boot again.
Regards,
Kevin Bowling
*** pci_machdep.c-orig 2012-01-31 03:01:18.814973578 -0700
--- pci_machdep.c 2012-01-31 03:22:54.766124176 -0700
***************
*** 303,308 ****
--- 303,327 ----
break;
}
break;
+ case PCI_VENDOR_RCC:
+ /*
+ * Older ServerWorks chipsets don't support MSI
+ * TODO: x-reference and confirm all older chipsets listed
+ */
+ switch (PCI_PRODUCT(id)) {
+ case PCI_PRODUCT_RCC_CMIC_LE:
+ case PCI_PRODUCT_RCC_CNB20_LE:
+ case PCI_PRODUCT_RCC_CNB20HE_1:
+ case PCI_PRODUCT_RCC_CNB20_LE_2:
+ case PCI_PRODUCT_RCC_CNB20HE_2:
+ case PCI_PRODUCT_RCC_CNB20LE:
+ case PCI_PRODUCT_RCC_CIOB30:
+ break;
+ default:
+ pba->pba_flags |= PCI_FLAGS_MSI_ENABLED;
+ break;
+ }
+ break;
}
/*