* [PATCH 1/2] pcmcia : make PCMCIA depend on HAS_IOMEM
@ 2023-02-16 7:34 Baoquan He
2023-02-16 7:34 ` [PATCH 2/2] dmaengine: make QCOM_HIDMA " Baoquan He
2023-02-16 9:05 ` [PATCH 1/2] pcmcia : make PCMCIA " Niklas Schnelle
0 siblings, 2 replies; 5+ messages in thread
From: Baoquan He @ 2023-02-16 7:34 UTC (permalink / raw)
To: linux-kernel
Cc: linux-mm, schnelle, linux-s390, Baoquan He, Dominik Brodowski,
Arnd Bergmann, Jonathan Cameron, Linus Walleij,
Thomas Bogendoerfer
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
--
2.34.1
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 2/2] dmaengine: make QCOM_HIDMA depend on HAS_IOMEM
2023-02-16 7:34 [PATCH 1/2] pcmcia : make PCMCIA depend on HAS_IOMEM Baoquan He
@ 2023-02-16 7:34 ` Baoquan He
2023-02-16 9:06 ` Niklas Schnelle
2023-02-16 9:05 ` [PATCH 1/2] pcmcia : make PCMCIA " Niklas Schnelle
1 sibling, 1 reply; 5+ messages in thread
From: Baoquan He @ 2023-02-16 7:34 UTC (permalink / raw)
To: linux-kernel
Cc: linux-mm, schnelle, linux-s390, Baoquan He, Andy Gross,
Bjorn Andersson, Konrad Dybcio, Vinod Koul, linux-arm-msm,
dmaengine
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 QCOM_HIDMA depend on HAS_IOMEM so that it won't be built to
cause below compiling error if PCI is unset.
--------------------------------------------------------
ld: drivers/dma/qcom/hidma.o: in function `hidma_probe':
hidma.c:(.text+0x4b46): undefined reference to `devm_ioremap_resource'
ld: hidma.c:(.text+0x4b9e): undefined reference to `devm_ioremap_resource'
make[1]: *** [scripts/Makefile.vmlinux:35: vmlinux] Error 1
make: *** [Makefile:1264: vmlinux] Error 2
Link: https://lore.kernel.org/all/Y0TcaZD4nB1w+mAQ@MiWiFi-R3L-srv/T/#u
Signed-off-by: Baoquan He <bhe@redhat.com>
Cc: Andy Gross <agross@kernel.org>
Cc: Bjorn Andersson <andersson@kernel.org>
Cc: Konrad Dybcio <konrad.dybcio@linaro.org>
Cc: Vinod Koul <vkoul@kernel.org>
Cc: linux-arm-msm@vger.kernel.org
Cc: dmaengine@vger.kernel.org
---
drivers/dma/qcom/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/dma/qcom/Kconfig b/drivers/dma/qcom/Kconfig
index 3f926a653bd8..ace75d7b835a 100644
--- a/drivers/dma/qcom/Kconfig
+++ b/drivers/dma/qcom/Kconfig
@@ -45,6 +45,7 @@ config QCOM_HIDMA_MGMT
config QCOM_HIDMA
tristate "Qualcomm Technologies HIDMA Channel support"
+ depends on HAS_IOMEM
select DMA_ENGINE
help
Enable support for the Qualcomm Technologies HIDMA controller.
--
2.34.1
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 2/2] dmaengine: make QCOM_HIDMA depend on HAS_IOMEM
2023-02-16 7:34 ` [PATCH 2/2] dmaengine: make QCOM_HIDMA " Baoquan He
@ 2023-02-16 9:06 ` Niklas Schnelle
0 siblings, 0 replies; 5+ messages in thread
From: Niklas Schnelle @ 2023-02-16 9:06 UTC (permalink / raw)
To: Baoquan He, linux-kernel
Cc: linux-mm, linux-s390, Andy Gross, Bjorn Andersson, Konrad Dybcio,
Vinod Koul, linux-arm-msm, dmaengine
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 QCOM_HIDMA depend on HAS_IOMEM so that it won't be built to
> cause below compiling error if PCI is unset.
>
> --------------------------------------------------------
> ld: drivers/dma/qcom/hidma.o: in function `hidma_probe':
> hidma.c:(.text+0x4b46): undefined reference to `devm_ioremap_resource'
> ld: hidma.c:(.text+0x4b9e): undefined reference to `devm_ioremap_resource'
> make[1]: *** [scripts/Makefile.vmlinux:35: vmlinux] Error 1
> make: *** [Makefile:1264: vmlinux] Error 2
>
> Link: https://lore.kernel.org/all/Y0TcaZD4nB1w+mAQ@MiWiFi-R3L-srv/T/#u
> Signed-off-by: Baoquan He <bhe@redhat.com>
> Cc: Andy Gross <agross@kernel.org>
> Cc: Bjorn Andersson <andersson@kernel.org>
> Cc: Konrad Dybcio <konrad.dybcio@linaro.org>
> Cc: Vinod Koul <vkoul@kernel.org>
> Cc: linux-arm-msm@vger.kernel.org
> Cc: dmaengine@vger.kernel.org
> ---
> drivers/dma/qcom/Kconfig | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/dma/qcom/Kconfig b/drivers/dma/qcom/Kconfig
> index 3f926a653bd8..ace75d7b835a 100644
> --- a/drivers/dma/qcom/Kconfig
> +++ b/drivers/dma/qcom/Kconfig
> @@ -45,6 +45,7 @@ config QCOM_HIDMA_MGMT
>
> config QCOM_HIDMA
> tristate "Qualcomm Technologies HIDMA Channel support"
> + depends on HAS_IOMEM
> select DMA_ENGINE
> help
> Enable support for the Qualcomm Technologies HIDMA controller.
Thanks for the patch!
Reviewed-by: Niklas Schnelle <schnelle@linux.ibm.com?
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 1/2] pcmcia : make PCMCIA depend on HAS_IOMEM
2023-02-16 7:34 [PATCH 1/2] pcmcia : make PCMCIA depend on HAS_IOMEM Baoquan He
2023-02-16 7:34 ` [PATCH 2/2] dmaengine: make QCOM_HIDMA " Baoquan He
@ 2023-02-16 9:05 ` Niklas Schnelle
2023-02-16 9:37 ` Arnd Bergmann
1 sibling, 1 reply; 5+ messages in thread
From: Niklas Schnelle @ 2023-02-16 9:05 UTC (permalink / raw)
To: Baoquan He, linux-kernel
Cc: linux-mm, linux-s390, Dominik Brodowski, Arnd Bergmann,
Jonathan Cameron, Linus Walleij, Thomas Bogendoerfer
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>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 1/2] pcmcia : make PCMCIA depend on HAS_IOMEM
2023-02-16 9:05 ` [PATCH 1/2] pcmcia : make PCMCIA " Niklas Schnelle
@ 2023-02-16 9:37 ` Arnd Bergmann
0 siblings, 0 replies; 5+ messages in thread
From: Arnd Bergmann @ 2023-02-16 9:37 UTC (permalink / raw)
To: Niklas Schnelle, Baoquan He, linux-kernel
Cc: linux-mm, linux-s390, Dominik Brodowski, Jonathan Cameron,
Linus Walleij, Thomas Bogendoerfer
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>
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2023-02-16 9:37 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-02-16 7:34 [PATCH 1/2] pcmcia : make PCMCIA depend on HAS_IOMEM Baoquan He
2023-02-16 7:34 ` [PATCH 2/2] dmaengine: make QCOM_HIDMA " Baoquan He
2023-02-16 9:06 ` Niklas Schnelle
2023-02-16 9:05 ` [PATCH 1/2] pcmcia : make PCMCIA " Niklas Schnelle
2023-02-16 9:37 ` Arnd Bergmann
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox