Re: [PATCH 1/2] pcmcia : make PCMCIA depend on HAS_IOMEM

From: Niklas Schnelle
Date: Thu Feb 16 2023 - 04:05:41 EST


On Thu, 2023-02-16 at 15:34 +0800, Baoquan He wrote:
> On s390 systems (aka mainframes), it has classic channel devices for
> networking and permanent storage that are currently even more common
> than PCI devices. Hence it could have a fully functional s390 kernel
> with CONFIG_PCI=n, then the relevant iomem mapping functions
> [including ioremap(), devm_ioremap(), etc.] are not available.
>
> Here let depend PCMCIA on HAS_IOMEM so that it won't be built to
> cause below compiling error if PCI is unset.
>
> -------------------------------------------------------
> ld: drivers/pcmcia/cistpl.o: in function `set_cis_map':
> cistpl.c:(.text+0x1202): undefined reference to `ioremap'
> ld: cistpl.c:(.text+0x13b0): undefined reference to `iounmap'
> ld: cistpl.c:(.text+0x14a6): undefined reference to `iounmap'
> ld: cistpl.c:(.text+0x1544): undefined reference to `ioremap'
> ld: drivers/pcmcia/cistpl.o: in function `release_cis_mem':
> cistpl.c:(.text+0x3f14): undefined reference to `iounmap'
>
> Link: https://lore.kernel.org/all/Y0TcaZD4nB1w+mAQ@MiWiFi-R3L-srv/T/#u
> Signed-off-by: Baoquan He <bhe@xxxxxxxxxx>
> Cc: Dominik Brodowski <linux@xxxxxxxxxxxxxxxxxxxx>
> Cc: Arnd Bergmann <arnd@xxxxxxxx>
> Cc: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>
> Cc: Linus Walleij <linus.walleij@xxxxxxxxxx>
> Cc: Thomas Bogendoerfer <tsbogend@xxxxxxxxxxxxxxxx>
> ---
> drivers/pcmcia/Kconfig | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/pcmcia/Kconfig b/drivers/pcmcia/Kconfig
> index 1525023e49b6..7c412bbe8bbe 100644
> --- a/drivers/pcmcia/Kconfig
> +++ b/drivers/pcmcia/Kconfig
> @@ -20,6 +20,7 @@ if PCCARD
>
> config PCMCIA
> tristate "16-bit PCMCIA support"
> + depends on HAS_IOMEM
> select CRC32
> default y
> help

Not sure how many PCMCIA drivers only use I/O memory but not I/O ports
the latter of which are badly stubbed out on s390, though at leat they
compile. I have a series on that part that I intend to send a new
version for soon™. That said yes this does solve the compilation issue
and there could be drivers which rely only on I/O memory and are not
broken in principle.

Reviewed-by: Niklas Schnelle <schnelle@xxxxxxxxxxxxx>