Re: [PATCH v6 08/14] memory: tegra: Enable compile testing for all drivers

From: Dmitry Osipenko
Date: Mon Jun 07 2021 - 09:38:06 EST


07.06.2021 16:36, Thierry Reding пишет:
> On Mon, Jun 07, 2021 at 08:01:28AM +0200, Krzysztof Kozlowski wrote:
>> On 01/06/2021 04:31, Dmitry Osipenko wrote:
>>> Enable compile testing for all Tegra memory drivers.
>>>
>>> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxxxxx>
>>> Signed-off-by: Dmitry Osipenko <digetx@xxxxxxxxx>
>>> ---
>>> drivers/memory/tegra/Kconfig | 16 ++++++++++------
>>> 1 file changed, 10 insertions(+), 6 deletions(-)
>>>
>>
>> Hi Dmitry,
>>
>> This fails on x86_64 and i386:
>> https://krzk.eu/#/builders/38/builds/260
>> https://krzk.eu/#/builders/40/builds/261
>>
>> /bin/ld: warning: orphan section `__reservedmem_of_table' from `drivers/memory/tegra/tegra210-emc-table.o' being placed in section `__reservedmem_of_table'
>> /bin/ld: drivers/memory/tegra/mc.o: in function `tegra_mc_probe':
>> mc.c:(.text+0x87a): undefined reference to `reset_controller_register'
>> make[1]: *** [/home/buildbot/worker/builddir/build/Makefile:1191: vmlinux] Error 1
>>
>> It's a defconfig with:
>> scripts/config --file out/.config -e COMPILE_TEST -e OF -e SRAM -e
>> MEMORY -e PM_DEVFREQ -e ARM_PL172_MPMC -e ATMEL_SDRAMC -e ATMEL_EBI -e
>> BRCMSTB_DPFE -e BT1_L2_CTL -e TI_AEMIF -e TI_EMIF -e OMAP_GPMC -e
>> TI_EMIF_SRAM -e MVEBU_DEVBUS -e FSL_CORENET_CF -e FSL_IFC -e JZ4780_NEMC
>> -e MTK_SMI -e DA8XX_DDRCTL -e PL353_SMC -e RENESAS_RPCIF -e
>> STM32_FMC2_EBI -e SAMSUNG_MC -e EXYNOS5422_DMC -e EXYNOS_SROM -e
>> TEGRA_MC -e TEGRA20_EMC -e TEGRA30_EMC -e TEGRA124_EMC -e
>> TEGRA210_EMC_TABLE -e TEGRA210_EMC
>
> Ugh... that's exactly one of the reasons why I dislike COMPILE_TEST...
> though admittedly it does point out a missing dependency here. I think
> we need to add && RESET_CONTROLLER to that || branch of the depends on
> to fix that. ARCH_TEGRA selects RESET_CONTROLLER explicitly, so the
> COMPILE_TEST branch needs to mirror that.
>
> Either that, or I suppose we could add the depends on RESET_CONTROLLER
> explicitly to TEGRA_MC, or perhaps even select it (although that could
> cause conflicts down the road, but should be fine right now because
> RESET_CONTROLLER doesn't have any other dependencies right now).

The select will work.

The other option is to add stubs for the reset controller API.