* Re: [PATCH 33/34] drivers: remove incorrect of_match_ptr/ACPI_PTR annotations
2024-04-03 8:06 ` [PATCH 33/34] drivers: remove incorrect of_match_ptr/ACPI_PTR annotations Arnd Bergmann
@ 2024-04-03 9:13 ` Krzysztof Kozlowski
2024-04-03 9:30 ` Andy Shevchenko
` (5 subsequent siblings)
6 siblings, 0 replies; 15+ messages in thread
From: Krzysztof Kozlowski @ 2024-04-03 9:13 UTC (permalink / raw)
To: Arnd Bergmann, linux-kernel, Corey Minyard, Peter Huewe,
Jarkko Sakkinen, Vinod Koul, Moritz Fischer, Wu Hao, Xu Yilun,
Jiri Kosina, Benjamin Tissoires, Michael Hennerich, Peter Rosin,
Dmitry Torokhov, Iyappan Subramanian, Keyur Chudgar,
David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni,
Yisen Zhuang, Salil Mehta, Tony Lindgren, Liam Girdwood,
Mark Brown, Alexandre Belloni, Xiang Chen, James E.J. Bottomley,
Martin K. Petersen, Greg Kroah-Hartman, Russell King, Jiri Slaby,
Jacky Huang, Shan-Chun Hung
Cc: Arnd Bergmann, Jason Gunthorpe, Tom Rix, Uwe Kleine-König,
Randy Dunlap, Rob Herring, Linus Walleij, openipmi-developer,
linux-integrity, dmaengine, linux-fpga, linux-input, linux-i2c,
netdev, linux-omap, linux-rtc, linux-scsi, linux-staging,
linux-serial, linux-arm-kernel
On 03/04/2024 10:06, Arnd Bergmann wrote:
> From: Arnd Bergmann <arnd@arndb.de>
>
> When building with CONFIG_OF and/or CONFIG_ACPI disabled but W=1 extra
> warnings enabled, a lot of driver cause a warning about an unused
> ID table:
>
> drivers/char/tpm/tpm_ftpm_tee.c:356:34: error: unused variable 'of_ftpm_tee_ids' [-Werror,-Wunused-const-variable]
> drivers/dma/img-mdc-dma.c:863:34: error: unused variable 'mdc_dma_of_match' [-Werror,-Wunused-const-variable]
> drivers/fpga/versal-fpga.c:62:34: error: unused variable 'versal_fpga_of_match' [-Werror,-Wunused-const-variable]
> drivers/i2c/muxes/i2c-mux-ltc4306.c:200:34: error: unused variable 'ltc4306_of_match' [-Werror,-Wunused-const-variable]
> drivers/i2c/muxes/i2c-mux-reg.c:242:34: error: unused variable 'i2c_mux_reg_of_match' [-Werror,-Wunused-const-variable]
> drivers/memory/pl353-smc.c:62:34: error: unused variable 'pl353_smc_supported_children' [-Werror,-Wunused-const-variable]
> drivers/regulator/pbias-regulator.c:136:34: error: unused variable 'pbias_of_match' [-Werror,-Wunused-const-variable]
> drivers/regulator/twl-regulator.c:552:34: error: unused variable 'twl_of_match' [-Werror,-Wunused-const-variable]
> drivers/regulator/twl6030-regulator.c:645:34: error: unused variable 'twl_of_match' [-Werror,-Wunused-const-variable]
> drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:3635:36: error: unused variable 'sas_v2_acpi_match' [-Werror,-Wunused-const-variable]
> drivers/staging/pi433/pi433_if.c:1359:34: error: unused variable 'pi433_dt_ids' [-Werror,-Wunused-const-variable]
> drivers/tty/serial/amba-pl011.c:2945:34: error: unused variable 'sbsa_uart_of_match' [-Werror,-Wunused-const-variable]
>
> The fix is always to just remove the of_match_ptr() and ACPI_PTR() wrappers
> that remove the reference, rather than adding another #ifdef just for build
> testing for a configuration that doesn't matter in practice.
>
> I considered splitting up the large patch into per subsystem patches, but since
> it's really just the same thing everywhere it feels better to do it all at once.
>
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---
> drivers/char/ipmi/ipmb_dev_int.c | 2 +-
> drivers/char/tpm/tpm_ftpm_tee.c | 2 +-
> drivers/dma/img-mdc-dma.c | 2 +-
> drivers/fpga/versal-fpga.c | 2 +-
> drivers/hid/hid-google-hammer.c | 6 ++----
> drivers/i2c/muxes/i2c-mux-ltc4306.c | 2 +-
> drivers/i2c/muxes/i2c-mux-reg.c | 2 +-
> drivers/input/touchscreen/wdt87xx_i2c.c | 2 +-
> drivers/mux/adg792a.c | 2 +-
> drivers/net/ethernet/apm/xgene-v2/main.c | 2 +-
> drivers/net/ethernet/hisilicon/hns_mdio.c | 2 +-
> drivers/regulator/pbias-regulator.c | 2 +-
> drivers/regulator/twl-regulator.c | 2 +-
> drivers/regulator/twl6030-regulator.c | 2 +-
I covered regulators here the same way:
https://lore.kernel.org/all/20230310214553.275450-5-krzysztof.kozlowski@linaro.org/
but just like SPI and ASoC, Mark did not agree to pick them up.
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 33/34] drivers: remove incorrect of_match_ptr/ACPI_PTR annotations
2024-04-03 8:06 ` [PATCH 33/34] drivers: remove incorrect of_match_ptr/ACPI_PTR annotations Arnd Bergmann
2024-04-03 9:13 ` Krzysztof Kozlowski
@ 2024-04-03 9:30 ` Andy Shevchenko
2024-04-03 12:47 ` Corey Minyard
2024-04-03 12:47 ` Corey Minyard
` (4 subsequent siblings)
6 siblings, 1 reply; 15+ messages in thread
From: Andy Shevchenko @ 2024-04-03 9:30 UTC (permalink / raw)
To: Arnd Bergmann
Cc: linux-kernel, Corey Minyard, Peter Huewe, Jarkko Sakkinen,
Vinod Koul, Moritz Fischer, Wu Hao, Xu Yilun, Jiri Kosina,
Benjamin Tissoires, Michael Hennerich, Peter Rosin,
Dmitry Torokhov, Iyappan Subramanian, Keyur Chudgar,
David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni,
Yisen Zhuang, Salil Mehta, Tony Lindgren, Liam Girdwood,
Mark Brown, Alexandre Belloni, Xiang Chen, James E.J. Bottomley,
Martin K. Petersen, Greg Kroah-Hartman, Russell King, Jiri Slaby,
Jacky Huang, Shan-Chun Hung, Arnd Bergmann, Jason Gunthorpe,
Tom Rix, Uwe Kleine-König, Randy Dunlap, Rob Herring,
Linus Walleij, openipmi-developer, linux-integrity, dmaengine,
linux-fpga, linux-input, linux-i2c, netdev, linux-omap, linux-rtc,
linux-scsi, linux-staging, linux-serial, linux-arm-kernel
On Wed, Apr 03, 2024 at 10:06:51AM +0200, Arnd Bergmann wrote:
> From: Arnd Bergmann <arnd@arndb.de>
>
> When building with CONFIG_OF and/or CONFIG_ACPI disabled but W=1 extra
> warnings enabled, a lot of driver cause a warning about an unused
> ID table:
>
> drivers/char/tpm/tpm_ftpm_tee.c:356:34: error: unused variable 'of_ftpm_tee_ids' [-Werror,-Wunused-const-variable]
> drivers/dma/img-mdc-dma.c:863:34: error: unused variable 'mdc_dma_of_match' [-Werror,-Wunused-const-variable]
> drivers/fpga/versal-fpga.c:62:34: error: unused variable 'versal_fpga_of_match' [-Werror,-Wunused-const-variable]
> drivers/i2c/muxes/i2c-mux-ltc4306.c:200:34: error: unused variable 'ltc4306_of_match' [-Werror,-Wunused-const-variable]
> drivers/i2c/muxes/i2c-mux-reg.c:242:34: error: unused variable 'i2c_mux_reg_of_match' [-Werror,-Wunused-const-variable]
> drivers/memory/pl353-smc.c:62:34: error: unused variable 'pl353_smc_supported_children' [-Werror,-Wunused-const-variable]
> drivers/regulator/pbias-regulator.c:136:34: error: unused variable 'pbias_of_match' [-Werror,-Wunused-const-variable]
> drivers/regulator/twl-regulator.c:552:34: error: unused variable 'twl_of_match' [-Werror,-Wunused-const-variable]
> drivers/regulator/twl6030-regulator.c:645:34: error: unused variable 'twl_of_match' [-Werror,-Wunused-const-variable]
> drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:3635:36: error: unused variable 'sas_v2_acpi_match' [-Werror,-Wunused-const-variable]
> drivers/staging/pi433/pi433_if.c:1359:34: error: unused variable 'pi433_dt_ids' [-Werror,-Wunused-const-variable]
> drivers/tty/serial/amba-pl011.c:2945:34: error: unused variable 'sbsa_uart_of_match' [-Werror,-Wunused-const-variable]
>
> The fix is always to just remove the of_match_ptr() and ACPI_PTR() wrappers
> that remove the reference, rather than adding another #ifdef just for build
> testing for a configuration that doesn't matter in practice.
> I considered splitting up the large patch into per subsystem patches, but since
> it's really just the same thing everywhere it feels better to do it all at once.
Can we split to three groups:
- Dropping ACPI_PTR()
- Dropping of_match_ptr() (which I won't review in depth, for example)
- Dropping both
?
...
> --- a/drivers/char/ipmi/ipmb_dev_int.c
> +++ b/drivers/char/ipmi/ipmb_dev_int.c
> @@ -364,7 +364,7 @@ MODULE_DEVICE_TABLE(acpi, acpi_ipmb_id);
> static struct i2c_driver ipmb_driver = {
> .driver = {
> .name = "ipmb-dev",
> - .acpi_match_table = ACPI_PTR(acpi_ipmb_id),
> + .acpi_match_table = acpi_ipmb_id,
> },
> .probe = ipmb_probe,
> .remove = ipmb_remove,
acpi.h --> mod_devicetable.h.
...
> --- a/drivers/hid/hid-google-hammer.c
> +++ b/drivers/hid/hid-google-hammer.c
> @@ -275,21 +275,19 @@ static const struct acpi_device_id cbas_ec_acpi_ids[] = {
> };
> MODULE_DEVICE_TABLE(acpi, cbas_ec_acpi_ids);
>
> -#ifdef CONFIG_OF
> static const struct of_device_id cbas_ec_of_match[] = {
> { .compatible = "google,cros-cbas" },
> { },
> };
> MODULE_DEVICE_TABLE(of, cbas_ec_of_match);
> -#endif
>
> static struct platform_driver cbas_ec_driver = {
> .probe = cbas_ec_probe,
> .remove = cbas_ec_remove,
> .driver = {
> .name = "cbas_ec",
> - .acpi_match_table = ACPI_PTR(cbas_ec_acpi_ids),
> - .of_match_table = of_match_ptr(cbas_ec_of_match),
> + .acpi_match_table = cbas_ec_acpi_ids,
> + .of_match_table = cbas_ec_of_match,
> .pm = &cbas_ec_pm_ops,
> },
> };
Ditto, and likely of.h can be also dropped.
...
> --- a/drivers/input/touchscreen/wdt87xx_i2c.c
> +++ b/drivers/input/touchscreen/wdt87xx_i2c.c
> @@ -1166,7 +1166,7 @@ static struct i2c_driver wdt87xx_driver = {
> .name = WDT87XX_NAME,
> .dev_groups = wdt87xx_groups,
> .pm = pm_sleep_ptr(&wdt87xx_pm_ops),
> - .acpi_match_table = ACPI_PTR(wdt87xx_acpi_id),
> + .acpi_match_table = wdt87xx_acpi_id,
> },
> };
> module_i2c_driver(wdt87xx_driver);
Ditto.
...
> --- a/drivers/net/ethernet/apm/xgene-v2/main.c
> +++ b/drivers/net/ethernet/apm/xgene-v2/main.c
> @@ -731,7 +731,7 @@ MODULE_DEVICE_TABLE(acpi, xge_acpi_match);
> static struct platform_driver xge_driver = {
> .driver = {
> .name = "xgene-enet-v2",
> - .acpi_match_table = ACPI_PTR(xge_acpi_match),
> + .acpi_match_table = xge_acpi_match,
> },
> .probe = xge_probe,
> .remove_new = xge_remove,
Ditto. And remove forward declaration of the variable as well.
...
> --- a/drivers/rtc/rtc-fsl-ftm-alarm.c
> +++ b/drivers/rtc/rtc-fsl-ftm-alarm.c
> @@ -320,7 +320,7 @@ static struct platform_driver ftm_rtc_driver = {
> .driver = {
> .name = "ftm-alarm",
> .of_match_table = ftm_rtc_match,
> - .acpi_match_table = ACPI_PTR(ftm_imx_acpi_ids),
> + .acpi_match_table = ftm_imx_acpi_ids,
> },
> };
Ditto.
...
> .driver = {
> .name = "pi433",
> .owner = THIS_MODULE,
Oh-oh.
> - .of_match_table = of_match_ptr(pi433_dt_ids),
> + .of_match_table = pi433_dt_ids,
> },
...
> --- a/drivers/tty/serial/amba-pl011.c
> +++ b/drivers/tty/serial/amba-pl011.c
> @@ -2948,7 +2948,7 @@ static const struct of_device_id sbsa_uart_of_match[] = {
> };
> MODULE_DEVICE_TABLE(of, sbsa_uart_of_match);
>
> -static const struct acpi_device_id __maybe_unused sbsa_uart_acpi_match[] = {
> +static const struct acpi_device_id sbsa_uart_acpi_match[] = {
> { "ARMH0011", 0 },
> { "ARMHB000", 0 },
> {},
> @@ -2961,8 +2961,8 @@ static struct platform_driver arm_sbsa_uart_platform_driver = {
> .driver = {
> .name = "sbsa-uart",
> .pm = &pl011_dev_pm_ops,
> - .of_match_table = of_match_ptr(sbsa_uart_of_match),
> - .acpi_match_table = ACPI_PTR(sbsa_uart_acpi_match),
> + .of_match_table = sbsa_uart_of_match,
> + .acpi_match_table = sbsa_uart_acpi_match,
> .suppress_bind_attrs = IS_BUILTIN(CONFIG_SERIAL_AMBA_PL011),
> },
> };
Ditto.
...
As mentioned above, I haven't and won't look into of_match_ptr() cases, but you
got the idea.
For the above, if addressed as suggested,
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 33/34] drivers: remove incorrect of_match_ptr/ACPI_PTR annotations
2024-04-03 9:30 ` Andy Shevchenko
@ 2024-04-03 12:47 ` Corey Minyard
2024-04-03 13:23 ` Andy Shevchenko
0 siblings, 1 reply; 15+ messages in thread
From: Corey Minyard @ 2024-04-03 12:47 UTC (permalink / raw)
To: Andy Shevchenko
Cc: Arnd Bergmann, linux-kernel, Peter Huewe, Jarkko Sakkinen,
Vinod Koul, Moritz Fischer, Wu Hao, Xu Yilun, Jiri Kosina,
Benjamin Tissoires, Michael Hennerich, Peter Rosin,
Dmitry Torokhov, Iyappan Subramanian, Keyur Chudgar,
David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni,
Yisen Zhuang, Salil Mehta, Tony Lindgren, Liam Girdwood,
Mark Brown, Alexandre Belloni, Xiang Chen, James E.J. Bottomley,
Martin K. Petersen, Greg Kroah-Hartman, Russell King, Jiri Slaby,
Jacky Huang, Shan-Chun Hung, Arnd Bergmann, Jason Gunthorpe,
Tom Rix, Uwe Kleine-König, Randy Dunlap, Rob Herring,
Linus Walleij, openipmi-developer, linux-integrity, dmaengine,
linux-fpga, linux-input, linux-i2c, netdev, linux-omap, linux-rtc,
linux-scsi, linux-staging, linux-serial, linux-arm-kernel
On Wed, Apr 03, 2024 at 12:30:44PM +0300, Andy Shevchenko wrote:
> On Wed, Apr 03, 2024 at 10:06:51AM +0200, Arnd Bergmann wrote:
> > From: Arnd Bergmann <arnd@arndb.de>
> >
> > When building with CONFIG_OF and/or CONFIG_ACPI disabled but W=1 extra
> > warnings enabled, a lot of driver cause a warning about an unused
> > ID table:
> >
> > drivers/char/tpm/tpm_ftpm_tee.c:356:34: error: unused variable 'of_ftpm_tee_ids' [-Werror,-Wunused-const-variable]
> > drivers/dma/img-mdc-dma.c:863:34: error: unused variable 'mdc_dma_of_match' [-Werror,-Wunused-const-variable]
> > drivers/fpga/versal-fpga.c:62:34: error: unused variable 'versal_fpga_of_match' [-Werror,-Wunused-const-variable]
> > drivers/i2c/muxes/i2c-mux-ltc4306.c:200:34: error: unused variable 'ltc4306_of_match' [-Werror,-Wunused-const-variable]
> > drivers/i2c/muxes/i2c-mux-reg.c:242:34: error: unused variable 'i2c_mux_reg_of_match' [-Werror,-Wunused-const-variable]
> > drivers/memory/pl353-smc.c:62:34: error: unused variable 'pl353_smc_supported_children' [-Werror,-Wunused-const-variable]
> > drivers/regulator/pbias-regulator.c:136:34: error: unused variable 'pbias_of_match' [-Werror,-Wunused-const-variable]
> > drivers/regulator/twl-regulator.c:552:34: error: unused variable 'twl_of_match' [-Werror,-Wunused-const-variable]
> > drivers/regulator/twl6030-regulator.c:645:34: error: unused variable 'twl_of_match' [-Werror,-Wunused-const-variable]
> > drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:3635:36: error: unused variable 'sas_v2_acpi_match' [-Werror,-Wunused-const-variable]
> > drivers/staging/pi433/pi433_if.c:1359:34: error: unused variable 'pi433_dt_ids' [-Werror,-Wunused-const-variable]
> > drivers/tty/serial/amba-pl011.c:2945:34: error: unused variable 'sbsa_uart_of_match' [-Werror,-Wunused-const-variable]
> >
> > The fix is always to just remove the of_match_ptr() and ACPI_PTR() wrappers
> > that remove the reference, rather than adding another #ifdef just for build
> > testing for a configuration that doesn't matter in practice.
>
> > I considered splitting up the large patch into per subsystem patches, but since
> > it's really just the same thing everywhere it feels better to do it all at once.
>
> Can we split to three groups:
> - Dropping ACPI_PTR()
> - Dropping of_match_ptr() (which I won't review in depth, for example)
> - Dropping both
> ?
Why?
-corey
>
> ...
>
> > --- a/drivers/char/ipmi/ipmb_dev_int.c
> > +++ b/drivers/char/ipmi/ipmb_dev_int.c
> > @@ -364,7 +364,7 @@ MODULE_DEVICE_TABLE(acpi, acpi_ipmb_id);
> > static struct i2c_driver ipmb_driver = {
> > .driver = {
> > .name = "ipmb-dev",
> > - .acpi_match_table = ACPI_PTR(acpi_ipmb_id),
> > + .acpi_match_table = acpi_ipmb_id,
> > },
> > .probe = ipmb_probe,
> > .remove = ipmb_remove,
>
> acpi.h --> mod_devicetable.h.
>
> ...
>
> > --- a/drivers/hid/hid-google-hammer.c
> > +++ b/drivers/hid/hid-google-hammer.c
> > @@ -275,21 +275,19 @@ static const struct acpi_device_id cbas_ec_acpi_ids[] = {
> > };
> > MODULE_DEVICE_TABLE(acpi, cbas_ec_acpi_ids);
> >
> > -#ifdef CONFIG_OF
> > static const struct of_device_id cbas_ec_of_match[] = {
> > { .compatible = "google,cros-cbas" },
> > { },
> > };
> > MODULE_DEVICE_TABLE(of, cbas_ec_of_match);
> > -#endif
> >
> > static struct platform_driver cbas_ec_driver = {
> > .probe = cbas_ec_probe,
> > .remove = cbas_ec_remove,
> > .driver = {
> > .name = "cbas_ec",
> > - .acpi_match_table = ACPI_PTR(cbas_ec_acpi_ids),
> > - .of_match_table = of_match_ptr(cbas_ec_of_match),
> > + .acpi_match_table = cbas_ec_acpi_ids,
> > + .of_match_table = cbas_ec_of_match,
> > .pm = &cbas_ec_pm_ops,
> > },
> > };
>
> Ditto, and likely of.h can be also dropped.
>
> ...
>
> > --- a/drivers/input/touchscreen/wdt87xx_i2c.c
> > +++ b/drivers/input/touchscreen/wdt87xx_i2c.c
> > @@ -1166,7 +1166,7 @@ static struct i2c_driver wdt87xx_driver = {
> > .name = WDT87XX_NAME,
> > .dev_groups = wdt87xx_groups,
> > .pm = pm_sleep_ptr(&wdt87xx_pm_ops),
> > - .acpi_match_table = ACPI_PTR(wdt87xx_acpi_id),
> > + .acpi_match_table = wdt87xx_acpi_id,
> > },
> > };
> > module_i2c_driver(wdt87xx_driver);
>
> Ditto.
>
> ...
>
> > --- a/drivers/net/ethernet/apm/xgene-v2/main.c
> > +++ b/drivers/net/ethernet/apm/xgene-v2/main.c
> > @@ -731,7 +731,7 @@ MODULE_DEVICE_TABLE(acpi, xge_acpi_match);
> > static struct platform_driver xge_driver = {
> > .driver = {
> > .name = "xgene-enet-v2",
> > - .acpi_match_table = ACPI_PTR(xge_acpi_match),
> > + .acpi_match_table = xge_acpi_match,
> > },
> > .probe = xge_probe,
> > .remove_new = xge_remove,
>
> Ditto. And remove forward declaration of the variable as well.
>
> ...
>
> > --- a/drivers/rtc/rtc-fsl-ftm-alarm.c
> > +++ b/drivers/rtc/rtc-fsl-ftm-alarm.c
> > @@ -320,7 +320,7 @@ static struct platform_driver ftm_rtc_driver = {
> > .driver = {
> > .name = "ftm-alarm",
> > .of_match_table = ftm_rtc_match,
> > - .acpi_match_table = ACPI_PTR(ftm_imx_acpi_ids),
> > + .acpi_match_table = ftm_imx_acpi_ids,
> > },
> > };
>
> Ditto.
>
> ...
>
> > .driver = {
> > .name = "pi433",
> > .owner = THIS_MODULE,
>
> Oh-oh.
>
> > - .of_match_table = of_match_ptr(pi433_dt_ids),
> > + .of_match_table = pi433_dt_ids,
> > },
>
> ...
>
> > --- a/drivers/tty/serial/amba-pl011.c
> > +++ b/drivers/tty/serial/amba-pl011.c
> > @@ -2948,7 +2948,7 @@ static const struct of_device_id sbsa_uart_of_match[] = {
> > };
> > MODULE_DEVICE_TABLE(of, sbsa_uart_of_match);
> >
> > -static const struct acpi_device_id __maybe_unused sbsa_uart_acpi_match[] = {
> > +static const struct acpi_device_id sbsa_uart_acpi_match[] = {
> > { "ARMH0011", 0 },
> > { "ARMHB000", 0 },
> > {},
> > @@ -2961,8 +2961,8 @@ static struct platform_driver arm_sbsa_uart_platform_driver = {
> > .driver = {
> > .name = "sbsa-uart",
> > .pm = &pl011_dev_pm_ops,
> > - .of_match_table = of_match_ptr(sbsa_uart_of_match),
> > - .acpi_match_table = ACPI_PTR(sbsa_uart_acpi_match),
> > + .of_match_table = sbsa_uart_of_match,
> > + .acpi_match_table = sbsa_uart_acpi_match,
> > .suppress_bind_attrs = IS_BUILTIN(CONFIG_SERIAL_AMBA_PL011),
> > },
> > };
>
> Ditto.
>
> ...
>
> As mentioned above, I haven't and won't look into of_match_ptr() cases, but you
> got the idea.
>
> For the above, if addressed as suggested,
> Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
>
> --
> With Best Regards,
> Andy Shevchenko
>
>
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 33/34] drivers: remove incorrect of_match_ptr/ACPI_PTR annotations
2024-04-03 12:47 ` Corey Minyard
@ 2024-04-03 13:23 ` Andy Shevchenko
0 siblings, 0 replies; 15+ messages in thread
From: Andy Shevchenko @ 2024-04-03 13:23 UTC (permalink / raw)
To: Corey Minyard
Cc: Arnd Bergmann, linux-kernel, Peter Huewe, Jarkko Sakkinen,
Vinod Koul, Moritz Fischer, Wu Hao, Xu Yilun, Jiri Kosina,
Benjamin Tissoires, Michael Hennerich, Peter Rosin,
Dmitry Torokhov, Iyappan Subramanian, Keyur Chudgar,
David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni,
Yisen Zhuang, Salil Mehta, Tony Lindgren, Liam Girdwood,
Mark Brown, Alexandre Belloni, Xiang Chen, James E.J. Bottomley,
Martin K. Petersen, Greg Kroah-Hartman, Russell King, Jiri Slaby,
Jacky Huang, Shan-Chun Hung, Arnd Bergmann, Jason Gunthorpe,
Tom Rix, Uwe Kleine-König, Randy Dunlap, Rob Herring,
Linus Walleij, openipmi-developer, linux-integrity, dmaengine,
linux-fpga, linux-input, linux-i2c, netdev, linux-omap, linux-rtc,
linux-scsi, linux-staging, linux-serial, linux-arm-kernel
On Wed, Apr 03, 2024 at 07:47:49AM -0500, Corey Minyard wrote:
> On Wed, Apr 03, 2024 at 12:30:44PM +0300, Andy Shevchenko wrote:
> > On Wed, Apr 03, 2024 at 10:06:51AM +0200, Arnd Bergmann wrote:
> > > From: Arnd Bergmann <arnd@arndb.de>
...
> > > I considered splitting up the large patch into per subsystem patches, but since
> > > it's really just the same thing everywhere it feels better to do it all at once.
> >
> > Can we split to three groups:
> > - Dropping ACPI_PTR()
> > - Dropping of_match_ptr() (which I won't review in depth, for example)
> > - Dropping both
> > ?
>
> Why?
Easy to review ACPI parts independently on the rest. I think I explained that
in above. Besides that some patches might require additional work (don't remember
if it is the case for _this_ patch).
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 33/34] drivers: remove incorrect of_match_ptr/ACPI_PTR annotations
2024-04-03 8:06 ` [PATCH 33/34] drivers: remove incorrect of_match_ptr/ACPI_PTR annotations Arnd Bergmann
2024-04-03 9:13 ` Krzysztof Kozlowski
2024-04-03 9:30 ` Andy Shevchenko
@ 2024-04-03 12:47 ` Corey Minyard
2024-04-03 16:09 ` Jarkko Sakkinen
` (3 subsequent siblings)
6 siblings, 0 replies; 15+ messages in thread
From: Corey Minyard @ 2024-04-03 12:47 UTC (permalink / raw)
To: Arnd Bergmann
Cc: linux-kernel, Peter Huewe, Jarkko Sakkinen, Vinod Koul,
Moritz Fischer, Wu Hao, Xu Yilun, Jiri Kosina, Benjamin Tissoires,
Michael Hennerich, Peter Rosin, Dmitry Torokhov,
Iyappan Subramanian, Keyur Chudgar, David S. Miller, Eric Dumazet,
Jakub Kicinski, Paolo Abeni, Yisen Zhuang, Salil Mehta,
Tony Lindgren, Liam Girdwood, Mark Brown, Alexandre Belloni,
Xiang Chen, James E.J. Bottomley, Martin K. Petersen,
Greg Kroah-Hartman, Russell King, Jiri Slaby, Jacky Huang,
Shan-Chun Hung, Arnd Bergmann, Jason Gunthorpe, Tom Rix,
Uwe Kleine-König, Randy Dunlap, Rob Herring, Linus Walleij,
openipmi-developer, linux-integrity, dmaengine, linux-fpga,
linux-input, linux-i2c, netdev, linux-omap, linux-rtc, linux-scsi,
linux-staging, linux-serial, linux-arm-kernel
On Wed, Apr 03, 2024 at 10:06:51AM +0200, Arnd Bergmann wrote:
> From: Arnd Bergmann <arnd@arndb.de>
>
> When building with CONFIG_OF and/or CONFIG_ACPI disabled but W=1 extra
> warnings enabled, a lot of driver cause a warning about an unused
> ID table:
>
> drivers/char/tpm/tpm_ftpm_tee.c:356:34: error: unused variable 'of_ftpm_tee_ids' [-Werror,-Wunused-const-variable]
> drivers/dma/img-mdc-dma.c:863:34: error: unused variable 'mdc_dma_of_match' [-Werror,-Wunused-const-variable]
> drivers/fpga/versal-fpga.c:62:34: error: unused variable 'versal_fpga_of_match' [-Werror,-Wunused-const-variable]
> drivers/i2c/muxes/i2c-mux-ltc4306.c:200:34: error: unused variable 'ltc4306_of_match' [-Werror,-Wunused-const-variable]
> drivers/i2c/muxes/i2c-mux-reg.c:242:34: error: unused variable 'i2c_mux_reg_of_match' [-Werror,-Wunused-const-variable]
> drivers/memory/pl353-smc.c:62:34: error: unused variable 'pl353_smc_supported_children' [-Werror,-Wunused-const-variable]
> drivers/regulator/pbias-regulator.c:136:34: error: unused variable 'pbias_of_match' [-Werror,-Wunused-const-variable]
> drivers/regulator/twl-regulator.c:552:34: error: unused variable 'twl_of_match' [-Werror,-Wunused-const-variable]
> drivers/regulator/twl6030-regulator.c:645:34: error: unused variable 'twl_of_match' [-Werror,-Wunused-const-variable]
> drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:3635:36: error: unused variable 'sas_v2_acpi_match' [-Werror,-Wunused-const-variable]
> drivers/staging/pi433/pi433_if.c:1359:34: error: unused variable 'pi433_dt_ids' [-Werror,-Wunused-const-variable]
> drivers/tty/serial/amba-pl011.c:2945:34: error: unused variable 'sbsa_uart_of_match' [-Werror,-Wunused-const-variable]
>
> The fix is always to just remove the of_match_ptr() and ACPI_PTR() wrappers
> that remove the reference, rather than adding another #ifdef just for build
> testing for a configuration that doesn't matter in practice.
>
> I considered splitting up the large patch into per subsystem patches, but since
> it's really just the same thing everywhere it feels better to do it all at once.
>
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
For the IPMI part:
Acked-by: Corey Minyard <minyard@acm.org>
> ---
> drivers/char/ipmi/ipmb_dev_int.c | 2 +-
> drivers/char/tpm/tpm_ftpm_tee.c | 2 +-
> drivers/dma/img-mdc-dma.c | 2 +-
> drivers/fpga/versal-fpga.c | 2 +-
> drivers/hid/hid-google-hammer.c | 6 ++----
> drivers/i2c/muxes/i2c-mux-ltc4306.c | 2 +-
> drivers/i2c/muxes/i2c-mux-reg.c | 2 +-
> drivers/input/touchscreen/wdt87xx_i2c.c | 2 +-
> drivers/mux/adg792a.c | 2 +-
> drivers/net/ethernet/apm/xgene-v2/main.c | 2 +-
> drivers/net/ethernet/hisilicon/hns_mdio.c | 2 +-
> drivers/regulator/pbias-regulator.c | 2 +-
> drivers/regulator/twl-regulator.c | 2 +-
> drivers/regulator/twl6030-regulator.c | 2 +-
> drivers/rtc/rtc-fsl-ftm-alarm.c | 2 +-
> drivers/scsi/hisi_sas/hisi_sas_v1_hw.c | 2 +-
> drivers/scsi/hisi_sas/hisi_sas_v2_hw.c | 2 +-
> drivers/staging/pi433/pi433_if.c | 2 +-
> drivers/tty/serial/amba-pl011.c | 6 +++---
> drivers/tty/serial/ma35d1_serial.c | 2 +-
> 20 files changed, 23 insertions(+), 25 deletions(-)
>
> diff --git a/drivers/char/ipmi/ipmb_dev_int.c b/drivers/char/ipmi/ipmb_dev_int.c
> index 49100845fcb7..5e7bfc7c26e2 100644
> --- a/drivers/char/ipmi/ipmb_dev_int.c
> +++ b/drivers/char/ipmi/ipmb_dev_int.c
> @@ -364,7 +364,7 @@ MODULE_DEVICE_TABLE(acpi, acpi_ipmb_id);
> static struct i2c_driver ipmb_driver = {
> .driver = {
> .name = "ipmb-dev",
> - .acpi_match_table = ACPI_PTR(acpi_ipmb_id),
> + .acpi_match_table = acpi_ipmb_id,
> },
> .probe = ipmb_probe,
> .remove = ipmb_remove,
> diff --git a/drivers/char/tpm/tpm_ftpm_tee.c b/drivers/char/tpm/tpm_ftpm_tee.c
> index 2ea4882251cf..0c453f3f928d 100644
> --- a/drivers/char/tpm/tpm_ftpm_tee.c
> +++ b/drivers/char/tpm/tpm_ftpm_tee.c
> @@ -362,7 +362,7 @@ MODULE_DEVICE_TABLE(of, of_ftpm_tee_ids);
> static struct platform_driver ftpm_tee_plat_driver = {
> .driver = {
> .name = "ftpm-tee",
> - .of_match_table = of_match_ptr(of_ftpm_tee_ids),
> + .of_match_table = of_ftpm_tee_ids,
> },
> .shutdown = ftpm_plat_tee_shutdown,
> .probe = ftpm_plat_tee_probe,
> diff --git a/drivers/dma/img-mdc-dma.c b/drivers/dma/img-mdc-dma.c
> index 0532dd2640dc..6931c8a65415 100644
> --- a/drivers/dma/img-mdc-dma.c
> +++ b/drivers/dma/img-mdc-dma.c
> @@ -1073,7 +1073,7 @@ static struct platform_driver mdc_dma_driver = {
> .driver = {
> .name = "img-mdc-dma",
> .pm = &img_mdc_pm_ops,
> - .of_match_table = of_match_ptr(mdc_dma_of_match),
> + .of_match_table = mdc_dma_of_match,
> },
> .probe = mdc_dma_probe,
> .remove_new = mdc_dma_remove,
> diff --git a/drivers/fpga/versal-fpga.c b/drivers/fpga/versal-fpga.c
> index 3710e8f01be2..e6189106c468 100644
> --- a/drivers/fpga/versal-fpga.c
> +++ b/drivers/fpga/versal-fpga.c
> @@ -69,7 +69,7 @@ static struct platform_driver versal_fpga_driver = {
> .probe = versal_fpga_probe,
> .driver = {
> .name = "versal_fpga_manager",
> - .of_match_table = of_match_ptr(versal_fpga_of_match),
> + .of_match_table = versal_fpga_of_match,
> },
> };
> module_platform_driver(versal_fpga_driver);
> diff --git a/drivers/hid/hid-google-hammer.c b/drivers/hid/hid-google-hammer.c
> index c6bdb9c4ef3e..886cc5748b7d 100644
> --- a/drivers/hid/hid-google-hammer.c
> +++ b/drivers/hid/hid-google-hammer.c
> @@ -275,21 +275,19 @@ static const struct acpi_device_id cbas_ec_acpi_ids[] = {
> };
> MODULE_DEVICE_TABLE(acpi, cbas_ec_acpi_ids);
>
> -#ifdef CONFIG_OF
> static const struct of_device_id cbas_ec_of_match[] = {
> { .compatible = "google,cros-cbas" },
> { },
> };
> MODULE_DEVICE_TABLE(of, cbas_ec_of_match);
> -#endif
>
> static struct platform_driver cbas_ec_driver = {
> .probe = cbas_ec_probe,
> .remove = cbas_ec_remove,
> .driver = {
> .name = "cbas_ec",
> - .acpi_match_table = ACPI_PTR(cbas_ec_acpi_ids),
> - .of_match_table = of_match_ptr(cbas_ec_of_match),
> + .acpi_match_table = cbas_ec_acpi_ids,
> + .of_match_table = cbas_ec_of_match,
> .pm = &cbas_ec_pm_ops,
> },
> };
> diff --git a/drivers/i2c/muxes/i2c-mux-ltc4306.c b/drivers/i2c/muxes/i2c-mux-ltc4306.c
> index 23766d853e76..c6d70788161a 100644
> --- a/drivers/i2c/muxes/i2c-mux-ltc4306.c
> +++ b/drivers/i2c/muxes/i2c-mux-ltc4306.c
> @@ -303,7 +303,7 @@ static void ltc4306_remove(struct i2c_client *client)
> static struct i2c_driver ltc4306_driver = {
> .driver = {
> .name = "ltc4306",
> - .of_match_table = of_match_ptr(ltc4306_of_match),
> + .of_match_table = ltc4306_of_match,
> },
> .probe = ltc4306_probe,
> .remove = ltc4306_remove,
> diff --git a/drivers/i2c/muxes/i2c-mux-reg.c b/drivers/i2c/muxes/i2c-mux-reg.c
> index 8489971babd3..0f1b39964743 100644
> --- a/drivers/i2c/muxes/i2c-mux-reg.c
> +++ b/drivers/i2c/muxes/i2c-mux-reg.c
> @@ -250,7 +250,7 @@ static struct platform_driver i2c_mux_reg_driver = {
> .remove_new = i2c_mux_reg_remove,
> .driver = {
> .name = "i2c-mux-reg",
> - .of_match_table = of_match_ptr(i2c_mux_reg_of_match),
> + .of_match_table = i2c_mux_reg_of_match,
> },
> };
>
> diff --git a/drivers/input/touchscreen/wdt87xx_i2c.c b/drivers/input/touchscreen/wdt87xx_i2c.c
> index 32c7be54434c..9f3a4092e47c 100644
> --- a/drivers/input/touchscreen/wdt87xx_i2c.c
> +++ b/drivers/input/touchscreen/wdt87xx_i2c.c
> @@ -1166,7 +1166,7 @@ static struct i2c_driver wdt87xx_driver = {
> .name = WDT87XX_NAME,
> .dev_groups = wdt87xx_groups,
> .pm = pm_sleep_ptr(&wdt87xx_pm_ops),
> - .acpi_match_table = ACPI_PTR(wdt87xx_acpi_id),
> + .acpi_match_table = wdt87xx_acpi_id,
> },
> };
> module_i2c_driver(wdt87xx_driver);
> diff --git a/drivers/mux/adg792a.c b/drivers/mux/adg792a.c
> index 4da5aecb9fc6..a5afe29e3cf1 100644
> --- a/drivers/mux/adg792a.c
> +++ b/drivers/mux/adg792a.c
> @@ -141,7 +141,7 @@ MODULE_DEVICE_TABLE(of, adg792a_of_match);
> static struct i2c_driver adg792a_driver = {
> .driver = {
> .name = "adg792a",
> - .of_match_table = of_match_ptr(adg792a_of_match),
> + .of_match_table = adg792a_of_match,
> },
> .probe = adg792a_probe,
> .id_table = adg792a_id,
> diff --git a/drivers/net/ethernet/apm/xgene-v2/main.c b/drivers/net/ethernet/apm/xgene-v2/main.c
> index 9e90c2381491..64370057ba3d 100644
> --- a/drivers/net/ethernet/apm/xgene-v2/main.c
> +++ b/drivers/net/ethernet/apm/xgene-v2/main.c
> @@ -731,7 +731,7 @@ MODULE_DEVICE_TABLE(acpi, xge_acpi_match);
> static struct platform_driver xge_driver = {
> .driver = {
> .name = "xgene-enet-v2",
> - .acpi_match_table = ACPI_PTR(xge_acpi_match),
> + .acpi_match_table = xge_acpi_match,
> },
> .probe = xge_probe,
> .remove_new = xge_remove,
> diff --git a/drivers/net/ethernet/hisilicon/hns_mdio.c b/drivers/net/ethernet/hisilicon/hns_mdio.c
> index ed73707176c1..f8caf59bd759 100644
> --- a/drivers/net/ethernet/hisilicon/hns_mdio.c
> +++ b/drivers/net/ethernet/hisilicon/hns_mdio.c
> @@ -639,7 +639,7 @@ static struct platform_driver hns_mdio_driver = {
> .driver = {
> .name = MDIO_DRV_NAME,
> .of_match_table = hns_mdio_match,
> - .acpi_match_table = ACPI_PTR(hns_mdio_acpi_match),
> + .acpi_match_table = hns_mdio_acpi_match,
> },
> };
>
> diff --git a/drivers/regulator/pbias-regulator.c b/drivers/regulator/pbias-regulator.c
> index cd5a0d7e4455..2eeb99e7b850 100644
> --- a/drivers/regulator/pbias-regulator.c
> +++ b/drivers/regulator/pbias-regulator.c
> @@ -231,7 +231,7 @@ static struct platform_driver pbias_regulator_driver = {
> .driver = {
> .name = "pbias-regulator",
> .probe_type = PROBE_PREFER_ASYNCHRONOUS,
> - .of_match_table = of_match_ptr(pbias_of_match),
> + .of_match_table = pbias_of_match,
> },
> };
>
> diff --git a/drivers/regulator/twl-regulator.c b/drivers/regulator/twl-regulator.c
> index 5bacfcebf59a..4ed91e88e1eb 100644
> --- a/drivers/regulator/twl-regulator.c
> +++ b/drivers/regulator/twl-regulator.c
> @@ -656,7 +656,7 @@ static struct platform_driver twlreg_driver = {
> .driver = {
> .name = "twl4030_reg",
> .probe_type = PROBE_PREFER_ASYNCHRONOUS,
> - .of_match_table = of_match_ptr(twl_of_match),
> + .of_match_table = twl_of_match,
> },
> };
>
> diff --git a/drivers/regulator/twl6030-regulator.c b/drivers/regulator/twl6030-regulator.c
> index 6eed0f6e0adb..8a84048a66d7 100644
> --- a/drivers/regulator/twl6030-regulator.c
> +++ b/drivers/regulator/twl6030-regulator.c
> @@ -765,7 +765,7 @@ static struct platform_driver twlreg_driver = {
> .driver = {
> .name = "twl6030_reg",
> .probe_type = PROBE_PREFER_ASYNCHRONOUS,
> - .of_match_table = of_match_ptr(twl_of_match),
> + .of_match_table = twl_of_match,
> },
> };
>
> diff --git a/drivers/rtc/rtc-fsl-ftm-alarm.c b/drivers/rtc/rtc-fsl-ftm-alarm.c
> index a72c4ad0cec6..12da7d36e520 100644
> --- a/drivers/rtc/rtc-fsl-ftm-alarm.c
> +++ b/drivers/rtc/rtc-fsl-ftm-alarm.c
> @@ -320,7 +320,7 @@ static struct platform_driver ftm_rtc_driver = {
> .driver = {
> .name = "ftm-alarm",
> .of_match_table = ftm_rtc_match,
> - .acpi_match_table = ACPI_PTR(ftm_imx_acpi_ids),
> + .acpi_match_table = ftm_imx_acpi_ids,
> },
> };
>
> diff --git a/drivers/scsi/hisi_sas/hisi_sas_v1_hw.c b/drivers/scsi/hisi_sas/hisi_sas_v1_hw.c
> index 161feae3acab..c6f313c9605b 100644
> --- a/drivers/scsi/hisi_sas/hisi_sas_v1_hw.c
> +++ b/drivers/scsi/hisi_sas/hisi_sas_v1_hw.c
> @@ -1788,7 +1788,7 @@ static struct platform_driver hisi_sas_v1_driver = {
> .driver = {
> .name = DRV_NAME,
> .of_match_table = sas_v1_of_match,
> - .acpi_match_table = ACPI_PTR(sas_v1_acpi_match),
> + .acpi_match_table = sas_v1_acpi_match,
> },
> };
>
> diff --git a/drivers/scsi/hisi_sas/hisi_sas_v2_hw.c b/drivers/scsi/hisi_sas/hisi_sas_v2_hw.c
> index d89e97e8f5c2..ce3b5e1680f5 100644
> --- a/drivers/scsi/hisi_sas/hisi_sas_v2_hw.c
> +++ b/drivers/scsi/hisi_sas/hisi_sas_v2_hw.c
> @@ -3635,7 +3635,7 @@ static struct platform_driver hisi_sas_v2_driver = {
> .driver = {
> .name = DRV_NAME,
> .of_match_table = sas_v2_of_match,
> - .acpi_match_table = ACPI_PTR(sas_v2_acpi_match),
> + .acpi_match_table = sas_v2_acpi_match,
> },
> };
>
> diff --git a/drivers/staging/pi433/pi433_if.c b/drivers/staging/pi433/pi433_if.c
> index 81de98c0245a..30fd6da3e8d8 100644
> --- a/drivers/staging/pi433/pi433_if.c
> +++ b/drivers/staging/pi433/pi433_if.c
> @@ -1367,7 +1367,7 @@ static struct spi_driver pi433_spi_driver = {
> .driver = {
> .name = "pi433",
> .owner = THIS_MODULE,
> - .of_match_table = of_match_ptr(pi433_dt_ids),
> + .of_match_table = pi433_dt_ids,
> },
> .probe = pi433_probe,
> .remove = pi433_remove,
> diff --git a/drivers/tty/serial/amba-pl011.c b/drivers/tty/serial/amba-pl011.c
> index 2fa3fb30dc6c..dd1d1a2cc5f5 100644
> --- a/drivers/tty/serial/amba-pl011.c
> +++ b/drivers/tty/serial/amba-pl011.c
> @@ -2948,7 +2948,7 @@ static const struct of_device_id sbsa_uart_of_match[] = {
> };
> MODULE_DEVICE_TABLE(of, sbsa_uart_of_match);
>
> -static const struct acpi_device_id __maybe_unused sbsa_uart_acpi_match[] = {
> +static const struct acpi_device_id sbsa_uart_acpi_match[] = {
> { "ARMH0011", 0 },
> { "ARMHB000", 0 },
> {},
> @@ -2961,8 +2961,8 @@ static struct platform_driver arm_sbsa_uart_platform_driver = {
> .driver = {
> .name = "sbsa-uart",
> .pm = &pl011_dev_pm_ops,
> - .of_match_table = of_match_ptr(sbsa_uart_of_match),
> - .acpi_match_table = ACPI_PTR(sbsa_uart_acpi_match),
> + .of_match_table = sbsa_uart_of_match,
> + .acpi_match_table = sbsa_uart_acpi_match,
> .suppress_bind_attrs = IS_BUILTIN(CONFIG_SERIAL_AMBA_PL011),
> },
> };
> diff --git a/drivers/tty/serial/ma35d1_serial.c b/drivers/tty/serial/ma35d1_serial.c
> index 19f0a305cc43..e326d0fb06b2 100644
> --- a/drivers/tty/serial/ma35d1_serial.c
> +++ b/drivers/tty/serial/ma35d1_serial.c
> @@ -798,7 +798,7 @@ static struct platform_driver ma35d1serial_driver = {
> .resume = ma35d1serial_resume,
> .driver = {
> .name = "ma35d1-uart",
> - .of_match_table = of_match_ptr(ma35d1_serial_of_match),
> + .of_match_table = ma35d1_serial_of_match,
> },
> };
>
> --
> 2.39.2
>
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 33/34] drivers: remove incorrect of_match_ptr/ACPI_PTR annotations
2024-04-03 8:06 ` [PATCH 33/34] drivers: remove incorrect of_match_ptr/ACPI_PTR annotations Arnd Bergmann
` (2 preceding siblings ...)
2024-04-03 12:47 ` Corey Minyard
@ 2024-04-03 16:09 ` Jarkko Sakkinen
2024-04-09 13:48 ` Greg Kroah-Hartman
` (2 subsequent siblings)
6 siblings, 0 replies; 15+ messages in thread
From: Jarkko Sakkinen @ 2024-04-03 16:09 UTC (permalink / raw)
To: Arnd Bergmann, linux-kernel, Corey Minyard, Peter Huewe,
Vinod Koul, Moritz Fischer, Wu Hao, Xu Yilun, Jiri Kosina,
Benjamin Tissoires, Michael Hennerich, Peter Rosin,
Dmitry Torokhov, Iyappan Subramanian, Keyur Chudgar,
David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni,
Yisen Zhuang, Salil Mehta, Tony Lindgren, Liam Girdwood,
Mark Brown, Alexandre Belloni, Xiang Chen, James E.J. Bottomley,
Martin K. Petersen, Greg Kroah-Hartman, Russell King, Jiri Slaby,
Jacky Huang, Shan-Chun Hung
Cc: Arnd Bergmann, Jason Gunthorpe, Tom Rix, Uwe Kleine-König,
Randy Dunlap, Rob Herring, Linus Walleij, openipmi-developer,
linux-integrity, dmaengine, linux-fpga, linux-input, linux-i2c,
netdev, linux-omap, linux-rtc, linux-scsi, linux-staging,
linux-serial, linux-arm-kernel
On Wed Apr 3, 2024 at 11:06 AM EEST, Arnd Bergmann wrote:
> diff --git a/drivers/char/tpm/tpm_ftpm_tee.c b/drivers/char/tpm/tpm_ftpm_tee.c
> index 2ea4882251cf..0c453f3f928d 100644
> --- a/drivers/char/tpm/tpm_ftpm_tee.c
> +++ b/drivers/char/tpm/tpm_ftpm_tee.c
> @@ -362,7 +362,7 @@ MODULE_DEVICE_TABLE(of, of_ftpm_tee_ids);
> static struct platform_driver ftpm_tee_plat_driver = {
> .driver = {
> .name = "ftpm-tee",
> - .of_match_table = of_match_ptr(of_ftpm_tee_ids),
> + .of_match_table = of_ftpm_tee_ids,
> },
> .shutdown = ftpm_plat_tee_shutdown,
> .probe = ftpm_plat_tee_probe,
For this portion:
Reviewed-by: Jarkko Sakkinen <jarkko@kernel.org>
[can be included to possible new revisions if it stays same]
BR, Jarkko
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 33/34] drivers: remove incorrect of_match_ptr/ACPI_PTR annotations
2024-04-03 8:06 ` [PATCH 33/34] drivers: remove incorrect of_match_ptr/ACPI_PTR annotations Arnd Bergmann
` (3 preceding siblings ...)
2024-04-03 16:09 ` Jarkko Sakkinen
@ 2024-04-09 13:48 ` Greg Kroah-Hartman
2024-04-23 7:33 ` Xu Yilun
2024-04-23 9:52 ` Peter Rosin
6 siblings, 0 replies; 15+ messages in thread
From: Greg Kroah-Hartman @ 2024-04-09 13:48 UTC (permalink / raw)
To: Arnd Bergmann
Cc: linux-kernel, Corey Minyard, Peter Huewe, Jarkko Sakkinen,
Vinod Koul, Moritz Fischer, Wu Hao, Xu Yilun, Jiri Kosina,
Benjamin Tissoires, Michael Hennerich, Peter Rosin,
Dmitry Torokhov, Iyappan Subramanian, Keyur Chudgar,
David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni,
Yisen Zhuang, Salil Mehta, Tony Lindgren, Liam Girdwood,
Mark Brown, Alexandre Belloni, Xiang Chen, James E.J. Bottomley,
Martin K. Petersen, Russell King, Jiri Slaby, Jacky Huang,
Shan-Chun Hung, Arnd Bergmann, Jason Gunthorpe, Tom Rix,
Uwe Kleine-König, Randy Dunlap, Rob Herring, Linus Walleij,
openipmi-developer, linux-integrity, dmaengine, linux-fpga,
linux-input, linux-i2c, netdev, linux-omap, linux-rtc, linux-scsi,
linux-staging, linux-serial, linux-arm-kernel
On Wed, Apr 03, 2024 at 10:06:51AM +0200, Arnd Bergmann wrote:
> From: Arnd Bergmann <arnd@arndb.de>
>
> When building with CONFIG_OF and/or CONFIG_ACPI disabled but W=1 extra
> warnings enabled, a lot of driver cause a warning about an unused
> ID table:
>
> drivers/char/tpm/tpm_ftpm_tee.c:356:34: error: unused variable 'of_ftpm_tee_ids' [-Werror,-Wunused-const-variable]
> drivers/dma/img-mdc-dma.c:863:34: error: unused variable 'mdc_dma_of_match' [-Werror,-Wunused-const-variable]
> drivers/fpga/versal-fpga.c:62:34: error: unused variable 'versal_fpga_of_match' [-Werror,-Wunused-const-variable]
> drivers/i2c/muxes/i2c-mux-ltc4306.c:200:34: error: unused variable 'ltc4306_of_match' [-Werror,-Wunused-const-variable]
> drivers/i2c/muxes/i2c-mux-reg.c:242:34: error: unused variable 'i2c_mux_reg_of_match' [-Werror,-Wunused-const-variable]
> drivers/memory/pl353-smc.c:62:34: error: unused variable 'pl353_smc_supported_children' [-Werror,-Wunused-const-variable]
> drivers/regulator/pbias-regulator.c:136:34: error: unused variable 'pbias_of_match' [-Werror,-Wunused-const-variable]
> drivers/regulator/twl-regulator.c:552:34: error: unused variable 'twl_of_match' [-Werror,-Wunused-const-variable]
> drivers/regulator/twl6030-regulator.c:645:34: error: unused variable 'twl_of_match' [-Werror,-Wunused-const-variable]
> drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:3635:36: error: unused variable 'sas_v2_acpi_match' [-Werror,-Wunused-const-variable]
> drivers/staging/pi433/pi433_if.c:1359:34: error: unused variable 'pi433_dt_ids' [-Werror,-Wunused-const-variable]
> drivers/tty/serial/amba-pl011.c:2945:34: error: unused variable 'sbsa_uart_of_match' [-Werror,-Wunused-const-variable]
>
> The fix is always to just remove the of_match_ptr() and ACPI_PTR() wrappers
> that remove the reference, rather than adding another #ifdef just for build
> testing for a configuration that doesn't matter in practice.
>
> I considered splitting up the large patch into per subsystem patches, but since
> it's really just the same thing everywhere it feels better to do it all at once.
>
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 33/34] drivers: remove incorrect of_match_ptr/ACPI_PTR annotations
2024-04-03 8:06 ` [PATCH 33/34] drivers: remove incorrect of_match_ptr/ACPI_PTR annotations Arnd Bergmann
` (4 preceding siblings ...)
2024-04-09 13:48 ` Greg Kroah-Hartman
@ 2024-04-23 7:33 ` Xu Yilun
2024-04-23 9:52 ` Peter Rosin
6 siblings, 0 replies; 15+ messages in thread
From: Xu Yilun @ 2024-04-23 7:33 UTC (permalink / raw)
To: Arnd Bergmann
Cc: linux-kernel, Corey Minyard, Peter Huewe, Jarkko Sakkinen,
Vinod Koul, Moritz Fischer, Wu Hao, Xu Yilun, Jiri Kosina,
Benjamin Tissoires, Michael Hennerich, Peter Rosin,
Dmitry Torokhov, Iyappan Subramanian, Keyur Chudgar,
David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni,
Yisen Zhuang, Salil Mehta, Tony Lindgren, Liam Girdwood,
Mark Brown, Alexandre Belloni, Xiang Chen, James E.J. Bottomley,
Martin K. Petersen, Greg Kroah-Hartman, Russell King, Jiri Slaby,
Jacky Huang, Shan-Chun Hung, Arnd Bergmann, Jason Gunthorpe,
Tom Rix, Uwe Kleine-König, Randy Dunlap, Rob Herring,
Linus Walleij, openipmi-developer, linux-integrity, dmaengine,
linux-fpga, linux-input, linux-i2c, netdev, linux-omap, linux-rtc,
linux-scsi, linux-staging, linux-serial, linux-arm-kernel
> diff --git a/drivers/fpga/versal-fpga.c b/drivers/fpga/versal-fpga.c
> index 3710e8f01be2..e6189106c468 100644
> --- a/drivers/fpga/versal-fpga.c
> +++ b/drivers/fpga/versal-fpga.c
> @@ -69,7 +69,7 @@ static struct platform_driver versal_fpga_driver = {
> .probe = versal_fpga_probe,
> .driver = {
> .name = "versal_fpga_manager",
> - .of_match_table = of_match_ptr(versal_fpga_of_match),
> + .of_match_table = versal_fpga_of_match,
For this part
Acked-by: Xu Yilun <yilun.xu@intel.com>
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 33/34] drivers: remove incorrect of_match_ptr/ACPI_PTR annotations
2024-04-03 8:06 ` [PATCH 33/34] drivers: remove incorrect of_match_ptr/ACPI_PTR annotations Arnd Bergmann
` (5 preceding siblings ...)
2024-04-23 7:33 ` Xu Yilun
@ 2024-04-23 9:52 ` Peter Rosin
6 siblings, 0 replies; 15+ messages in thread
From: Peter Rosin @ 2024-04-23 9:52 UTC (permalink / raw)
To: Arnd Bergmann, linux-kernel, Corey Minyard, Peter Huewe,
Jarkko Sakkinen, Vinod Koul, Moritz Fischer, Wu Hao, Xu Yilun,
Jiri Kosina, Benjamin Tissoires, Michael Hennerich,
Dmitry Torokhov, Iyappan Subramanian, Keyur Chudgar,
David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni,
Yisen Zhuang, Salil Mehta, Tony Lindgren, Liam Girdwood,
Mark Brown, Alexandre Belloni, Xiang Chen, James E.J. Bottomley,
Martin K. Petersen, Greg Kroah-Hartman, Russell King, Jiri Slaby,
Jacky Huang, Shan-Chun Hung
Cc: Arnd Bergmann, Jason Gunthorpe, Tom Rix, Uwe Kleine-König,
Randy Dunlap, Rob Herring, Linus Walleij, openipmi-developer,
linux-integrity, dmaengine, linux-fpga, linux-input, linux-i2c,
netdev, linux-omap, linux-rtc, linux-scsi, linux-staging,
linux-serial, linux-arm-kernel
Hi!
2024-04-03 at 10:06, Arnd Bergmann wrote:
> From: Arnd Bergmann <arnd@arndb.de>
>
> When building with CONFIG_OF and/or CONFIG_ACPI disabled but W=1 extra
> warnings enabled, a lot of driver cause a warning about an unused
> ID table:
>
> drivers/char/tpm/tpm_ftpm_tee.c:356:34: error: unused variable 'of_ftpm_tee_ids' [-Werror,-Wunused-const-variable]
> drivers/dma/img-mdc-dma.c:863:34: error: unused variable 'mdc_dma_of_match' [-Werror,-Wunused-const-variable]
> drivers/fpga/versal-fpga.c:62:34: error: unused variable 'versal_fpga_of_match' [-Werror,-Wunused-const-variable]
> drivers/i2c/muxes/i2c-mux-ltc4306.c:200:34: error: unused variable 'ltc4306_of_match' [-Werror,-Wunused-const-variable]
> drivers/i2c/muxes/i2c-mux-reg.c:242:34: error: unused variable 'i2c_mux_reg_of_match' [-Werror,-Wunused-const-variable]
> drivers/memory/pl353-smc.c:62:34: error: unused variable 'pl353_smc_supported_children' [-Werror,-Wunused-const-variable]
> drivers/regulator/pbias-regulator.c:136:34: error: unused variable 'pbias_of_match' [-Werror,-Wunused-const-variable]
> drivers/regulator/twl-regulator.c:552:34: error: unused variable 'twl_of_match' [-Werror,-Wunused-const-variable]
> drivers/regulator/twl6030-regulator.c:645:34: error: unused variable 'twl_of_match' [-Werror,-Wunused-const-variable]
> drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:3635:36: error: unused variable 'sas_v2_acpi_match' [-Werror,-Wunused-const-variable]
> drivers/staging/pi433/pi433_if.c:1359:34: error: unused variable 'pi433_dt_ids' [-Werror,-Wunused-const-variable]
> drivers/tty/serial/amba-pl011.c:2945:34: error: unused variable 'sbsa_uart_of_match' [-Werror,-Wunused-const-variable]
>
> The fix is always to just remove the of_match_ptr() and ACPI_PTR() wrappers
> that remove the reference, rather than adding another #ifdef just for build
> testing for a configuration that doesn't matter in practice.
>
> I considered splitting up the large patch into per subsystem patches, but since
> it's really just the same thing everywhere it feels better to do it all at once.
>
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---
> drivers/char/ipmi/ipmb_dev_int.c | 2 +-
> drivers/char/tpm/tpm_ftpm_tee.c | 2 +-
> drivers/dma/img-mdc-dma.c | 2 +-
> drivers/fpga/versal-fpga.c | 2 +-
> drivers/hid/hid-google-hammer.c | 6 ++----
> drivers/i2c/muxes/i2c-mux-ltc4306.c | 2 +-
> drivers/i2c/muxes/i2c-mux-reg.c | 2 +-
> drivers/input/touchscreen/wdt87xx_i2c.c | 2 +-
> drivers/mux/adg792a.c | 2 +-
> drivers/net/ethernet/apm/xgene-v2/main.c | 2 +-
> drivers/net/ethernet/hisilicon/hns_mdio.c | 2 +-
> drivers/regulator/pbias-regulator.c | 2 +-
> drivers/regulator/twl-regulator.c | 2 +-
> drivers/regulator/twl6030-regulator.c | 2 +-
> drivers/rtc/rtc-fsl-ftm-alarm.c | 2 +-
> drivers/scsi/hisi_sas/hisi_sas_v1_hw.c | 2 +-
> drivers/scsi/hisi_sas/hisi_sas_v2_hw.c | 2 +-
> drivers/staging/pi433/pi433_if.c | 2 +-
> drivers/tty/serial/amba-pl011.c | 6 +++---
> drivers/tty/serial/ma35d1_serial.c | 2 +-
> 20 files changed, 23 insertions(+), 25 deletions(-)
As far as I can tell, this triggers unconditional use of the
.of_match_table, and the compiler will have a harder time dropping
that data. However, the wasted data is negligible for the parts
touching "my" drivers:
drivers/i2c/muxes/i2c-mux-ltc4306.c
drivers/i2c/muxes/i2c-mux-reg.c
drivers/mux/adg729a.c
Acked-by: Peter Rosin <peda@axentia.se>
Cheers,
Peter
^ permalink raw reply [flat|nested] 15+ messages in thread