Devicetree
 help / color / mirror / Atom feed
* [PATCH RFC] arm64: dts: allwinner: a523: Add SPDIF to x96qproplus device
@ 2026-07-19  3:09 Per Larsson
  2026-07-20 14:59 ` Chen-Yu Tsai
  0 siblings, 1 reply; 3+ messages in thread
From: Per Larsson @ 2026-07-19  3:09 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
	Jernej Skrabec, Samuel Holland,
	open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS,
	moderated list:ARM/Allwinner sunXi SoC support,
	open list:ARM/Allwinner sunXi SoC support, open list
  Cc: Per Larsson

When spdif support was added for the Allwinner A523 family of SoCs, only
two of the three possible pins were added to the dtsi, since the third 
would clash with the first ethernet port (emac0)
However, some devices don't use emac0 and instead use emac1 for the only
available ethernet port, leaving the pin free to use for spdif.

Add it to the dtsi, and to such a device where this pin is used for spdif

Signed-off-by: Per Larsson <per@palvencia.se>
---
Marking this as RFC for a few reasons
1. This is my first submission, hoping everything is properly organized.
2. My testing setup is not the best: I get sound with this patch, but
   the pulseaudio daemon needs to be restarted far too often. 
   Hopefully it's just something on this minirootfs. Testing welcome.
3. Not sure where to get the hash for a fixes tag or if that's even OK

---
 .../arm64/boot/dts/allwinner/sun55i-a523.dtsi |  7 ++++++
 .../dts/allwinner/sun55i-h728-x96qpro+.dts    | 24 +++++++++++++++++++
 2 files changed, 31 insertions(+)

diff --git a/arch/arm64/boot/dts/allwinner/sun55i-a523.dtsi b/arch/arm64/boot/dts/allwinner/sun55i-a523.dtsi
index ca6a16807049..7370e8ed24ec 100644
--- a/arch/arm64/boot/dts/allwinner/sun55i-a523.dtsi
+++ b/arch/arm64/boot/dts/allwinner/sun55i-a523.dtsi
@@ -216,6 +216,13 @@ spdif_out_pb_pin: spdif-pb-pin {
 				allwinner,pinmux = <2>;
 			};
 
+			/omit-if-no-ref/
+			spdif_out_ph_pin: spdif-ph-pin {
+				pins = "PH7";
+				function = "spdif";
+				allwinner,pinmux = <4>;
+			};
+
 			/omit-if-no-ref/
 			spdif_out_pi_pin: spdif-pi-pin {
 				pins = "PI10";
diff --git a/arch/arm64/boot/dts/allwinner/sun55i-h728-x96qpro+.dts b/arch/arm64/boot/dts/allwinner/sun55i-h728-x96qpro+.dts
index a96927fbdadd..b172985583f8 100644
--- a/arch/arm64/boot/dts/allwinner/sun55i-h728-x96qpro+.dts
+++ b/arch/arm64/boot/dts/allwinner/sun55i-h728-x96qpro+.dts
@@ -44,6 +44,24 @@ reg_vcc3v3: vcc3v3 {
 		vin-supply = <&reg_vcc5v>;
 		regulator-always-on;
 	};
+
+	sound-spdif {
+		compatible = "simple-audio-card";
+		simple-audio-card,name = "spdif-out";
+
+		simple-audio-card,cpu {
+			sound-dai = <&spdif>;
+		};
+
+		simple-audio-card,codec {
+			sound-dai = <&spdif_out>;
+		};
+	};
+
+	spdif_out: spdif-out {
+		#sound-dai-cells = <0>;
+		compatible = "linux,spdif-dit";
+	};
 };
 
 &ehci0 {
@@ -275,6 +293,12 @@ &r_pio {
 	vcc-pm-supply = <&reg_aldo3>;
 };
 
+&spdif {
+	pinctrl-names = "default";
+	pinctrl-0 = <&spdif_out_ph_pin>;
+	status = "okay";
+};
+
 &uart0 {
 	pinctrl-names = "default";
 	pinctrl-0 = <&uart0_pb_pins>;
-- 
2.48.1


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

* Re: [PATCH RFC] arm64: dts: allwinner: a523: Add SPDIF to x96qproplus device
  2026-07-19  3:09 [PATCH RFC] arm64: dts: allwinner: a523: Add SPDIF to x96qproplus device Per Larsson
@ 2026-07-20 14:59 ` Chen-Yu Tsai
  2026-07-20 16:46   ` Per Larsson
  0 siblings, 1 reply; 3+ messages in thread
From: Chen-Yu Tsai @ 2026-07-20 14:59 UTC (permalink / raw)
  To: Per Larsson
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Jernej Skrabec,
	Samuel Holland,
	open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS,
	moderated list:ARM/Allwinner sunXi SoC support,
	open list:ARM/Allwinner sunXi SoC support, open list

On Sun, Jul 19, 2026 at 11:10 AM Per Larsson <per@palvencia.se> wrote:
>
> When spdif support was added for the Allwinner A523 family of SoCs, only
> two of the three possible pins were added to the dtsi, since the third
> would clash with the first ethernet port (emac0)
> However, some devices don't use emac0 and instead use emac1 for the only
> available ethernet port, leaving the pin free to use for spdif.
>
> Add it to the dtsi, and to such a device where this pin is used for spdif
>
> Signed-off-by: Per Larsson <per@palvencia.se>
> ---
> Marking this as RFC for a few reasons
> 1. This is my first submission, hoping everything is properly organized.

This is pretty good. The commit message is also well written. I would
like to see the patch split into two patches though. The first adds the
pinmux (and you can mention in the commit message that a subsequent
patch will reference it). The second patch enables SPDIF on the device
you have.

> 2. My testing setup is not the best: I get sound with this patch, but
>    the pulseaudio daemon needs to be restarted far too often.
>    Hopefully it's just something on this minirootfs. Testing welcome.
> 3. Not sure where to get the hash for a fixes tag or if that's even OK

This is a new addition, not a fix, so no fixes tag is warranted.


Thanks
ChenYu

> ---
>  .../arm64/boot/dts/allwinner/sun55i-a523.dtsi |  7 ++++++
>  .../dts/allwinner/sun55i-h728-x96qpro+.dts    | 24 +++++++++++++++++++
>  2 files changed, 31 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/allwinner/sun55i-a523.dtsi b/arch/arm64/boot/dts/allwinner/sun55i-a523.dtsi
> index ca6a16807049..7370e8ed24ec 100644
> --- a/arch/arm64/boot/dts/allwinner/sun55i-a523.dtsi
> +++ b/arch/arm64/boot/dts/allwinner/sun55i-a523.dtsi
> @@ -216,6 +216,13 @@ spdif_out_pb_pin: spdif-pb-pin {
>                                 allwinner,pinmux = <2>;
>                         };
>
> +                       /omit-if-no-ref/
> +                       spdif_out_ph_pin: spdif-ph-pin {
> +                               pins = "PH7";
> +                               function = "spdif";
> +                               allwinner,pinmux = <4>;
> +                       };
> +
>                         /omit-if-no-ref/
>                         spdif_out_pi_pin: spdif-pi-pin {
>                                 pins = "PI10";
> diff --git a/arch/arm64/boot/dts/allwinner/sun55i-h728-x96qpro+.dts b/arch/arm64/boot/dts/allwinner/sun55i-h728-x96qpro+.dts
> index a96927fbdadd..b172985583f8 100644
> --- a/arch/arm64/boot/dts/allwinner/sun55i-h728-x96qpro+.dts
> +++ b/arch/arm64/boot/dts/allwinner/sun55i-h728-x96qpro+.dts
> @@ -44,6 +44,24 @@ reg_vcc3v3: vcc3v3 {
>                 vin-supply = <&reg_vcc5v>;
>                 regulator-always-on;
>         };
> +
> +       sound-spdif {
> +               compatible = "simple-audio-card";
> +               simple-audio-card,name = "spdif-out";
> +
> +               simple-audio-card,cpu {
> +                       sound-dai = <&spdif>;
> +               };
> +
> +               simple-audio-card,codec {
> +                       sound-dai = <&spdif_out>;
> +               };
> +       };
> +
> +       spdif_out: spdif-out {
> +               #sound-dai-cells = <0>;
> +               compatible = "linux,spdif-dit";
> +       };
>  };
>
>  &ehci0 {
> @@ -275,6 +293,12 @@ &r_pio {
>         vcc-pm-supply = <&reg_aldo3>;
>  };
>
> +&spdif {
> +       pinctrl-names = "default";
> +       pinctrl-0 = <&spdif_out_ph_pin>;
> +       status = "okay";
> +};
> +
>  &uart0 {
>         pinctrl-names = "default";
>         pinctrl-0 = <&uart0_pb_pins>;
> --
> 2.48.1
>

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

* Re: [PATCH RFC] arm64: dts: allwinner: a523: Add SPDIF to x96qproplus device
  2026-07-20 14:59 ` Chen-Yu Tsai
