Re: how to fix acpi_pci_root_remap_iospace?

From: Boris Brezillon
Date: Fri Aug 17 2018 - 12:20:20 EST


On Fri, 17 Aug 2018 15:56:23 +0000
"Luck, Tony" <tony.luck@xxxxxxxxx> wrote:

> >> - Some targets don't have any support for I/O space on their PCI bus and just
> >> want to get things to compile by setting PCI_IOBASE to zero, this still opens
> >> up some of the same problems as above, but doesn't really help otherwise.
>
> That sounds horrible. Why would you want to have a driver that can't possibly
> work on your platform compile cleanly? That's just asking for trouble. Sombody
> might load that driver, and ... all the outb/outw/outl calls just corrupt low memory.

Well, COMPILE_TEST is here just for that, and it's actually quite
useful to detect potential compilation errors/warnings and make sure
the driver is portable. So, either we decide that readsx/writesx() are
not standard and we create a Kconfig option to reflect when an arch
implements them so that drivers using those funcs can at least be
compile-tested on a few archs, or we fix all archs that do not
implement those functions.

>
> > Hm, maybe it's just easier to revert the patch since we got rid of
> > patches adding COMPILE_TEST to drivers which were using read/writesl()
> > (it turned out ia64 and sparc were not the only archs to not implement
> > readsx/writesx() variants, and fixing them is not that easy).
>
> That sounds like a better course of action.

The solution I propose here is just a way to get that problem fixed
quickly, but I'd still like to have a way to enable the s3c2xx and
orion NAND driver when COMPILE_TEST=y.