* [PATCH 1/2] ARM: dts: rockchip: Add i2s nodes for RK3128
2024-05-06 15:51 [PATCH 0/2] Add RK3128's sound nodes Alex Bee
@ 2024-05-06 15:51 ` Alex Bee
2024-05-06 15:51 ` [PATCH 2/2] ARM: dts: rockchip: Add spdif node " Alex Bee
2024-06-08 15:17 ` [PATCH 0/2] Add RK3128's sound nodes Heiko Stuebner
2 siblings, 0 replies; 4+ messages in thread
From: Alex Bee @ 2024-05-06 15:51 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Heiko Stuebner
Cc: devicetree, linux-arm-kernel, linux-rockchip, linux-kernel,
Alex Bee
RK3128 SoCs have two i2s controllers. i2s_8ch has 8 tx and 2 rx channels
and is internally hard-wired to the hdmi-controller respectivly the SoC's
analog codec. i2s_2ch has 2 tx and 2 rx channels and can also be used
externally as it's pins are exposed though pinctrl.
Signed-off-by: Alex Bee <knaerzche@gmail.com>
---
arch/arm/boot/dts/rockchip/rk3128.dtsi | 27 ++++++++++++++++++++++++++
1 file changed, 27 insertions(+)
diff --git a/arch/arm/boot/dts/rockchip/rk3128.dtsi b/arch/arm/boot/dts/rockchip/rk3128.dtsi
index fb98873fd94e..d0d1d7c2ab2f 100644
--- a/arch/arm/boot/dts/rockchip/rk3128.dtsi
+++ b/arch/arm/boot/dts/rockchip/rk3128.dtsi
@@ -360,6 +360,18 @@ usb_host_ohci: usb@101e0000 {
status = "disabled";
};
+ i2s_8ch: i2s@10200000 {
+ compatible = "rockchip,rk3128-i2s", "rockchip,rk3066-i2s";
+ reg = <0x10200000 0x1000>;
+ interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&cru SCLK_I2S0>, <&cru HCLK_I2S_8CH>;
+ clock-names = "i2s_clk", "i2s_hclk";
+ dmas = <&pdma 14>, <&pdma 15>;
+ dma-names = "tx", "rx";
+ #sound-dai-cells = <0>;
+ status = "disabled";
+ };
+
sdmmc: mmc@10214000 {
compatible = "rockchip,rk3128-dw-mshc", "rockchip,rk3288-dw-mshc";
reg = <0x10214000 0x4000>;
@@ -408,6 +420,21 @@ emmc: mmc@1021c000 {
status = "disabled";
};
+ i2s_2ch: i2s@10220000 {
+ compatible = "rockchip,rk3128-i2s", "rockchip,rk3066-i2s";
+ reg = <0x10220000 0x1000>;
+ interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&cru SCLK_I2S1>, <&cru HCLK_I2S_2CH>;
+ clock-names = "i2s_clk", "i2s_hclk";
+ dmas = <&pdma 0>, <&pdma 1>;
+ dma-names = "tx", "rx";
+ rockchip,playback-channels = <2>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2s_bus>;
+ #sound-dai-cells = <0>;
+ status = "disabled";
+ };
+
nfc: nand-controller@10500000 {
compatible = "rockchip,rk3128-nfc", "rockchip,rk2928-nfc";
reg = <0x10500000 0x4000>;
--
2.43.2
^ permalink raw reply related [flat|nested] 4+ messages in thread* [PATCH 2/2] ARM: dts: rockchip: Add spdif node for RK3128
2024-05-06 15:51 [PATCH 0/2] Add RK3128's sound nodes Alex Bee
2024-05-06 15:51 ` [PATCH 1/2] ARM: dts: rockchip: Add i2s nodes for RK3128 Alex Bee
@ 2024-05-06 15:51 ` Alex Bee
2024-06-08 15:17 ` [PATCH 0/2] Add RK3128's sound nodes Heiko Stuebner
2 siblings, 0 replies; 4+ messages in thread
From: Alex Bee @ 2024-05-06 15:51 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Heiko Stuebner
Cc: devicetree, linux-arm-kernel, linux-rockchip, linux-kernel,
Alex Bee
The SoC has a S/PDIF TX controller which is fully compatible with older
generation Rockchip SoCs.
Signed-off-by: Alex Bee <knaerzche@gmail.com>
---
arch/arm/boot/dts/rockchip/rk3128.dtsi | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/arch/arm/boot/dts/rockchip/rk3128.dtsi b/arch/arm/boot/dts/rockchip/rk3128.dtsi
index d0d1d7c2ab2f..bf6e05503141 100644
--- a/arch/arm/boot/dts/rockchip/rk3128.dtsi
+++ b/arch/arm/boot/dts/rockchip/rk3128.dtsi
@@ -372,6 +372,20 @@ i2s_8ch: i2s@10200000 {
status = "disabled";
};
+ spdif: spdif@10204000 {
+ compatible = "rockchip,rk3128-spdif", "rockchip,rk3066-spdif";
+ reg = <0x10204000 0x1000>;
+ interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&cru SCLK_SPDIF>, <&cru HCLK_SPDIF>;
+ clock-names = "mclk", "hclk";
+ dmas = <&pdma 13>;
+ dma-names = "tx";
+ pinctrl-names = "default";
+ pinctrl-0 = <&spdif_tx>;
+ #sound-dai-cells = <0>;
+ status = "disabled";
+ };
+
sdmmc: mmc@10214000 {
compatible = "rockchip,rk3128-dw-mshc", "rockchip,rk3288-dw-mshc";
reg = <0x10214000 0x4000>;
--
2.43.2
^ permalink raw reply related [flat|nested] 4+ messages in thread* Re: [PATCH 0/2] Add RK3128's sound nodes
2024-05-06 15:51 [PATCH 0/2] Add RK3128's sound nodes Alex Bee
2024-05-06 15:51 ` [PATCH 1/2] ARM: dts: rockchip: Add i2s nodes for RK3128 Alex Bee
2024-05-06 15:51 ` [PATCH 2/2] ARM: dts: rockchip: Add spdif node " Alex Bee
@ 2024-06-08 15:17 ` Heiko Stuebner
2 siblings, 0 replies; 4+ messages in thread
From: Heiko Stuebner @ 2024-06-08 15:17 UTC (permalink / raw)
To: Krzysztof Kozlowski, Rob Herring, Conor Dooley, Alex Bee
Cc: Heiko Stuebner, devicetree, linux-rockchip, linux-kernel,
linux-arm-kernel
On Mon, 6 May 2024 17:51:01 +0200, Alex Bee wrote:
> RK3128 has two I2S, and one S/PDIF controller. They are already supported
> by the drivers and covered by the bindings. All it needs to make use of
> them is exposing them in the SoC device tree.
>
> Alex Bee (2):
> ARM: dts: rockchip: Add i2s nodes for RK3128
> ARM: dts: rockchip: Add spdif node for RK3128
>
> [...]
Applied, thanks!
[1/2] ARM: dts: rockchip: Add i2s nodes for RK3128
commit: 760e49dc6cee85994f7ece74f7145887ea7b64ca
[2/2] ARM: dts: rockchip: Add spdif node for RK3128
commit: a6b661c2a38a92b7de826f74e57596fe33fe17fa
Best regards,
--
Heiko Stuebner <heiko@sntech.de>
^ permalink raw reply [flat|nested] 4+ messages in thread