diff mbox series

mtd: nand: MTD_NAND_MARVELL should depend on HAS_DMA

Message ID 1517318601-14793-1-git-send-email-geert@linux-m68k.org
State Accepted
Delegated to: Boris Brezillon
Headers show
Series mtd: nand: MTD_NAND_MARVELL should depend on HAS_DMA | expand

Commit Message

Geert Uytterhoeven Jan. 30, 2018, 1:23 p.m. UTC
If NO_DMA=y:

    ERROR: "bad_dma_ops" [drivers/mtd/nand/marvell_nand.ko] undefined!

Add a dependency on HAS_DMA to fix this.

Fixes: 02f26ecf8c772751 ("mtd: nand: add reworked Marvell NAND controller driver")
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
---
 drivers/mtd/nand/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Miquel Raynal Jan. 30, 2018, 1:46 p.m. UTC | #1
Hi Geert,

On Tue, 30 Jan 2018 14:23:21 +0100
Geert Uytterhoeven <geert@linux-m68k.org> wrote:

> If NO_DMA=y:
> 
>     ERROR: "bad_dma_ops" [drivers/mtd/nand/marvell_nand.ko] undefined!
> 
> Add a dependency on HAS_DMA to fix this.
> 
> Fixes: 02f26ecf8c772751 ("mtd: nand: add reworked Marvell NAND controller driver")
> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
> ---
>  drivers/mtd/nand/Kconfig | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/mtd/nand/Kconfig b/drivers/mtd/nand/Kconfig
> index e6b8c59f2c0da7c0..736ac887303c88ba 100644
> --- a/drivers/mtd/nand/Kconfig
> +++ b/drivers/mtd/nand/Kconfig
> @@ -328,7 +328,7 @@ config MTD_NAND_MARVELL
>  	tristate "NAND controller support on Marvell boards"
>  	depends on PXA3xx || ARCH_MMP || PLAT_ORION || ARCH_MVEBU || \
>  		   COMPILE_TEST
> -	depends on HAS_IOMEM
> +	depends on HAS_IOMEM && HAS_DMA

I think this is more a coding issue than a Kconfig issue. AFAIR, none
of the ARCH_MVEBU SoCs use DMA in conjunction with the NAND controller.
PXA SoCs may use DMA (NFCv1 only) but this is not a hard requirement and
the driver is supposed to support PIO mode in all situations.

Can you please share your setup, the SoC, the configuration,
maybe also the DT?


Thanks,
Miquèl
Boris Brezillon Jan. 30, 2018, 1:56 p.m. UTC | #2
On Tue, 30 Jan 2018 14:46:47 +0100
Miquel Raynal <miquel.raynal@free-electrons.com> wrote:

> Hi Geert,
> 
> On Tue, 30 Jan 2018 14:23:21 +0100
> Geert Uytterhoeven <geert@linux-m68k.org> wrote:
> 
> > If NO_DMA=y:
> > 
> >     ERROR: "bad_dma_ops" [drivers/mtd/nand/marvell_nand.ko] undefined!
> > 
> > Add a dependency on HAS_DMA to fix this.
> > 
> > Fixes: 02f26ecf8c772751 ("mtd: nand: add reworked Marvell NAND controller driver")
> > Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
> > ---
> >  drivers/mtd/nand/Kconfig | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/drivers/mtd/nand/Kconfig b/drivers/mtd/nand/Kconfig
> > index e6b8c59f2c0da7c0..736ac887303c88ba 100644
> > --- a/drivers/mtd/nand/Kconfig
> > +++ b/drivers/mtd/nand/Kconfig
> > @@ -328,7 +328,7 @@ config MTD_NAND_MARVELL
> >  	tristate "NAND controller support on Marvell boards"
> >  	depends on PXA3xx || ARCH_MMP || PLAT_ORION || ARCH_MVEBU || \
> >  		   COMPILE_TEST
> > -	depends on HAS_IOMEM
> > +	depends on HAS_IOMEM && HAS_DMA  
> 
> I think this is more a coding issue than a Kconfig issue. AFAIR, none
> of the ARCH_MVEBU SoCs use DMA in conjunction with the NAND controller.
> PXA SoCs may use DMA (NFCv1 only) but this is not a hard requirement and
> the driver is supposed to support PIO mode in all situations.
> 
> Can you please share your setup, the SoC, the configuration,
> maybe also the DT?

