All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/4] ASoC: spear: Update the SPDIF drivers for current ASoC APIs
@ 2026-07-30  9:54 phucduc.bui
  2026-07-30  9:54 ` [PATCH 1/4] ASoC: spear: spdif_in: Drop redundant error messages phucduc.bui
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: phucduc.bui @ 2026-07-30  9:54 UTC (permalink / raw)
  To: Tim Bird, Takashi Iwai, Mark Brown, Jaroslav Kysela,
	Liam Girdwood
  Cc: linux-sound, linux-kernel, bui duc phuc

From: bui duc phuc <phucduc.bui@gmail.com>

Hi all,

While cleaning up the SPEAr SPDIF driver probe path by removing
redundant error messages, build testing revealed several compilation
failures caused by outdated ASoC APIs.

The series first removes the redundant error messages, then updates the
driver to match the current ASoC APIs by replacing the removed
capture_dma_data field usage with the corresponding helper API, and
moving the DAI probe callback to struct snd_soc_dai_ops.

Best regards,
Phuc

bui duc phuc (4):
  ASoC: spear: spdif_in: Drop redundant error messages
  ASoC: spear: spdif_in: Switch to snd_soc_dai_dma_data_set_capture()
  ASoC: spear: spdif_in: Move DAI probe callback to snd_soc_dai_ops
  ASoC: spear: spdif_out: Move DAI probe callback to snd_soc_dai_ops

 sound/soc/spear/spdif_in.c  | 12 ++++--------
 sound/soc/spear/spdif_out.c |  2 +-
 2 files changed, 5 insertions(+), 9 deletions(-)

-- 
2.43.0


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

* [PATCH 1/4] ASoC: spear: spdif_in: Drop redundant error messages
  2026-07-30  9:54 [PATCH 0/4] ASoC: spear: Update the SPDIF drivers for current ASoC APIs phucduc.bui
@ 2026-07-30  9:54 ` phucduc.bui
  2026-07-30  9:54 ` [PATCH 2/4] ASoC: spear: spdif_in: Switch to snd_soc_dai_dma_data_set_capture() phucduc.bui
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: phucduc.bui @ 2026-07-30  9:54 UTC (permalink / raw)
  To: Tim Bird, Takashi Iwai, Mark Brown, Jaroslav Kysela,
	Liam Girdwood
  Cc: linux-sound, linux-kernel, bui duc phuc

From: bui duc phuc <phucduc.bui@gmail.com>

The called functions already log failures where appropriate. Return the
original error directly and avoid duplicate error messages.

Signed-off-by: bui duc phuc <phucduc.bui@gmail.com>
---
 sound/soc/spear/spdif_in.c | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/sound/soc/spear/spdif_in.c b/sound/soc/spear/spdif_in.c
index b31b120a85de..bbe016ed030e 100644
--- a/sound/soc/spear/spdif_in.c
+++ b/sound/soc/spear/spdif_in.c
@@ -218,10 +218,8 @@ static int spdif_in_probe(struct platform_device *pdev)
 
 	host->io_base = io_base;
 	host->irq = platform_get_irq(pdev, 0);
-	if (host->irq < 0) {
-		dev_warn(&pdev->dev, "failed to get IRQ: %d\n", host->irq);
+	if (host->irq < 0)
 		return host->irq;
-	}
 
 	host->clk = devm_clk_get(&pdev->dev, NULL);
 	if (IS_ERR(host->clk))
@@ -243,10 +241,8 @@ static int spdif_in_probe(struct platform_device *pdev)
 
 	ret = devm_request_irq(&pdev->dev, host->irq, spdif_in_irq, 0,
 			"spdif-in", host);
-	if (ret) {
-		dev_warn(&pdev->dev, "request_irq failed\n");
+	if (ret)
 		return ret;
-	}
 
 	ret = devm_snd_soc_register_component(&pdev->dev, &spdif_in_component,
 					      &spdif_in_dai, 1);
-- 
2.43.0


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

* [PATCH 2/4] ASoC: spear: spdif_in: Switch to snd_soc_dai_dma_data_set_capture()
  2026-07-30  9:54 [PATCH 0/4] ASoC: spear: Update the SPDIF drivers for current ASoC APIs phucduc.bui
  2026-07-30  9:54 ` [PATCH 1/4] ASoC: spear: spdif_in: Drop redundant error messages phucduc.bui
