I2S pinctrl fixes, someone resurrected the rk3128 arm32 and found some

needed fixes and finally some sound fixes for the px30 ringneck som.
 -----BEGIN PGP SIGNATURE-----
 
 iQFEBAABCAAuFiEE7v+35S2Q1vLNA3Lx86Z5yZzRHYEFAmUtpaYQHGhlaWtvQHNu
 dGVjaC5kZQAKCRDzpnnJnNEdgQLWB/9ca9kQHIYW1yemzzxSI0+3Et5KKgpNPR+r
 wXHiLbofSsoWz7jz2KuTli0ghmRsmwm9tQcyjv4g2T9ValqGk0v3mASvCTMO6Net
 FhB/kbmaNToSGpYM/4R1ZC0bxB/PqNcMqkF/fqAtdTx1trRxlwSjChd0dlukU6yK
 +8jnVf3y6/L2qeNj8QhA7YQRA0xN3WRmU3SfDEPHFXNIGkDvjlkbiiH3cSWRZRgC
 JzEf/bN8e4dwj4wNOiFQpYvZ7kHISlkIfDv5G+f1fy/pzDTwmvLx9iRIDbin17hG
 CB/RsWmLhcEiWFtLOAQnF1Rcntg6etEexoG3dkDGOsDYKYBtqabd
 =rcjP
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmUu9D8ACgkQYKtH/8kJ
 Uidj0A/9FelTTvPmCx/74GXBdzzE7QYtzFgupVMiEGhbAqqbUUN8LolgmZFszp0u
 CQILBb9GE7bucThY+L92SyuDJhlRnqJ5Xu/ODm274yVLK/V9tAPCHim2nkjR04+o
 qseTIlN6yIzkFa6ijnsd2yXo10rVmaJRBXDV+jBXxnq8W3yeXMy70oGatHebUtQc
 x0H+D0CQ/dvXrBApQ6eKOBGEJlJ7k84H8RfcCytoetaeqg96zk/N55UbaH2k89kn
 rqueJc1Y1HTAyH32Fy9SDqG2swMVMIja6/XOswyfhA3slNQY+D5XdyXRqin4G6mX
 VI8xQIqt5l9jevetKWINt2z5ingnx+qnC7jwTC/LR22wMJNWW4IyNiaGsN3uDfX7
 kRaTcWbWMCqk80wtp5d1Vm3d78eLUEflduAN8TZ/e9HqJGTebgIJRx8qbFBcjfxK
 T67c0d56Ed3oNbHcdYR7YQP91/qEJ97yFtyv4AfSbtRGnWz3guqXrHrp45p4uOGw
 QDr/7ZQl2pGQE99dpVRvib93P7XNYs+QXnJu47CESIhnpG+J3DX/eT/adGzxcW3h
 0z193vD61B4cf9exAwNS4H3lxP9qDATDovS+RWrNkfCWnarPN9eQJ3NwrZ9FkTY1
 GyovQR1EnQgCXLayspjuaOLslaVS3vbk33ibuJq8AuAxANFsd6U=
 =Y+0u
 -----END PGP SIGNATURE-----

Merge tag 'v6.6-rockchip-dtsfixes1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into arm/fixes

I2S pinctrl fixes, someone resurrected the rk3128 arm32 and found some
needed fixes and finally some sound fixes for the px30 ringneck som.

* tag 'v6.6-rockchip-dtsfixes1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  arm64: dts: rockchip: Fix i2s0 pin conflict on ROCK Pi 4 boards
  arm64: dts: rockchip: Add i2s0-2ch-bus-bclk-off pins to RK3399
  ARM: dts: rockchip: Fix timer clocks for RK3128
  ARM: dts: rockchip: Add missing quirk for RK3128's dma engine
  ARM: dts: rockchip: Add missing arm timer interrupt for RK3128
  ARM: dts: rockchip: Fix i2c0 register address for RK3128
  arm64: dts: rockchip: set codec system-clock-fixed on px30-ringneck-haikou
  arm64: dts: rockchip: use codec as clock master on px30-ringneck-haikou

Link: https://lore.kernel.org/r/1965242.usQuhbGJ8B@phil
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
Arnd Bergmann 2023-10-17 22:53:13 +02:00
commit 5e8a5e895a
4 changed files with 27 additions and 12 deletions

View file

