iommu/renesas: Support riscv compile

Message ID 20221215073212.1966823-1-guoren@kernel.org
State New
Headers
Series iommu/renesas: Support riscv compile |

Commit Message

Guo Ren Dec. 15, 2022, 7:32 a.m. UTC
  From: Guo Ren <guoren@linux.alibaba.com>

After riscv selects ARCH_RENESAS, we need to add ARM64 || ARM
dependency here.

Reported-by: kernel test robot <lkp@intel.com>
Signed-off-by: Guo Ren <guoren@linux.alibaba.com>
Signed-off-by: Guo Ren <guoren@kernel.org>
---
 drivers/iommu/Kconfig | 1 +
 1 file changed, 1 insertion(+)
  

Comments

Robin Murphy Dec. 15, 2022, 5:16 p.m. UTC | #1
On 2022-12-15 07:32, guoren@kernel.org wrote:
> From: Guo Ren <guoren@linux.alibaba.com>
> 
> After riscv selects ARCH_RENESAS, we need to add ARM64 || ARM
> dependency here.

This effectively removes all the extra COMPILE_TEST coverage we've been 
enjoying. FWIW I prefer Geert's suggestion to separate the real 
functional dependency from implicit assumptions about ARCH_RENESAS, with 
something like:

	depends on ARCH_RENESAS || COMPILE_TEST
	depends on !GENERIC_ATOMIC64	#for IOMMU_IO_PGTABLE_LPAE

Thanks,
Robin.

> Reported-by: kernel test robot <lkp@intel.com>
> Signed-off-by: Guo Ren <guoren@linux.alibaba.com>
> Signed-off-by: Guo Ren <guoren@kernel.org>
> ---
>   drivers/iommu/Kconfig | 1 +
>   1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/iommu/Kconfig b/drivers/iommu/Kconfig
> index dc5f7a156ff5..746b95b9f345 100644
> --- a/drivers/iommu/Kconfig
> +++ b/drivers/iommu/Kconfig
> @@ -283,6 +283,7 @@ config EXYNOS_IOMMU_DEBUG
>   
>   config IPMMU_VMSA
>   	bool "Renesas VMSA-compatible IPMMU"
> +	depends on ARM64 || ARM
>   	depends on ARCH_RENESAS || (COMPILE_TEST && !GENERIC_ATOMIC64)
>   	select IOMMU_API
>   	select IOMMU_IO_PGTABLE_LPAE
  
Guo Ren Dec. 16, 2022, 1:32 a.m. UTC | #2
On Fri, Dec 16, 2022 at 1:16 AM Robin Murphy <robin.murphy@arm.com> wrote:
>
> On 2022-12-15 07:32, guoren@kernel.org wrote:
> > From: Guo Ren <guoren@linux.alibaba.com>
> >
> > After riscv selects ARCH_RENESAS, we need to add ARM64 || ARM
> > dependency here.
>
> This effectively removes all the extra COMPILE_TEST coverage we've been
> enjoying. FWIW I prefer Geert's suggestion to separate the real
> functional dependency from implicit assumptions about ARCH_RENESAS, with
> something like:
>
>         depends on ARCH_RENESAS || COMPILE_TEST
>         depends on !GENERIC_ATOMIC64    #for IOMMU_IO_PGTABLE_LPAE

The problem is from clang version 16.0.0, and gcc version 12.2.0 () is
okay. I didn't recognize COMPILE_TEST could utilize the x86(another
arch) to test the arm driver.

How About:

diff --git a/drivers/iommu/Kconfig b/drivers/iommu/Kconfig
index dc5f7a156ff5..a2e259da5a6a 100644
--- a/drivers/iommu/Kconfig
+++ b/drivers/iommu/Kconfig
@@ -283,6 +283,7 @@ config EXYNOS_IOMMU_DEBUG

 config IPMMU_VMSA
        bool "Renesas VMSA-compatible IPMMU"
+       depends on !RISCV
        depends on ARCH_RENESAS || (COMPILE_TEST && !GENERIC_ATOMIC64)
        select IOMMU_API
        select IOMMU_IO_PGTABLE_LPAE

>
> Thanks,
> Robin.
>
> > Reported-by: kernel test robot <lkp@intel.com>
> > Signed-off-by: Guo Ren <guoren@linux.alibaba.com>
> > Signed-off-by: Guo Ren <guoren@kernel.org>
> > ---
> >   drivers/iommu/Kconfig | 1 +
> >   1 file changed, 1 insertion(+)
> >
> > diff --git a/drivers/iommu/Kconfig b/drivers/iommu/Kconfig
> > index dc5f7a156ff5..746b95b9f345 100644
> > --- a/drivers/iommu/Kconfig
> > +++ b/drivers/iommu/Kconfig
> > @@ -283,6 +283,7 @@ config EXYNOS_IOMMU_DEBUG
> >
> >   config IPMMU_VMSA
> >       bool "Renesas VMSA-compatible IPMMU"
> > +     depends on ARM64 || ARM
> >       depends on ARCH_RENESAS || (COMPILE_TEST && !GENERIC_ATOMIC64)
> >       select IOMMU_API
> >       select IOMMU_IO_PGTABLE_LPAE



--
Best Regards
 Guo Ren
  

Patch

diff --git a/drivers/iommu/Kconfig b/drivers/iommu/Kconfig
index dc5f7a156ff5..746b95b9f345 100644
--- a/drivers/iommu/Kconfig
+++ b/drivers/iommu/Kconfig
@@ -283,6 +283,7 @@  config EXYNOS_IOMMU_DEBUG
 
 config IPMMU_VMSA
 	bool "Renesas VMSA-compatible IPMMU"
+	depends on ARM64 || ARM
 	depends on ARCH_RENESAS || (COMPILE_TEST && !GENERIC_ATOMIC64)
 	select IOMMU_API
 	select IOMMU_IO_PGTABLE_LPAE