@ 2026-07-30  9:54 ` phucduc.bui
  2026-07-30  9:54 ` [PATCH 3/4] ASoC: spear: spdif_in: Move DAI probe callback to snd_soc_dai_ops phucduc.bui
  2026-07-30  9:54 ` [PATCH 4/4] ASoC: spear: spdif_out: " phucduc.bui
  3 siblings, 0 replies; 5+ messages in thread
From: phucduc.bui @ 2026-07-30  9:54 UTC (permalink / raw)
  To: Tim Bird, Takashi Iwai, Mark Brown, Jaroslav Kysela,
	Liam Girdwood
  Cc: linux-sound, linux-kernel, bui duc phuc

From: bui duc phuc <phucduc.bui@gmail.com>

Replace the legacy direct access to dai->capture_dma_data with
snd_soc_dai_dma_data_set_capture().
The capture_dma_data field no longer exists in struct snd_soc_dai,
making the previous implementation incompatible with current ASoC APIs.

Signed-off-by: bui duc phuc <phucduc.bui@gmail.com>
---
 sound/soc/spear/spdif_in.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sound/soc/spear/spdif_in.c b/sound/soc/spear/spdif_in.c
index bbe016ed030e..d571055bfc6b 100644
--- a/sound/soc/spear/spdif_in.c
+++ b/sound/soc/spear/spdif_in.c
@@ -55,7 +55,7 @@ static int spdif_in_dai_probe(struct snd_soc_dai *dai)
 	struct spdif_in_dev *host = snd_soc_dai_get_drvdata(dai);
 
 	host->dma_params_rx.filter_data = &host->dma_params;
-	dai->capture_dma_data = &host->dma_params_rx;
+	snd_soc_dai_dma_data_set_capture(dai, &host->dma_params_rx);
 
 	return 0;
 }
-- 
2.43.0


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

* [PATCH 3/4] ASoC: spear: spdif_in: Move DAI probe callback to snd_soc_dai_ops
  2026-07-30  9:54 [PATCH 0/4] ASoC: spear: Update the SPDIF drivers for current ASoC APIs phucduc.bui
  2026-07-30  9:54 ` [PATCH 1/4] ASoC: spear: spdif_in: Drop redundant error messages phucduc.bui
  2026-07-30  9:54 ` [PATCH 2/4] ASoC: spear: spdif_in: Switch to snd_soc_dai_dma_data_set_capture() phucduc.bui
@ 2026-07-30  9:54 ` phucduc.bui
  2026-07-30  9:54 ` [PATCH 4/4] ASoC: spear: spdif_out: " phucduc.bui
  3 siblings, 0 replies; 5+ messages in thread
From: phucduc.bui @ 2026-07-30  9:54 UTC (permalink / raw)
  To: Tim Bird, Takashi Iwai, Mark Brown, Jaroslav Kysela,
	Liam Girdwood
  Cc: linux-sound, linux-kernel, bui duc phuc

From: bui duc phuc <phucduc.bui@gmail.com>

The .probe callback is no longer part of struct snd_soc_dai_driver
and is now provided through struct snd_soc_dai_ops.
Move spdif_in_dai_probe() accordingly so the driver follows the current
ASoC API and builds correctly on modern kernels.

Signed-off-by: bui duc phuc <phucduc.bui@gmail.com>
---
 sound/soc/spear/spdif_in.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sound/soc/spear/spdif_in.c b/sound/soc/spear/spdif_in.c
index d571055bfc6b..dd1e176193af 100644
--- a/sound/soc/spear/spdif_in.c
+++ b/sound/soc/spear/spdif_in.c
@@ -150,12 +150,12 @@ static int spdif_in_trigger(struct snd_pcm_substream *substream, int cmd,
 
 static const struct snd_soc_dai_ops spdif_in_dai_ops = {
 	.shutdown	= spdif_in_shutdown,
+	.probe = spdif_in_dai_probe,
 	.trigger	= spdif_in_trigger,
 	.hw_params	= spdif_in_hw_params,
 };
 
 static struct snd_soc_dai_driver spdif_in_dai = {
-	.probe = spdif_in_dai_probe,
 	.capture = {
 		.channels_min = 2,
 		.channels_max = 2,
-- 
2.43.0


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

* [PATCH 4/4] ASoC: spear: spdif_out: Move DAI probe callback to snd_soc_dai_ops
  2026-07-30  9:54 [PATCH 0/4] ASoC: spear: Update the SPDIF drivers for current ASoC APIs phucduc.bui
                   ` (2 preceding siblings ...)
  2026-07-30  9:54 ` [PATCH 3/4] ASoC: spear: spdif_in: Move DAI probe callback to snd_soc_dai_ops phucduc.bui
@ 2026-07-30  9:54 ` phucduc.bui
  3 siblings, 0 replies; 5+ messages in thread