I don't think Geert is testing on a real board. He's just enabling
COMPILE_TEST and can then select your driver. Which means you really
need this depends on HAS_DMA.
Geert Uytterhoeven Jan. 30, 2018, 1:59 p.m. UTC | #3
On Tue, Jan 30, 2018 at 2:56 PM, Boris Brezillon
<boris.brezillon@free-electrons.com> wrote:
> On Tue, 30 Jan 2018 14:46:47 +0100
> Miquel Raynal <miquel.raynal@free-electrons.com> wrote:
>> On Tue, 30 Jan 2018 14:23:21 +0100
>> Geert Uytterhoeven <geert@linux-m68k.org> wrote:
>>
>> > If NO_DMA=y:
>> >
>> >     ERROR: "bad_dma_ops" [drivers/mtd/nand/marvell_nand.ko] undefined!
>> >
>> > Add a dependency on HAS_DMA to fix this.
>> >
>> > Fixes: 02f26ecf8c772751 ("mtd: nand: add reworked Marvell NAND controller driver")
>> > Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
>> > ---
>> >  drivers/mtd/nand/Kconfig | 2 +-
>> >  1 file changed, 1 insertion(+), 1 deletion(-)
>> >
>> > diff --git a/drivers/mtd/nand/Kconfig b/drivers/mtd/nand/Kconfig
>> > index e6b8c59f2c0da7c0..736ac887303c88ba 100644
>> > --- a/drivers/mtd/nand/Kconfig
>> > +++ b/drivers/mtd/nand/Kconfig
>> > @@ -328,7 +328,7 @@ config MTD_NAND_MARVELL
>> >     tristate "NAND controller support on Marvell boards"
>> >     depends on PXA3xx || ARCH_MMP || PLAT_ORION || ARCH_MVEBU || \
>> >                COMPILE_TEST
>> > -   depends on HAS_IOMEM
>> > +   depends on HAS_IOMEM && HAS_DMA
>>
>> I think this is more a coding issue than a Kconfig issue. AFAIR, none
>> of the ARCH_MVEBU SoCs use DMA in conjunction with the NAND controller.
>> PXA SoCs may use DMA (NFCv1 only) but this is not a hard requirement and
>> the driver is supposed to support PIO mode in all situations.
>>
>> Can you please share your setup, the SoC, the configuration,
>> maybe also the DT?
>
> I don't think Geert is testing on a real board. He's just enabling
> COMPILE_TEST and can then select your driver. Which means you really
> need this depends on HAS_DMA.

Correct.

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds
Miquel Raynal Jan. 30, 2018, 2:05 p.m. UTC | #4
On Tue, 30 Jan 2018 14:59:37 +0100
Geert Uytterhoeven <geert@linux-m68k.org> wrote:

> On Tue, Jan 30, 2018 at 2:56 PM, Boris Brezillon
> <boris.brezillon@free-electrons.com> wrote:
> > On Tue, 30 Jan 2018 14:46:47 +0100
> > Miquel Raynal <miquel.raynal@free-electrons.com> wrote:  
> >> On Tue, 30 Jan 2018 14:23:21 +0100
> >> Geert Uytterhoeven <geert@linux-m68k.org> wrote:
> >>  
> >> > If NO_DMA=y:
> >> >
> >> >     ERROR: "bad_dma_ops" [drivers/mtd/nand/marvell_nand.ko] undefined!
> >> >
> >> > Add a dependency on HAS_DMA to fix this.
> >> >
> >> > Fixes: 02f26ecf8c772751 ("mtd: nand: add reworked Marvell NAND controller driver")
> >> > Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
> >> > ---
> >> >  drivers/mtd/nand/Kconfig | 2 +-
> >> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >> >
> >> > diff --git a/drivers/mtd/nand/Kconfig b/drivers/mtd/nand/Kconfig
> >> > index e6b8c59f2c0da7c0..736ac887303c88ba 100644
> >> > --- a/drivers/mtd/nand/Kconfig
> >> > +++ b/drivers/mtd/nand/Kconfig
> >> > @@ -328,7 +328,7 @@ config MTD_NAND_MARVELL
> >> >     tristate "NAND controller support on Marvell boards"
> >> >     depends on PXA3xx || ARCH_MMP || PLAT_ORION || ARCH_MVEBU || \
> >> >                COMPILE_TEST
> >> > -   depends on HAS_IOMEM
> >> > +   depends on HAS_IOMEM && HAS_DMA  
> >>
> >> I think this is more a coding issue than a Kconfig issue. AFAIR, none
> >> of the ARCH_MVEBU SoCs use DMA in conjunction with the NAND controller.
> >> PXA SoCs may use DMA (NFCv1 only) but this is not a hard requirement and
> >> the driver is supposed to support PIO mode in all situations.
> >>
> >> Can you please share your setup, the SoC, the configuration,
> >> maybe also the DT?  
> >
> > I don't think Geert is testing on a real board. He's just enabling
> > COMPILE_TEST and can then select your driver. Which means you really
> > need this depends on HAS_DMA.  
> 
> Correct.

