Message ID | 20230216073403.451455-1-bhe@redhat.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | [1/2] pcmcia : make PCMCIA depend on HAS_IOMEM | expand |
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@redhat.com> > Cc: Dominik Brodowski <linux@dominikbrodowski.net> > Cc: Arnd Bergmann <arnd@arndb.de> > Cc: Jonathan Cameron <Jonathan.Cameron@huawei.com> > Cc: Linus Walleij <linus.walleij@linaro.org> > Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de> > --- > 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@linux.ibm.com>
On Thu, Feb 16, 2023, at 10:05, Niklas Schnelle wrote: > On Thu, 2023-02-16 at 15:34 +0800, Baoquan He wrote: >> 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. There are no platforms that have I/O ports but don't set HAS_IOMEM, so it doesn't really matter. > Reviewed-by: Niklas Schnelle <schnelle@linux.ibm.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
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
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@redhat.com> Cc: Dominik Brodowski <linux@dominikbrodowski.net> Cc: Arnd Bergmann <arnd@arndb.de> Cc: Jonathan Cameron <Jonathan.Cameron@huawei.com> Cc: Linus Walleij <linus.walleij@linaro.org> Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de> --- drivers/pcmcia/Kconfig | 1 + 1 file changed, 1 insertion(+)