RE: [PATCH 1/2] fsl/fman: propagate dma_ops

From: Madalin-cristian Bucur
Date: Mon Jun 26 2017 - 10:55:21 EST


> -----Original Message-----
> From: geert.uytterhoeven@xxxxxxxxx [mailto:geert.uytterhoeven@xxxxxxxxx]
> On Behalf Of Geert Uytterhoeven
> Sent: Monday, June 26, 2017 10:49 AM
> To: Madalin-cristian Bucur <madalin.bucur@xxxxxxx>
> Cc: netdev@xxxxxxxxxxxxxxx; David S. Miller <davem@xxxxxxxxxxxxx>;
> linuxppc-dev@xxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx
> Subject: Re: [PATCH 1/2] fsl/fman: propagate dma_ops
>
> Hi Madalin,
>
> On Mon, Jun 19, 2017 at 5:04 PM, Madalin Bucur <madalin.bucur@xxxxxxx>
> wrote:
> > Make sure dma_ops are set, to be later used by the Ethernet driver.
> >
> > Signed-off-by: Madalin Bucur <madalin.bucur@xxxxxxx>
> > ---
> > drivers/net/ethernet/freescale/fman/mac.c | 2 ++
> > 1 file changed, 2 insertions(+)
> >
> > diff --git a/drivers/net/ethernet/freescale/fman/mac.c
> b/drivers/net/ethernet/freescale/fman/mac.c
> > index 0b31f85..6e67d22f 100644
> > --- a/drivers/net/ethernet/freescale/fman/mac.c
> > +++ b/drivers/net/ethernet/freescale/fman/mac.c
> > @@ -623,6 +623,8 @@ static struct platform_device
> *dpaa_eth_add_device(int fman_id,
> > goto no_mem;
> > }
> >
> > + set_dma_ops(&pdev->dev, get_dma_ops(priv->dev));
> > +
>
> When compile-testing with f NO_DMA=y:
>
> drivers/net/ethernet/freescale/fman/mac.c: In function
> âdpaa_eth_add_deviceâ:
> drivers/net/ethernet/freescale/fman/mac.c:626: error: implicit
> declaration of function âset_dma_opsâ
>
> Reverting commit 5567e989198b5a8d fixes this regression in v4.12-rc7.
>
> Why is this change needed?
> There's no single other call to the DMA API in this file?

We're setting here the dma_ops that are later used in the other driver/patch.
The problem is we now depend upon DMA but do not explicitly declare it:

<<Code that depends on the dma-mapping API needs to set 'depends on HAS_DMA'
in its Kconfig>>

I'll need to add this to the FMan driver Kconfig.

> If it's really needed, can't set_dma_ops() be called from the driver that
> needs it, cfr. your other patch "[PATCH 2/2] dpaa_eth: reuse the dma_ops
> provided by the FMan MAC device"?
>
> Thanks!
>
> 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

Thanks,
Madalin