mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH RESEND] drivers/soc/litex: drop obsolete dependency on COMPILE_TEST
@ 2024-06-17  8:45 Jean Delvare
  2024-06-17  8:52 ` Jean Delvare
  2024-06-17 10:54 ` Arnd Bergmann
  0 siblings, 2 replies; 4+ messages in thread
From: Jean Delvare @ 2024-06-17  8:45 UTC (permalink / raw)
  To: LKML
  Cc: Karol Gugala, Mateusz Holenko, Gabriel Somlo, Joel Stanley, arnd,
	Andrew Morton

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.

Signed-off-by: Jean Delvare <jdelvare@suse.de>
Cc: Karol Gugala <kgugala@antmicro.com>
Cc: Mateusz Holenko <mholenko@antmicro.com>
Cc: Gabriel Somlo <gsomlo@gmail.com>
Cc: Joel Stanley <joel@jms.id.au>
---
Already sent on: 2022-11-24

This is one of the only 3 remaining occurrences of this deprecated
construct.

Arnd, in December 2023, Gabriel suggested that maybe this could go
through one of your trees, as apparently there's no dedicated path to
upstream for litex patches? Thanks in advance.

 drivers/soc/litex/Kconfig          |    2 +-
 drivers/soc/litex/litex_soc_ctrl.c |    4 +---
 2 files changed, 2 insertions(+), 4 deletions(-)

--- linux-6.8.orig/drivers/soc/litex/Kconfig
+++ linux-6.8/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.8.orig/drivers/soc/litex/litex_soc_ctrl.c
+++ linux-6.8/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)
 {
@@ -130,7 +128,7 @@ static void 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_new = litex_soc_ctrl_remove,


-- 
Jean Delvare
SUSE L3 Support

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH RESEND] drivers/soc/litex: drop obsolete dependency on COMPILE_TEST
  2024-06-17  8:45 [PATCH RESEND] drivers/soc/litex: drop obsolete dependency on COMPILE_TEST Jean Delvare
@ 2024-06-17  8:52 ` Jean Delvare
  2024-06-17 10:54 ` Arnd Bergmann
  1 sibling, 0 replies; 4+ messages in thread
From: Jean Delvare @ 2024-06-17  8:52 UTC (permalink / raw)
  To: LKML
  Cc: Karol Gugala, Mateusz Holenko, Gabriel Somlo, Joel Stanley, arnd,
	Andrew Morton

On Mon, 17 Jun 2024 10:45:09 +0200, 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.
> 
> Signed-off-by: Jean Delvare <jdelvare@suse.de>
> Cc: Karol Gugala <kgugala@antmicro.com>
> Cc: Mateusz Holenko <mholenko@antmicro.com>
> Cc: Gabriel Somlo <gsomlo@gmail.com>
> Cc: Joel Stanley <joel@jms.id.au>

Sorry, I forgot to update this list with:

Reviewed-by: Gabriel Somlo <gsomlo@gmail.com>

(from https://lkml.org/lkml/2023/12/20/1160 )

-- 
Jean Delvare
SUSE L3 Support

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH RESEND] drivers/soc/litex: drop obsolete dependency on COMPILE_TEST
  2024-06-17  8:45 [PATCH RESEND] drivers/soc/litex: drop obsolete dependency on COMPILE_TEST Jean Delvare
  2024-06-17  8:52 ` Jean Delvare
@ 2024-06-17 10:54 ` Arnd Bergmann
  1 sibling, 0 replies; 4+ messages in thread
From: Arnd Bergmann @ 2024-06-17 10:54 UTC (permalink / raw)
  To: Jean Delvare, LKML
  Cc: Karol Gugala, Mateusz Holenko, Gabriel L. Somlo, Joel Stanley,
	Andrew Morton

On Mon, Jun 17, 2024, at 10:45, Jean Delvare wrote:
> Arnd, in December 2023, Gabriel suggested that maybe this could go
> through one of your trees, as apparently there's no dedicated path to
> upstream for litex patches? Thanks in advance.

Yes, if you send it to soc@kernel.org, I'll apply this through
patchwork.

    Arnd

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH RESEND] drivers/soc/litex: drop obsolete dependency on COMPILE_TEST
@ 2024-06-17 11:30 Jean Delvare
  0 siblings, 0 replies; 4+ messages in thread
From: Jean Delvare @ 2024-06-17 11:30 UTC (permalink / raw)
  To: soc, Arnd Bergmann
  Cc: Karol Gugala, Mateusz Holenko, Gabriel L. Somlo, Joel Stanley, LKML

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.

Signed-off-by: Jean Delvare <jdelvare@suse.de>
Reviewed-by: Gabriel Somlo <gsomlo@gmail.com>
Cc: Karol Gugala <kgugala@antmicro.com>
Cc: Mateusz Holenko <mholenko@antmicro.com>
Cc: Joel Stanley <joel@jms.id.au>
---
Resending to soc@kernel.org as requested by Arnd Bergmann, sorry for
the duplicate.

 drivers/soc/litex/Kconfig          |    2 +-
 drivers/soc/litex/litex_soc_ctrl.c |    4 +---
 2 files changed, 2 insertions(+), 4 deletions(-)

--- linux-6.8.orig/drivers/soc/litex/Kconfig
+++ linux-6.8/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.8.orig/drivers/soc/litex/litex_soc_ctrl.c
+++ linux-6.8/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)
 {
@@ -130,7 +128,7 @@ static void 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_new = litex_soc_ctrl_remove,


-- 
Jean Delvare
SUSE L3 Support

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2024-06-17 11:30 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-06-17  8:45 [PATCH RESEND] drivers/soc/litex: drop obsolete dependency on COMPILE_TEST Jean Delvare
2024-06-17  8:52 ` Jean Delvare
2024-06-17 10:54 ` Arnd Bergmann
2024-06-17 11:30 Jean Delvare

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®