On Wed, Sep 23, 2020 at 03:34:21AM +0300, Dmitry Osipenko wrote: > The DMA subsystem could be entirely disabled in Kconfig and then the > TEGRA20_APB_DMA option isn't available too. Hence kernel configuration > fails if DMADEVICES Kconfig option is disabled due to the unsatisfiable > dependency. > > The FUSE driver isn't a critical driver and currently it only provides > NVMEM interface to userspace which isn't known to be widely used, and > thus, it's fine if FUSE driver fails to load. This isn't entirely accurate. The FUSE driver also provides SKU specific information via tegra_sku_info and exposes some of the FUSE registers to other drivers, such as the calibration data for XUSB. The APB DMA is really only needed to work around an issue on Tegra20, so perhaps this really is okay. On the other hand, could we not just change the dependency to something like select DMADEVICES if ARCH_TEGRA_2x_SOC select TEGRA20_APB_DMA if ARCH_TEGRA_2x_SOC to fix the Kconfig issue but keep the explicit documentation of this dependency? Thierry > > Let's remove the erroneous Kconfig dependency and let the FUSE driver to > fail the probing if DMA is unavailable. > > Fixes: 19d41e5e9c68 ("soc/tegra: fuse: Add APB DMA dependency for Tegra20") > Reported-by: Necip Fazil Yildiran <fazilyildiran@xxxxxxxxx> > Link: https://bugzilla.kernel.org/show_bug.cgi?id=209301 > Signed-off-by: Dmitry Osipenko <digetx@xxxxxxxxx> > --- > drivers/soc/tegra/Kconfig | 1 - > 1 file changed, 1 deletion(-) > > diff --git a/drivers/soc/tegra/Kconfig b/drivers/soc/tegra/Kconfig > index 976dee036470..676807c5a215 100644 > --- a/drivers/soc/tegra/Kconfig > +++ b/drivers/soc/tegra/Kconfig > @@ -136,7 +136,6 @@ config SOC_TEGRA_FUSE > def_bool y > depends on ARCH_TEGRA > select SOC_BUS > - select TEGRA20_APB_DMA if ARCH_TEGRA_2x_SOC > > config SOC_TEGRA_FLOWCTRL > bool > -- > 2.27.0 >
Attachment:
signature.asc
Description: PGP signature