On Friday 28 May 2010, Chris Metcalf wrote: > I looked at where inb() and friends are used, and although we can get > close to not requiring them for tile, it's not quite there, and will > need some further discussions on the various lists to clean up enough > for our purposes. There are three problems that surface when I try to > remove the inb family: > > 1. The ide-io-std.c file sets up the default_tp_ops, which we override > in our IDE driver, but we still have to build this file, and it contains > calls to inb, etc. It's only needed in the IDE layer though and will go away once you move to an ATA driver, right? > 2. The usb pci quirks file contains some quirks that use inb and outb, > and since we support PCI, we have to try to compile this file. > > 3. CONFIG_DEVPORT defaults to yes, unless you're M68K. > > None of this seems to depend on CONFIG_HAS_IOPORT. All three places you have found seem to be actual bugs. > Our PCI driver supports IOMEM read/write, but not IOPORT. > > Perhaps something like CONFIG_ARCH_PCI_HAS_NO_IOPORT or some such, and > then we can disable all of the above things if that config option is > present (and CONFIG_HAS_IOPORT is false also?). That's what CONFIG_NO_IOPORT is supposed to be used for in the first place, so I think we should just use the existing CONFIG_HAS_IOPORT symbol to disable the broken code you found. CONFIG_DEVPORT then not even needs to check for M68K. Arnd -- To unsubscribe from this list: send the line "unsubscribe linux-arch" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html