2024-04-03 08:54:20

by Arnd Bergmann

[permalink] [raw]
Subject: [PATCH 32/34] ASoC: remove incorrect of_match_ptr/ACPI_PTR annotations

From: Arnd Bergmann <[email protected]>

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:

sound/soc/atmel/sam9x5_wm8731.c:187:34: error: unused variable 'sam9x5_wm8731_of_match' [-Werror,-Wunused-const-variable]
sound/soc/codecs/rt5514-spi.c:496:34: error: unused variable 'rt5514_of_match' [-Werror,-Wunused-const-variable]
sound/soc/samsung/aries_wm8994.c:524:34: error: unused variable 'samsung_wm8994_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.

Signed-off-by: Arnd Bergmann <[email protected]>
---
sound/soc/amd/acp3x-rt5682-max9836.c | 2 +-
sound/soc/atmel/sam9x5_wm8731.c | 2 +-
sound/soc/codecs/rt5514-spi.c | 2 +-
sound/soc/qcom/lpass-sc7280.c | 2 +-
sound/soc/samsung/aries_wm8994.c | 2 +-
5 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/sound/soc/amd/acp3x-rt5682-max9836.c b/sound/soc/amd/acp3x-rt5682-max9836.c
index d6cdb6d9fdd6..ffc105759994 100644
--- a/sound/soc/amd/acp3x-rt5682-max9836.c
+++ b/sound/soc/amd/acp3x-rt5682-max9836.c
@@ -543,7 +543,7 @@ MODULE_DEVICE_TABLE(acpi, acp3x_audio_acpi_match);
static struct platform_driver acp3x_audio = {
.driver = {
.name = "acp3x-alc5682-max98357",
- .acpi_match_table = ACPI_PTR(acp3x_audio_acpi_match),
+ .acpi_match_table = acp3x_audio_acpi_match,
.pm = &snd_soc_pm_ops,
},
.probe = acp3x_probe,
diff --git a/sound/soc/atmel/sam9x5_wm8731.c b/sound/soc/atmel/sam9x5_wm8731.c
index d1c1f370a9cd..95c8c37478a3 100644
--- a/sound/soc/atmel/sam9x5_wm8731.c
+++ b/sound/soc/atmel/sam9x5_wm8731.c
@@ -193,7 +193,7 @@ MODULE_DEVICE_TABLE(of, sam9x5_wm8731_of_match);
static struct platform_driver sam9x5_wm8731_driver = {
.driver = {
.name = DRV_NAME,
- .of_match_table = of_match_ptr(sam9x5_wm8731_of_match),
+ .of_match_table = sam9x5_wm8731_of_match,
},
.probe = sam9x5_wm8731_driver_probe,
.remove_new = sam9x5_wm8731_driver_remove,
diff --git a/sound/soc/codecs/rt5514-spi.c b/sound/soc/codecs/rt5514-spi.c
index f475c8cfadae..da397db8d7d5 100644
--- a/sound/soc/codecs/rt5514-spi.c
+++ b/sound/soc/codecs/rt5514-spi.c
@@ -503,7 +503,7 @@ static struct spi_driver rt5514_spi_driver = {
.driver = {
.name = "rt5514",
.pm = &rt5514_pm_ops,
- .of_match_table = of_match_ptr(rt5514_of_match),
+ .of_match_table = rt5514_of_match,
},
.probe = rt5514_spi_probe,
};
diff --git a/sound/soc/qcom/lpass-sc7280.c b/sound/soc/qcom/lpass-sc7280.c
index 47c622327a8d..c91620128fd4 100644
--- a/sound/soc/qcom/lpass-sc7280.c
+++ b/sound/soc/qcom/lpass-sc7280.c
@@ -441,7 +441,7 @@ MODULE_DEVICE_TABLE(of, sc7280_lpass_cpu_device_id);
static struct platform_driver sc7280_lpass_cpu_platform_driver = {
.driver = {
.name = "sc7280-lpass-cpu",
- .of_match_table = of_match_ptr(sc7280_lpass_cpu_device_id),
+ .of_match_table = sc7280_lpass_cpu_device_id,
.pm = &sc7280_lpass_pm_ops,
},
.probe = asoc_qcom_lpass_cpu_platform_probe,
diff --git a/sound/soc/samsung/aries_wm8994.c b/sound/soc/samsung/aries_wm8994.c
index a548ac33dd94..9f7318c4ee33 100644
--- a/sound/soc/samsung/aries_wm8994.c
+++ b/sound/soc/samsung/aries_wm8994.c
@@ -689,7 +689,7 @@ static int aries_audio_probe(struct platform_device *pdev)
static struct platform_driver aries_audio_driver = {
.driver = {
.name = "aries-audio-wm8994",
- .of_match_table = of_match_ptr(samsung_wm8994_of_match),
+ .of_match_table = samsung_wm8994_of_match,
.pm = &snd_soc_pm_ops,
},
.probe = aries_audio_probe,
--
2.39.2



2024-04-03 09:07:34

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH 32/34] ASoC: remove incorrect of_match_ptr/ACPI_PTR annotations

On 03/04/2024 10:06, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> 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:
>
> sound/soc/atmel/sam9x5_wm8731.c:187:34: error: unused variable 'sam9x5_wm8731_of_match' [-Werror,-Wunused-const-variable]
> sound/soc/codecs/rt5514-spi.c:496:34: error: unused variable 'rt5514_of_match' [-Werror,-Wunused-const-variable]
> sound/soc/samsung/aries_wm8994.c:524:34: error: unused variable 'samsung_wm8994_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.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
> ---
> sound/soc/amd/acp3x-rt5682-max9836.c | 2 +-
> sound/soc/atmel/sam9x5_wm8731.c | 2 +-
> sound/soc/codecs/rt5514-spi.c | 2 +-
> sound/soc/qcom/lpass-sc7280.c | 2 +-
> sound/soc/samsung/aries_wm8994.c | 2 +-

I sent it already as well:
https://lore.kernel.org/all/[email protected]/

and Mark did not pick it up, I guess for the same reason as SPI.

Best regards,
Krzysztof


2024-04-03 09:15:34

by Andy Shevchenko

[permalink] [raw]
Subject: Re: [PATCH 32/34] ASoC: remove incorrect of_match_ptr/ACPI_PTR annotations

On Wed, Apr 03, 2024 at 10:06:50AM +0200, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> 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:
>
> sound/soc/atmel/sam9x5_wm8731.c:187:34: error: unused variable 'sam9x5_wm8731_of_match' [-Werror,-Wunused-const-variable]
> sound/soc/codecs/rt5514-spi.c:496:34: error: unused variable 'rt5514_of_match' [-Werror,-Wunused-const-variable]
> sound/soc/samsung/aries_wm8994.c:524:34: error: unused variable 'samsung_wm8994_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.

..

> index d6cdb6d9fdd6..ffc105759994 100644
> --- a/sound/soc/amd/acp3x-rt5682-max9836.c
> +++ b/sound/soc/amd/acp3x-rt5682-max9836.c
> @@ -543,7 +543,7 @@ MODULE_DEVICE_TABLE(acpi, acp3x_audio_acpi_match);
> static struct platform_driver acp3x_audio = {
> .driver = {
> .name = "acp3x-alc5682-max98357",
> - .acpi_match_table = ACPI_PTR(acp3x_audio_acpi_match),
> + .acpi_match_table = acp3x_audio_acpi_match,
> .pm = &snd_soc_pm_ops,
> },
> .probe = acp3x_probe,

Replace acpi_match_device() by device_get_match_data() and acpi.h by
mod_devicetable.h + property.h.

I really would like to see agnostic drivers (when they don't need of*.h/acpi.h
to be included as "proxy" headers).

With this, the change probably needs to be separated from this patch.

If you address as suggested,
Reviewed-by: Andy Shevchenko <[email protected]>

..

The rest I haven't checked, it might be possible to do something similar there
as well.

--
With Best Regards,
Andy Shevchenko