lkml.org 
[lkml]   [2022]   [Mar]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH] m68k: tweak coldfire/device.c for COMPILE_TEST
From
Hi Randy,

On 4/3/22 13:35, Randy Dunlap wrote:
> When CONFIG_MCF_EDMA is set (due to COMPILE_TEST, not due to
> CONFIG_M5441x), coldfire/device.c has compile errors due to
> missing MCFEDMA_* symbols. In the .config file that was provided,
> CONFIG_M5206=y, not CONFIG_M5441x, so <asm/m5441xsim.h> is not
> included in coldfire/device.c.
>
> Only build the MCF_EDMA code in coldfire/device.c if both MCF_EDMA
> and M5441x are enabled.
>
> Fixes these build errors:
>
> ../arch/m68k/coldfire/device.c:512:35: error: 'MCFEDMA_BASE' undeclared here (not in a function); did you mean 'MCFDMA_BASE1'?
> 512 | .start = MCFEDMA_BASE,
> ../arch/m68k/coldfire/device.c:513:50: error: 'MCFEDMA_SIZE' undeclared here (not in a function)
> 513 | .end = MCFEDMA_BASE + MCFEDMA_SIZE - 1,
> ../arch/m68k/coldfire/device.c:517:35: error: 'MCFEDMA_IRQ_INTR0' undeclared here (not in a function)
> 517 | .start = MCFEDMA_IRQ_INTR0,
> ../arch/m68k/coldfire/device.c:523:35: error: 'MCFEDMA_IRQ_INTR16' undeclared here (not in a function)
> 523 | .start = MCFEDMA_IRQ_INTR16,
> ../arch/m68k/coldfire/device.c:529:35: error: 'MCFEDMA_IRQ_INTR56' undeclared here (not in a function)
> 529 | .start = MCFEDMA_IRQ_INTR56,
> ../arch/m68k/coldfire/device.c:535:35: error: 'MCFEDMA_IRQ_ERR' undeclared here (not in a function)
> 535 | .start = MCFEDMA_IRQ_ERR,
>
> Fixes: d7e9d01ac292 ("m68k: add ColdFire mcf5441x eDMA platform support")
> Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
> Reported-by: kernel test robot <lkp@intel.com>
> Link: lore.kernel.org/r/202203030252.P752DK46-lkp@intel.com
> Cc: Angelo Dureghello <angelo@sysam.it>
> Cc: Greg Ungerer <gerg@kernel.org>
> Cc: Greg Ungerer <gerg@linux-m68k.org>
> Cc: Geert Uytterhoeven <geert@linux-m68k.org>
> Cc: linux-m68k@lists.linux-m68k.org
> Cc: uclinux-dev@uclinux.org
> ---
> arch/m68k/coldfire/device.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> --- linux-next-20220303.orig/arch/m68k/coldfire/device.c
> +++ linux-next-20220303/arch/m68k/coldfire/device.c
> @@ -480,7 +480,7 @@ static struct platform_device mcf_i2c5 =
> #endif /* MCFI2C_BASE5 */
> #endif /* IS_ENABLED(CONFIG_I2C_IMX) */
>
> -#if IS_ENABLED(CONFIG_MCF_EDMA)
> +#if IS_ENABLED(CONFIG_MCF_EDMA) && IS_ENABLED(CONFIG_M5441x)

I really try to avoid making these ColdFire SoC specific. Freescale has
a habit of using the same hardware blocks across a number of parts.
The model so far has been to let the Kconfig select these out as required
(and so not having to conditionally duplicate that here).

I would prefer it to be conditional on !COMPILE_TEST if that is what
is ultimately causing the problem.

Regards
Greg



>
> static const struct dma_slave_map mcf_edma_map[] = {
> { "dreq0", "rx-tx", MCF_EDMA_FILTER_PARAM(0) },
> @@ -552,7 +552,7 @@ static struct platform_device mcf_edma =
> .platform_data = &mcf_edma_data,
> }
> };
> -#endif /* IS_ENABLED(CONFIG_MCF_EDMA) */
> +#endif /* IS_ENABLED(CONFIG_MCF_EDMA) && IS_ENABLED(CONFIG_M5441x) */
>
> #ifdef MCFSDHC_BASE
> static struct mcf_esdhc_platform_data mcf_esdhc_data = {
> @@ -651,7 +651,7 @@ static struct platform_device *mcf_devic
> &mcf_i2c5,
> #endif
> #endif
> -#if IS_ENABLED(CONFIG_MCF_EDMA)
> +#if IS_ENABLED(CONFIG_MCF_EDMA) && IS_ENABLED(CONFIG_M5441x)
> &mcf_edma,
> #endif
> #ifdef MCFSDHC_BASE

\
 
 \ /
  Last update: 2022-03-04 15:46    [W:0.047 / U:0.656 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site