[3/7] ASoC: sunxi: sun4i-spdif: Add support for Allwinner H616

Message ID 20240122170518.3090814-4-wens@kernel.org
State New
Headers
Series arm64: sun50i-h616: Add DMA and SPDIF controllers |

Commit Message

Chen-Yu Tsai Jan. 22, 2024, 5:05 p.m. UTC
  From: Chen-Yu Tsai <wens@csie.org>

The SPDIF hardware block found in the H616 SoC has the same layout as
the one found in the H6 SoC, except that it is missing the receiver
side.

Since the driver currently only supports the transmit function, support
for the H616 is identical to what is currently done for the H6.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
---
 sound/soc/sunxi/sun4i-spdif.c | 5 +++++
 1 file changed, 5 insertions(+)
  

Comments

Andre Przywara Jan. 23, 2024, 12:38 a.m. UTC | #1
On Tue, 23 Jan 2024 01:05:14 +0800
Chen-Yu Tsai <wens@kernel.org> wrote:

Hi Chen-Yu,

thanks for posting this!

> From: Chen-Yu Tsai <wens@csie.org>
> 
> The SPDIF hardware block found in the H616 SoC has the same layout as
> the one found in the H6 SoC, except that it is missing the receiver
> side.
> 
> Since the driver currently only supports the transmit function, support
> for the H616 is identical to what is currently done for the H6.

I compared the OWA manual sections of the H6 and the H616 manuals, and
can confirm that indeed the H616 is the same as the H6, minus the RX
part:

> Signed-off-by: Chen-Yu Tsai <wens@csie.org>

Reviewed-by: Andre Przywara <andre.przywara@arm.com>

Cheers,
Andre

> ---
>  sound/soc/sunxi/sun4i-spdif.c | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/sound/soc/sunxi/sun4i-spdif.c b/sound/soc/sunxi/sun4i-spdif.c
> index 702386823d17..f41c30955857 100644
> --- a/sound/soc/sunxi/sun4i-spdif.c
> +++ b/sound/soc/sunxi/sun4i-spdif.c
> @@ -577,6 +577,11 @@ static const struct of_device_id sun4i_spdif_of_match[] = {
>  		.compatible = "allwinner,sun50i-h6-spdif",
>  		.data = &sun50i_h6_spdif_quirks,
>  	},
> +	{
> +		.compatible = "allwinner,sun50i-h616-spdif",
> +		/* Essentially the same as the H6, but without RX */
> +		.data = &sun50i_h6_spdif_quirks,
> +	},
>  	{ /* sentinel */ }
>  };
>  MODULE_DEVICE_TABLE(of, sun4i_spdif_of_match);
  
Jernej Škrabec Jan. 23, 2024, 5:50 p.m. UTC | #2
Dne ponedeljek, 22. januar 2024 ob 18:05:14 CET je Chen-Yu Tsai napisal(a):
> From: Chen-Yu Tsai <wens@csie.org>
> 
> The SPDIF hardware block found in the H616 SoC has the same layout as
> the one found in the H6 SoC, except that it is missing the receiver
> side.
> 
> Since the driver currently only supports the transmit function, support
> for the H616 is identical to what is currently done for the H6.
> 
> Signed-off-by: Chen-Yu Tsai <wens@csie.org>

Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com>

Best regards,
Jernej
  

Patch

diff --git a/sound/soc/sunxi/sun4i-spdif.c b/sound/soc/sunxi/sun4i-spdif.c
index 702386823d17..f41c30955857 100644
--- a/sound/soc/sunxi/sun4i-spdif.c
+++ b/sound/soc/sunxi/sun4i-spdif.c
@@ -577,6 +577,11 @@  static const struct of_device_id sun4i_spdif_of_match[] = {
 		.compatible = "allwinner,sun50i-h6-spdif",
 		.data = &sun50i_h6_spdif_quirks,
 	},
+	{
+		.compatible = "allwinner,sun50i-h616-spdif",
+		/* Essentially the same as the H6, but without RX */
+		.data = &sun50i_h6_spdif_quirks,
+	},
 	{ /* sentinel */ }
 };
 MODULE_DEVICE_TABLE(of, sun4i_spdif_of_match);