My bad.

Ok then, it looks like this is the right fix.

Thanks Geert for reporting it.
Miquèl

> 
> Gr{oetje,eeting}s,
> 
>                         Geert
> 
> --
> Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
> 
> In personal conversations with technical people, I call myself a hacker. But
> when I'm talking to journalists I just say "programmer" or something like that.
>                                 -- Linus Torvalds
Miquel Raynal Jan. 30, 2018, 2:50 p.m. UTC | #5
On Tue, 30 Jan 2018 14:23:21 +0100
Geert Uytterhoeven <geert@linux-m68k.org> wrote:

> If NO_DMA=y:
> 
>     ERROR: "bad_dma_ops" [drivers/mtd/nand/marvell_nand.ko] undefined!
> 
> Add a dependency on HAS_DMA to fix this.
> 
> Fixes: 02f26ecf8c772751 ("mtd: nand: add reworked Marvell NAND controller driver")
> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
> ---
>  drivers/mtd/nand/Kconfig | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/mtd/nand/Kconfig b/drivers/mtd/nand/Kconfig
> index e6b8c59f2c0da7c0..736ac887303c88ba 100644
> --- a/drivers/mtd/nand/Kconfig
> +++ b/drivers/mtd/nand/Kconfig
> @@ -328,7 +328,7 @@ config MTD_NAND_MARVELL
>  	tristate "NAND controller support on Marvell boards"
>  	depends on PXA3xx || ARCH_MMP || PLAT_ORION || ARCH_MVEBU || \
>  		   COMPILE_TEST
> -	depends on HAS_IOMEM
> +	depends on HAS_IOMEM && HAS_DMA
>  	help
>  	  This enables the NAND flash controller driver for Marvell boards,
>  	  including:

Acked-by: Miquel Raynal <miquel.raynal@free-electrons.com>
Boris Brezillon Feb. 12, 2018, 9:22 p.m. UTC | #6
On Tue, 30 Jan 2018 14:23:21 +0100
Geert Uytterhoeven <geert@linux-m68k.org> wrote:

> If NO_DMA=y:
> 
>     ERROR: "bad_dma_ops" [drivers/mtd/nand/marvell_nand.ko] undefined!
> 
> Add a dependency on HAS_DMA to fix this.

Applied.

Thanks,

Boris

> 
> Fixes: 02f26ecf8c772751 ("mtd: nand: add reworked Marvell NAND controller driver")
> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
> ---
>  drivers/mtd/nand/Kconfig | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/mtd/nand/Kconfig b/drivers/mtd/nand/Kconfig
> index e6b8c59f2c0da7c0..736ac887303c88ba 100644
> --- a/drivers/mtd/nand/Kconfig
> +++ b/drivers/mtd/nand/Kconfig
> @@ -328,7 +328,7 @@ config MTD_NAND_MARVELL
>  	tristate "NAND controller support on Marvell boards"
>  	depends on PXA3xx || ARCH_MMP || PLAT_ORION || ARCH_MVEBU || \
>  		   COMPILE_TEST
> -	depends on HAS_IOMEM
> +	depends on HAS_IOMEM && HAS_DMA
>  	help
>  	  This enables the NAND flash controller driver for Marvell boards,
>  	  including:
diff mbox series

Patch

diff --git a/drivers/mtd/nand/Kconfig b/drivers/mtd/nand/Kconfig
index e6b8c59f2c0da7c0..736ac887303c88ba 100644
--- a/drivers/mtd/nand/Kconfig
+++ b/drivers/mtd/nand/Kconfig
@@ -328,7 +328,7 @@  config MTD_NAND_MARVELL
 	tristate "NAND controller support on Marvell boards"
 	depends on PXA3xx || ARCH_MMP || PLAT_ORION || ARCH_MVEBU || \
 		   COMPILE_TEST
-	depends on HAS_IOMEM
+	depends on HAS_IOMEM && HAS_DMA
 	help
 	  This enables the NAND flash controller driver for Marvell boards,
 	  including: