With CONFIG_HOTPLUG=n we get, at link time: drivers/usb/host/ehci-hcd.c:977: pci_ids causes a section type conflict I can't for the life of me remember why, but the fix is to remove the const. drivers/usb/host/ehci-hcd.c | 2 +- 1 files changed, 1 insertion(+), 1 deletion(-) diff -puN drivers/usb/host/ehci-hcd.c~ehci_hcd-linkage-fix drivers/usb/host/ehci-hcd.c --- 25/drivers/usb/host/ehci-hcd.c~ehci_hcd-linkage-fix 2003-06-18 21:48:15.000000000 -0700 +++ 25-akpm/drivers/usb/host/ehci-hcd.c 2003-06-18 21:50:06.000000000 -0700 @@ -974,7 +974,7 @@ static const struct hc_driver ehci_drive /* EHCI spec says PCI is required. */ /* PCI driver selection metadata; PCI hotplugging uses this */ -static const struct pci_device_id __devinitdata pci_ids [] = { { +static struct pci_device_id __devinitdata pci_ids [] = { { /* handle any USB 2.0 EHCI controller */ _