>> #define __io(a) __io(a) >> #define __mem_pci(a) (a) > > I wonder what the #else path is for. If you don't have PCI, who would > call __io? And wouldn't that result in a NULL pointer dereference? If I remember correctly the legacy IDE (ATA) code is scanning "well known" IO port numbers... Cheers! PAweł