@ 2026-07-20 16:46   ` Per Larsson
  0 siblings, 0 replies; 3+ messages in thread
From: Per Larsson @ 2026-07-20 16:46 UTC (permalink / raw)
  To: Chen-Yu Tsai
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Jernej Skrabec,
	Samuel Holland,
	open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS,
	moderated list:ARM/Allwinner sunXi SoC support,
	open list:ARM/Allwinner sunXi SoC support, open list

On Mon, 20 Jul 2026 22:59:57 +0800
Chen-Yu Tsai <wens@kernel.org> wrote:

> On Sun, Jul 19, 2026 at 11:10 AM Per Larsson <per@palvencia.se> wrote:
> >
> >
> > Signed-off-by: Per Larsson <per@palvencia.se>
> > ---
> > Marking this as RFC for a few reasons
> > 1. This is my first submission, hoping everything is properly
> > organized.  
> 
> This is pretty good. The commit message is also well written. I would
> like to see the patch split into two patches though. The first adds
> the pinmux (and you can mention in the commit message that a
> subsequent patch will reference it). The second patch enables SPDIF
> on the device you have.
> 
Ok, will split into two patches.

> > 2. My testing setup is not the best: I get sound with this patch,
> > but the pulseaudio daemon needs to be restarted far too often.
> >    Hopefully it's just something on this minirootfs. Testing
> > welcome. 3. Not sure where to get the hash for a fixes tag or if
> > that's even OK  
> 
> This is a new addition, not a fix, so no fixes tag is warranted.
> 
Understood.

Also saw that issue #2 in the list above was indeed because of issues in
my rootfs and not because of anything related to the patch, so no more
RFC-markings for next version.
> 
> Thanks
> ChenYu
> 
> > ---

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

end of thread, other threads:[~2026-07-20 16:47 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-19  3:09 [PATCH RFC] arm64: dts: allwinner: a523: Add SPDIF to x96qproplus device Per Larsson
2026-07-20 14:59 ` Chen-Yu Tsai
2026-07-20 16:46   ` Per Larsson

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