On 26/09/16 18:28, Vinod Koul wrote: > On Mon, Sep 26, 2016 at 10:54:21PM +0530, Vinod Koul wrote: >> On Fri, Sep 23, 2016 at 10:02:23AM +0100, Jon Hunter wrote: >>>> >>>> Yes, I've built a few hundred randconfigs overnight, everything succeeds with >>>> that now. >>> >>> Please note that 'depends on PM && HAVE_CLK' is equivalent to just >>> 'depends on PM_CLK' and so why not use this? This is what I was >>> suggesting as an alternative to the fix for patch 26/30 [0]. >> >> That's true, I am comitting with 'depends on PM_CLK' now. >> >> Since the other patch doesn't seem to be required, am dropping that one. > > FWIW: here is the diff > > @@ -480,10 +480,9 @@ config TEGRA20_APB_DMA > > config TEGRA210_ADMA > bool "NVIDIA Tegra210 ADMA support" > - depends on ARCH_TEGRA_210_SOC > + depends on (ARCH_TEGRA_210_SOC && PM_CLK) || (ARM && COMPILE_TEST) > select DMA_ENGINE > select DMA_VIRTUAL_CHANNELS > - select PM_CLK > help > Support for the NVIDIA Tegra210 ADMA controller driver. The > DMA controller has multiple DMA channels and is used to service > I was still able to generate the following compile error for ARM if !PM and COMPILE_TEST enabled. CC drivers/dma/tegra210-adma.o In file included from ./include/uapi/linux/posix_types.h:4:0, from include/uapi/linux/types.h:13, from include/linux/compiler.h:203, from include/linux/err.h:4, from include/linux/clk.h:15, from drivers/dma/tegra210-adma.c:19: drivers/dma/tegra210-adma.c: In function 'tegra_adma_runtime_suspend': include/linux/stddef.h:7:14: error: called object is not a function or function pointer #define NULL ((void *)0) ^ include/linux/pm_clock.h:81:24: note: in expansion of macro 'NULL' #define pm_clk_suspend NULL ^ drivers/dma/tegra210-adma.c:641:9: note: in expansion of macro 'pm_clk_suspend' return pm_clk_suspend(dev); ^ drivers/dma/tegra210-adma.c: In function 'tegra_adma_runtime_resume': include/linux/stddef.h:7:14: error: called object is not a function or function pointer #define NULL ((void *)0) ^ include/linux/pm_clock.h:82:23: note: in expansion of macro 'NULL' #define pm_clk_resume NULL ^ drivers/dma/tegra210-adma.c:649:8: note: in expansion of macro 'pm_clk_resume' ret = pm_clk_resume(dev); ^ drivers/dma/tegra210-adma.c: At top level: drivers/dma/tegra210-adma.c:635:12: warning: 'tegra_adma_runtime_suspend' defined but not used [-Wunused-function] static int tegra_adma_runtime_suspend(struct device *dev) ^ drivers/dma/tegra210-adma.c:644:12: warning: 'tegra_adma_runtime_resume' defined but not used [-Wunused-function] static int tegra_adma_runtime_resume(struct device *dev) ^ make[2]: *** [drivers/dma/tegra210-adma.o] Error 1 make[1]: *** [drivers/dma] Error 2 make: *** [drivers] Error 2 Jon -- nvpublic -- To unsubscribe from this list: send the line "unsubscribe dmaengine" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html