@ -64,7 +64,8 @@ timer {
compatible = "arm,armv7-timer";
interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>,
<GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>,
<GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
<GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>,
<GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
arm,cpu-registers-not-fw-configured;
clock-frequency = <24000000>;
};
@ -233,7 +234,7 @@ timer0: timer@20044000 {
compatible = "rockchip,rk3128-timer", "rockchip,rk3288-timer";
reg = <0x20044000 0x20>;
interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cru PCLK_TIMER>, <&xin24m>;
clocks = <&cru PCLK_TIMER>, <&cru SCLK_TIMER0>;
clock-names = "pclk", "timer";
};
@ -241,7 +242,7 @@ timer1: timer@20044020 {
compatible = "rockchip,rk3128-timer", "rockchip,rk3288-timer";
reg = <0x20044020 0x20>;
interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cru PCLK_TIMER>, <&xin24m>;
clocks = <&cru PCLK_TIMER>, <&cru SCLK_TIMER1>;
clock-names = "pclk", "timer";
};
@ -249,7 +250,7 @@ timer2: timer@20044040 {
compatible = "rockchip,rk3128-timer", "rockchip,rk3288-timer";
reg = <0x20044040 0x20>;
interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cru PCLK_TIMER>, <&xin24m>;
clocks = <&cru PCLK_TIMER>, <&cru SCLK_TIMER2>;
clock-names = "pclk", "timer";
};
@ -257,7 +258,7 @@ timer3: timer@20044060 {
compatible = "rockchip,rk3128-timer", "rockchip,rk3288-timer";
reg = <0x20044060 0x20>;
interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cru PCLK_TIMER>, <&xin24m>;
clocks = <&cru PCLK_TIMER>, <&cru SCLK_TIMER3>;
clock-names = "pclk", "timer";
};
@ -265,7 +266,7 @@ timer4: timer@20044080 {
compatible = "rockchip,rk3128-timer", "rockchip,rk3288-timer";
reg = <0x20044080 0x20>;
interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cru PCLK_TIMER>, <&xin24m>;
clocks = <&cru PCLK_TIMER>, <&cru SCLK_TIMER4>;
clock-names = "pclk", "timer";
};
@ -273,7 +274,7 @@ timer5: timer@200440a0 {
compatible = "rockchip,rk3128-timer", "rockchip,rk3288-timer";
reg = <0x200440a0 0x20>;
interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cru PCLK_TIMER>, <&xin24m>;
clocks = <&cru PCLK_TIMER>, <&cru SCLK_TIMER5>;
clock-names = "pclk", "timer";
};
@ -426,7 +427,7 @@ saradc: saradc@2006c000 {
i2c0: i2c@20072000 {
compatible = "rockchip,rk3128-i2c", "rockchip,rk3288-i2c";
reg = <20072000 0x1000>;
reg = <0x20072000 0x1000>;
interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
clock-names = "i2c";
clocks = <&cru PCLK_I2C0>;
@ -458,6 +459,7 @@ pdma: dma-controller@20078000 {
interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
arm,pl330-broken-no-flushp;
arm,pl330-periph-burst;
clocks = <&cru ACLK_DMAC>;
clock-names = "apb_pclk";
#dma-cells = <1>;

View file

@ -68,15 +68,17 @@ i2s0-sound {
simple-audio-card,format = "i2s";
simple-audio-card,name = "Haikou,I2S-codec";
simple-audio-card,mclk-fs = <512>;
simple-audio-card,frame-master = <&sgtl5000_codec>;
simple-audio-card,bitclock-master = <&sgtl5000_codec>;
simple-audio-card,codec {
clocks = <&sgtl5000_clk>;
sgtl5000_codec: simple-audio-card,codec {
sound-dai = <&sgtl5000>;
// Prevent the dai subsystem from overwriting the clock
// frequency. We are using a fixed-frequency oscillator.
system-clock-fixed;
};
simple-audio-card,cpu {
bitclock-master;
frame-master;
sound-dai = <&i2s0_8ch>;
};
};

View file

@ -492,6 +492,7 @@ &i2c4 {
&i2s0 {
pinctrl-0 = <&i2s0_2ch_bus>;
pinctrl-1 = <&i2s0_2ch_bus_bclk_off>;
rockchip,capture-channels = <2>;
rockchip,playback-channels = <2>;
status = "okay";

View file

@ -2457,6 +2457,16 @@ i2s0_2ch_bus: i2s0-2ch-bus {
<4 RK_PA0 1 &pcfg_pull_none>;
};
i2s0_2ch_bus_bclk_off: i2s0-2ch-bus-bclk-off {
rockchip,pins =
<3 RK_PD0 RK_FUNC_GPIO &pcfg_pull_none>,
<3 RK_PD1 1 &pcfg_pull_none>,
<3 RK_PD2 1 &pcfg_pull_none>,
<3 RK_PD3 1 &pcfg_pull_none>,
<3 RK_PD7 1 &pcfg_pull_none>,
<4 RK_PA0 1 &pcfg_pull_none>;
};
i2s0_8ch_bus: i2s0-8ch-bus {
rockchip,pins =
<3 RK_PD0 1 &pcfg_pull_none>,