2020-03-28 11:43:16

by Yue Haibing

[permalink] [raw]
Subject: [PATCH -next] dmaengine: hisilicon: Fix build error without PCI_MSI

If PCI_MSI is not set, building fais:

drivers/dma/hisi_dma.c: In function ‘hisi_dma_free_irq_vectors’:
drivers/dma/hisi_dma.c:138:2: error: implicit declaration of function ‘pci_free_irq_vectors’;
did you mean ‘pci_alloc_irq_vectors’? [-Werror=implicit-function-declaration]
pci_free_irq_vectors(data);
^~~~~~~~~~~~~~~~~~~~

Make HISI_DMA depends on PCI_MSI to fix this.

Fixes: e9f08b65250d ("dmaengine: hisilicon: Add Kunpeng DMA engine support")
Signed-off-by: YueHaibing <[email protected]>
---
drivers/dma/Kconfig | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/dma/Kconfig b/drivers/dma/Kconfig
index 092483644315..023db6883d05 100644
--- a/drivers/dma/Kconfig
+++ b/drivers/dma/Kconfig
@@ -241,7 +241,8 @@ config FSL_RAID

config HISI_DMA
tristate "HiSilicon DMA Engine support"
- depends on ARM64 || (COMPILE_TEST && PCI_MSI)
+ depends on ARM64 || COMPILE_TEST
+ depends on PCI_MSI
select DMA_ENGINE
select DMA_VIRTUAL_CHANNELS
help
--
2.17.1



2020-03-30 02:41:06

by Zhou Wang

[permalink] [raw]
Subject: Re: [PATCH -next] dmaengine: hisilicon: Fix build error without PCI_MSI

On 2020/3/28 19:41, YueHaibing wrote:
> If PCI_MSI is not set, building fais:
>
> drivers/dma/hisi_dma.c: In function ‘hisi_dma_free_irq_vectors’:
> drivers/dma/hisi_dma.c:138:2: error: implicit declaration of function ‘pci_free_irq_vectors’;
> did you mean ‘pci_alloc_irq_vectors’? [-Werror=implicit-function-declaration]
> pci_free_irq_vectors(data);
> ^~~~~~~~~~~~~~~~~~~~
>
> Make HISI_DMA depends on PCI_MSI to fix this.

In ARM64, it will appear this compile error if PCI disables.
How about adding depends on PCI && PCI_MSI here?

Best,
Zhou

>
> Fixes: e9f08b65250d ("dmaengine: hisilicon: Add Kunpeng DMA engine support")
> Signed-off-by: YueHaibing <[email protected]>
> ---
> drivers/dma/Kconfig | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/dma/Kconfig b/drivers/dma/Kconfig
> index 092483644315..023db6883d05 100644
> --- a/drivers/dma/Kconfig
> +++ b/drivers/dma/Kconfig
> @@ -241,7 +241,8 @@ config FSL_RAID
>
> config HISI_DMA
> tristate "HiSilicon DMA Engine support"
> - depends on ARM64 || (COMPILE_TEST && PCI_MSI)
> + depends on ARM64 || COMPILE_TEST
> + depends on PCI_MSI
> select DMA_ENGINE
> select DMA_VIRTUAL_CHANNELS
> help
>

2020-03-30 07:00:33

by Yue Haibing

[permalink] [raw]
Subject: Re: [PATCH -next] dmaengine: hisilicon: Fix build error without PCI_MSI

On 2020/3/30 10:39, Zhou Wang wrote:
> On 2020/3/28 19:41, YueHaibing wrote:
>> If PCI_MSI is not set, building fais:
>>
>> drivers/dma/hisi_dma.c: In function ‘hisi_dma_free_irq_vectors’:
>> drivers/dma/hisi_dma.c:138:2: error: implicit declaration of function ‘pci_free_irq_vectors’;
>> did you mean ‘pci_alloc_irq_vectors’? [-Werror=implicit-function-declaration]
>> pci_free_irq_vectors(data);
>> ^~~~~~~~~~~~~~~~~~~~
>>
>> Make HISI_DMA depends on PCI_MSI to fix this.
>
> In ARM64, it will appear this compile error if PCI disables.
> How about adding depends on PCI && PCI_MSI here?

PCI_MSI depends on PCI, while PCI is not set, PCI_MSI will never be set

so depends on PCI_MSI is enough.

>
> Best,
> Zhou
>
>>
>> Fixes: e9f08b65250d ("dmaengine: hisilicon: Add Kunpeng DMA engine support")
>> Signed-off-by: YueHaibing <[email protected]>
>> ---
>> drivers/dma/Kconfig | 3 ++-
>> 1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/dma/Kconfig b/drivers/dma/Kconfig
>> index 092483644315..023db6883d05 100644
>> --- a/drivers/dma/Kconfig
>> +++ b/drivers/dma/Kconfig
>> @@ -241,7 +241,8 @@ config FSL_RAID
>>
>> config HISI_DMA
>> tristate "HiSilicon DMA Engine support"
>> - depends on ARM64 || (COMPILE_TEST && PCI_MSI)
>> + depends on ARM64 || COMPILE_TEST
>> + depends on PCI_MSI
>> select DMA_ENGINE
>> select DMA_VIRTUAL_CHANNELS
>> help
>>
>
>
> .
>

2020-04-16 00:15:50

by Vinod Koul

[permalink] [raw]
Subject: Re: [PATCH -next] dmaengine: hisilicon: Fix build error without PCI_MSI

On 28-03-20, 19:41, YueHaibing wrote:
> If PCI_MSI is not set, building fais:
>
> drivers/dma/hisi_dma.c: In function ‘hisi_dma_free_irq_vectors’:
> drivers/dma/hisi_dma.c:138:2: error: implicit declaration of function ‘pci_free_irq_vectors’;
> did you mean ‘pci_alloc_irq_vectors’? [-Werror=implicit-function-declaration]
> pci_free_irq_vectors(data);
> ^~~~~~~~~~~~~~~~~~~~
>
> Make HISI_DMA depends on PCI_MSI to fix this.

Applied, thanks

--
~Vinod