Re: [PATCH v1 05/14] arm64: defconfig: build imx-sdma as a module

From: Marcel Ziswiler
Date: Fri Jan 14 2022 - 08:39:46 EST


Hi Stefan

On Thu, 2022-01-13 at 19:42 +0100, Stefan Wahren wrote:
> Hi Marcel,
>
> Am 07.01.22 um 19:03 schrieb Marcel Ziswiler:
> > From: Marcel Ziswiler <marcel.ziswiler@xxxxxxxxxxx>
> >
> > This avoids firmware load error and sysfs fallback reported as follows:
> >
> > [    0.199448] imx-sdma 302c0000.dma-controller: Direct firmware load
> >  for imx/sdma/sdma-imx7d.bin failed with error -2
> > [    0.199487] imx-sdma 302c0000.dma-controller: Falling back to sysfs
> >  fallback for: imx/sdma/sdma-imx7d.bin
>
> unfortunately this isn't an explanation why this solve the issue. It
> looks like that the SDMA firmware is not available for the kernel. Build
> the driver as a module hide the issue and just load it if the rootfs is
> available.

Well, it seems to default to some built-in firmware which, unfortunately, might have some severe known errata
anyway.

> What makes you sure that the driver is not critical for other boards
> during boot?

That is a good question. I remember that there was some more discussion back when I proposed the same change
for imx_v6_v7_defconfig in the 32-bit Arm world. While nobody was able to fully answer it all it did get
accepted by the i.MX maintainer back in the day [1]. I will mention that in v2.

[1] https://lore.kernel.org/lkml/20210920144938.314588-6-marcel@xxxxxxxxxxxx/

Thanks for your review.

> Best regards
>
> >
> > Signed-off-by: Marcel Ziswiler <marcel.ziswiler@xxxxxxxxxxx>
> > ---
> >
> >  arch/arm64/configs/defconfig | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
> > index 3c8106c5776a..a18785a827dc 100644
> > --- a/arch/arm64/configs/defconfig
> > +++ b/arch/arm64/configs/defconfig
> > @@ -915,7 +915,7 @@ CONFIG_DMADEVICES=y
> >  CONFIG_DMA_BCM2835=y
> >  CONFIG_DMA_SUN6I=m
> >  CONFIG_FSL_EDMA=y
> > -CONFIG_IMX_SDMA=y
> > +CONFIG_IMX_SDMA=m
> >  CONFIG_K3_DMA=y
> >  CONFIG_MV_XOR=y
> >  CONFIG_MV_XOR_V2=y

Cheers

Marcel