Re: [PATCH] drivers/soc/litex: drop obsolete dependency on COMPILE_TEST

From: Gabriel L. Somlo
Date: Fri Nov 25 2022 - 09:00:15 EST


On Thu, Nov 24, 2022 at 04:16:18PM +0100, Jean Delvare wrote:
> Since commit 0166dc11be91 ("of: make CONFIG_OF user selectable"), it
> is possible to test-build any driver which depends on OF on any
> architecture by explicitly selecting OF. Therefore depending on
> COMPILE_TEST as an alternative is no longer needed.
>
> It is actually better to always build such drivers with OF enabled,
> so that the test builds are closer to how each driver will actually be
> built on its intended target. Building them without OF may not test
> much as the compiler will optimize out potentially large parts of the
> code. In the worst case, this could even pop false positive warnings.
> Dropping COMPILE_TEST here improves the quality of our testing and
> avoids wasting time on non-existent issues.
>
> As a minor optimization, this also lets us drop of_match_ptr() and
> ifdef-guarding, as we now know what they will resolve to, we might as
> well save cpp some work.

Acked-by: Gabriel Somlo <gsomlo@xxxxxxxxx>

Thanks,
--G

> Signed-off-by: Jean Delvare <jdelvare@xxxxxxx>
> Cc: Karol Gugala <kgugala@xxxxxxxxxxxx>
> Cc: Mateusz Holenko <mholenko@xxxxxxxxxxxx>
> Cc: Gabriel Somlo <gsomlo@xxxxxxxxx>
> Cc: Joel Stanley <joel@xxxxxxxxx>
> ---
> drivers/soc/litex/Kconfig | 2 +-
> drivers/soc/litex/litex_soc_ctrl.c | 4 +---
> 2 files changed, 2 insertions(+), 4 deletions(-)
>
> --- linux-6.0.orig/drivers/soc/litex/Kconfig
> +++ linux-6.0/drivers/soc/litex/Kconfig
> @@ -7,7 +7,7 @@ config LITEX
>
> config LITEX_SOC_CONTROLLER
> tristate "Enable LiteX SoC Controller driver"
> - depends on OF || COMPILE_TEST
> + depends on OF
> depends on HAS_IOMEM
> select LITEX
> help
> --- linux-6.0.orig/drivers/soc/litex/litex_soc_ctrl.c
> +++ linux-6.0/drivers/soc/litex/litex_soc_ctrl.c
> @@ -82,13 +82,11 @@ static int litex_reset_handler(struct no
> return NOTIFY_DONE;
> }
>
> -#ifdef CONFIG_OF
> static const struct of_device_id litex_soc_ctrl_of_match[] = {
> {.compatible = "litex,soc-controller"},
> {},
> };
> MODULE_DEVICE_TABLE(of, litex_soc_ctrl_of_match);
> -#endif /* CONFIG_OF */
>
> static int litex_soc_ctrl_probe(struct platform_device *pdev)
> {
> @@ -131,7 +129,7 @@ static int litex_soc_ctrl_remove(struct
> static struct platform_driver litex_soc_ctrl_driver = {
> .driver = {
> .name = "litex-soc-controller",
> - .of_match_table = of_match_ptr(litex_soc_ctrl_of_match)
> + .of_match_table = litex_soc_ctrl_of_match,
> },
> .probe = litex_soc_ctrl_probe,
> .remove = litex_soc_ctrl_remove,
>
>
> --
> Jean Delvare
> SUSE L3 Support