From: phucduc.bui @ 2026-07-30  9:54 UTC (permalink / raw)
  To: Tim Bird, Takashi Iwai, Mark Brown, Jaroslav Kysela,
	Liam Girdwood
  Cc: linux-sound, linux-kernel, bui duc phuc

From: bui duc phuc <phucduc.bui@gmail.com>

The .probe callback is no longer part of struct snd_soc_dai_driver
and is now provided through struct snd_soc_dai_ops.
Move spdif_soc_dai_probe() accordingly so the driver follows the current
ASoC API and builds correctly on modern kernels.

Signed-off-by: bui duc phuc <phucduc.bui@gmail.com>
---
 sound/soc/spear/spdif_out.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sound/soc/spear/spdif_out.c b/sound/soc/spear/spdif_out.c
index c06f09c646a8..01dc2cef7448 100644
--- a/sound/soc/spear/spdif_out.c
+++ b/sound/soc/spear/spdif_out.c
@@ -249,6 +249,7 @@ static int spdif_soc_dai_probe(struct snd_soc_dai *dai)
 }
 
 static const struct snd_soc_dai_ops spdif_out_dai_ops = {
+	.probe = spdif_soc_dai_probe,
 	.mute_stream	= spdif_mute,
 	.startup	= spdif_out_startup,
 	.shutdown	= spdif_out_shutdown,
@@ -266,7 +267,6 @@ static struct snd_soc_dai_driver spdif_out_dai = {
 				 SNDRV_PCM_RATE_192000),
 		.formats = SNDRV_PCM_FMTBIT_S16_LE,
 	},
-	.probe = spdif_soc_dai_probe,
 	.ops = &spdif_out_dai_ops,
 };
 
-- 
2.43.0


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

end of thread, other threads:[~2026-07-30  9:54 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-30  9:54 [PATCH 0/4] ASoC: spear: Update the SPDIF drivers for current ASoC APIs phucduc.bui
2026-07-30  9:54 ` [PATCH 1/4] ASoC: spear: spdif_in: Drop redundant error messages phucduc.bui
2026-07-30  9:54 ` [PATCH 2/4] ASoC: spear: spdif_in: Switch to snd_soc_dai_dma_data_set_capture() phucduc.bui
2026-07-30  9:54 ` [PATCH 3/4] ASoC: spear: spdif_in: Move DAI probe callback to snd_soc_dai_ops phucduc.bui
2026-07-30  9:54 ` [PATCH 4/4] ASoC: spear: spdif_out: " phucduc.bui

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.