diff --git a/patch/kernel/archive/rockchip64-6.12/board-rockpis-dts-fixes.patch b/patch/kernel/archive/rockchip64-6.12/board-rockpis-dts-fixes.patch index 9254c4f1ac..df1d39df61 100644 --- a/patch/kernel/archive/rockchip64-6.12/board-rockpis-dts-fixes.patch +++ b/patch/kernel/archive/rockchip64-6.12/board-rockpis-dts-fixes.patch @@ -1,25 +1,49 @@ -From b159c55f7d9f81f3c7aa5ae041c1d0ec61281af4 Mon Sep 17 00:00:00 2001 +From 3bdc6856ef82b6619c527034206b49a69f3d1b91 Mon Sep 17 00:00:00 2001 From: Paolo Sabatino -Date: Mon, 25 Nov 2024 17:02:05 +0100 -Subject: [PATCH] rk3308: various fixes and enhancements for rockpi-s +Date: Tue, 26 Nov 2024 12:13:24 +0100 +Subject: [PATCH] rk3308: fixes for rock pi s dts --- - .../boot/dts/rockchip/rk3308-rock-pi-s.dts | 51 +++++++++++++++++++ - 1 file changed, 51 insertions(+) + .../boot/dts/rockchip/rk3308-rock-pi-s.dts | 75 +++++++++++++++++++ + 1 file changed, 75 insertions(+) diff --git a/arch/arm64/boot/dts/rockchip/rk3308-rock-pi-s.dts b/arch/arm64/boot/dts/rockchip/rk3308-rock-pi-s.dts -index 5ca0cc19f92c..817684e54617 100644 +index 62d18ca769a1..8bcc57e9440c 100644 --- a/arch/arm64/boot/dts/rockchip/rk3308-rock-pi-s.dts +++ b/arch/arm64/boot/dts/rockchip/rk3308-rock-pi-s.dts -@@ -48,6 +48,30 @@ blue-led { +@@ -48,6 +48,54 @@ blue-led { }; }; ++ analog_sound: analog-sound { ++ compatible = "simple-audio-card"; ++ simple-audio-card,format = "i2s"; ++ simple-audio-card,name = "analog"; ++ simple-audio-card,mclk-fs = <256>; ++ simple-audio-card,codec-hp-det; ++ simple-audio-card,widgets = ++ "Headphone", "Headphones"; ++ ++ simple-audio-card,dai-link@1 { ++ format = "i2s"; ++ ++ cpu { ++ sound-dai = <&i2s_8ch_2>; ++ }; ++ ++ codec { ++ sound-dai = <&codec>; ++ }; ++ ++ }; ++ ++ }; ++ + pcm5102_sound: pcm5102-sound { + compatible = "simple-audio-card"; + simple-audio-card,format = "i2s"; + simple-audio-card,mclk-fs = <256>; -+ simple-audio-card,name = "lineout"; ++ simple-audio-card,name = "pcm5102a"; + + simple-audio-card,dai-link@1 { + format = "i2s"; @@ -42,19 +66,19 @@ index 5ca0cc19f92c..817684e54617 100644 sdio_pwrseq: sdio-pwrseq { compatible = "mmc-pwrseq-simple"; pinctrl-0 = <&wifi_enable_h>; -@@ -128,6 +152,11 @@ vdd_log: vdd-log { +@@ -128,6 +176,11 @@ vdd_log: vdd-log { }; }; +&codec { -+ status = "disabled"; ++ status = "okay"; + #sound-dai-cells = <0>; +}; + &cpu0 { cpu-supply = <&vdd_core>; }; -@@ -139,6 +168,7 @@ &emmc { +@@ -139,6 +192,7 @@ &emmc { non-removable; pinctrl-names = "default"; pinctrl-0 = <&emmc_bus8 &emmc_clk &emmc_cmd>; @@ -62,7 +86,7 @@ index 5ca0cc19f92c..817684e54617 100644 vmmc-supply = <&vcc_io>; status = "okay"; }; -@@ -170,6 +200,19 @@ &i2c1 { +@@ -242,6 +296,19 @@ &io_domains { status = "okay"; }; @@ -76,13 +100,13 @@ index 5ca0cc19f92c..817684e54617 100644 + +&i2s_8ch_2 { + #sound-dai-cells = <0>; -+ status = "disabled"; ++ status = "okay"; +}; + &pinctrl { pinctrl-names = "default"; pinctrl-0 = <&rtc_32k>; -@@ -261,10 +304,18 @@ &sdmmc { +@@ -333,10 +400,18 @@ &sdmmc { cap-mmc-highspeed; cap-sd-highspeed; disable-wp; diff --git a/patch/kernel/archive/rockchip64-6.12/rk3308-enable-acodec-verb.patch b/patch/kernel/archive/rockchip64-6.12/rk3308-enable-acodec-verb.patch new file mode 100644 index 0000000000..e2a7c45627 --- /dev/null +++ b/patch/kernel/archive/rockchip64-6.12/rk3308-enable-acodec-verb.patch @@ -0,0 +1,13 @@ +diff --git a/sound/soc/codecs/rk3308_codec.c b/sound/soc/codecs/rk3308_codec.c +index 8b51e87a1711..f3c8716215a8 100644 +--- a/sound/soc/codecs/rk3308_codec.c ++++ b/sound/soc/codecs/rk3308_codec.c +@@ -854,7 +854,7 @@ static int rk3308_codec_get_version(struct rk3308_codec_priv *rk3308) + break; + case 0x3308: + rk3308->codec_ver = ACODEC_VERSION_B; +- return dev_err_probe(rk3308->dev, -EINVAL, "Chip version B not supported\n"); ++ break; + case 0x3308c: + rk3308->codec_ver = ACODEC_VERSION_C; + break; diff --git a/patch/kernel/archive/rockchip64-6.6/board-rockpis-dts-fixes.patch b/patch/kernel/archive/rockchip64-6.6/board-rockpis-dts-fixes.patch index 8b502077de..1c9158aa1d 100644 --- a/patch/kernel/archive/rockchip64-6.6/board-rockpis-dts-fixes.patch +++ b/patch/kernel/archive/rockchip64-6.6/board-rockpis-dts-fixes.patch @@ -1,25 +1,49 @@ -From b159c55f7d9f81f3c7aa5ae041c1d0ec61281af4 Mon Sep 17 00:00:00 2001 +From d78cd859d340cc848e249205b3ced25c756323be Mon Sep 17 00:00:00 2001 From: Paolo Sabatino -Date: Mon, 25 Nov 2024 17:02:05 +0100 -Subject: [PATCH] rk3308: various fixes and enhancements for rockpi-s +Date: Tue, 26 Nov 2024 12:08:05 +0100 +Subject: [PATCH] rk3308: fixes for rock pi s --- - .../boot/dts/rockchip/rk3308-rock-pi-s.dts | 51 +++++++++++++++++++ - 1 file changed, 51 insertions(+) + .../boot/dts/rockchip/rk3308-rock-pi-s.dts | 75 +++++++++++++++++++ + 1 file changed, 75 insertions(+) diff --git a/arch/arm64/boot/dts/rockchip/rk3308-rock-pi-s.dts b/arch/arm64/boot/dts/rockchip/rk3308-rock-pi-s.dts -index 5ca0cc19f92c..817684e54617 100644 +index 5ca0cc19f92c..a94315d270dc 100644 --- a/arch/arm64/boot/dts/rockchip/rk3308-rock-pi-s.dts +++ b/arch/arm64/boot/dts/rockchip/rk3308-rock-pi-s.dts -@@ -48,6 +48,30 @@ blue-led { +@@ -48,6 +48,54 @@ blue-led { }; }; ++ analog_sound: analog-sound { ++ compatible = "simple-audio-card"; ++ simple-audio-card,format = "i2s"; ++ simple-audio-card,name = "analog"; ++ simple-audio-card,mclk-fs = <256>; ++ simple-audio-card,codec-hp-det; ++ simple-audio-card,widgets = ++ "Headphone", "Headphones"; ++ ++ simple-audio-card,dai-link@1 { ++ format = "i2s"; ++ ++ cpu { ++ sound-dai = <&i2s_8ch_2>; ++ }; ++ ++ codec { ++ sound-dai = <&acodec>; ++ }; ++ ++ }; ++ ++ }; ++ + pcm5102_sound: pcm5102-sound { + compatible = "simple-audio-card"; + simple-audio-card,format = "i2s"; + simple-audio-card,mclk-fs = <256>; -+ simple-audio-card,name = "lineout"; ++ simple-audio-card,name = "pcm5102a"; + + simple-audio-card,dai-link@1 { + format = "i2s"; @@ -42,7 +66,7 @@ index 5ca0cc19f92c..817684e54617 100644 sdio_pwrseq: sdio-pwrseq { compatible = "mmc-pwrseq-simple"; pinctrl-0 = <&wifi_enable_h>; -@@ -128,6 +152,11 @@ vdd_log: vdd-log { +@@ -128,6 +176,11 @@ vdd_log: vdd-log { }; }; @@ -54,7 +78,7 @@ index 5ca0cc19f92c..817684e54617 100644 &cpu0 { cpu-supply = <&vdd_core>; }; -@@ -139,6 +168,7 @@ &emmc { +@@ -139,6 +192,7 @@ &emmc { non-removable; pinctrl-names = "default"; pinctrl-0 = <&emmc_bus8 &emmc_clk &emmc_cmd>; @@ -62,7 +86,7 @@ index 5ca0cc19f92c..817684e54617 100644 vmmc-supply = <&vcc_io>; status = "okay"; }; -@@ -170,6 +200,19 @@ &i2c1 { +@@ -170,6 +224,19 @@ &i2c1 { status = "okay"; }; @@ -76,13 +100,13 @@ index 5ca0cc19f92c..817684e54617 100644 + +&i2s_8ch_2 { + #sound-dai-cells = <0>; -+ status = "disabled"; ++ status = "okay"; +}; + &pinctrl { pinctrl-names = "default"; pinctrl-0 = <&rtc_32k>; -@@ -261,10 +304,18 @@ &sdmmc { +@@ -261,10 +328,18 @@ &sdmmc { cap-mmc-highspeed; cap-sd-highspeed; disable-wp;