From a4a177f7367d9d5eb734c2c28119dfda0ef63728 Mon Sep 17 00:00:00 2001 From: Jianqun Xu Date: Mon, 14 Nov 2022 15:48:51 +0800 Subject: [PATCH] ARM: dts: rockchip: rk3288-evb enable sound with rt5640 Change-Id: Ibe3f218f9b3283c82329500486fd73298fc3b0d6 Signed-off-by: Jacob Chen Signed-off-by: Jianqun Xu --- arch/arm/boot/dts/rk3288-evb-rk808-linux.dts | 4 -- arch/arm/boot/dts/rk3288-evb.dtsi | 58 ++++++++++++++++++++ 2 files changed, 58 insertions(+), 4 deletions(-) diff --git a/arch/arm/boot/dts/rk3288-evb-rk808-linux.dts b/arch/arm/boot/dts/rk3288-evb-rk808-linux.dts index f630496fcfdc..9d19736b1170 100644 --- a/arch/arm/boot/dts/rk3288-evb-rk808-linux.dts +++ b/arch/arm/boot/dts/rk3288-evb-rk808-linux.dts @@ -498,10 +498,6 @@ status = "okay"; }; -&sound { - status = "okay"; -}; - &uart2 { status = "disabled"; }; diff --git a/arch/arm/boot/dts/rk3288-evb.dtsi b/arch/arm/boot/dts/rk3288-evb.dtsi index ae934d669784..03d9c5f0533c 100644 --- a/arch/arm/boot/dts/rk3288-evb.dtsi +++ b/arch/arm/boot/dts/rk3288-evb.dtsi @@ -47,6 +47,45 @@ }; }; + sound: sound { + compatible = "simple-audio-card"; + simple-audio-card,format = "i2s"; + simple-audio-card,name = "rockchip,rt5640-codec"; + simple-audio-card,mclk-fs = <512>; + status = "okay"; + + simple-audio-card,dai-link@0 { + format = "i2s"; + cpu { + sound-dai = <&i2s>; + }; + + codec { + sound-dai = <&rt5640>; + }; + }; + + simple-audio-card,dai-link@1 { + format = "i2s"; + cpu { + sound-dai = <&i2s>; + }; + + codec { + sound-dai = <&hdmi>; + }; + }; + }; + + hdmi_analog_sound: hdmi-analog-sound { + compatible = "rockchip,rk3288-hdmi-analog", + "rockchip,rk3368-hdmi-analog"; + rockchip,model = "rockchip,rt5640-codec"; + rockchip,cpu = <&i2s>; + rockchip,codec = <&rt5640>, <&hdmi>; + status = "disabled"; + }; + backlight: backlight { compatible = "pwm-backlight"; brightness-levels = < @@ -286,6 +325,25 @@ status = "okay"; }; +&i2c2 { + status = "okay"; + + rt5640: rt5640@1c { + #sound-dai-cells = <0>; + compatible = "realtek,rt5640"; + reg = <0x1c>; + clocks = <&cru SCLK_I2S0_OUT>; + clock-names = "mclk"; + interrupt-parent = <&gpio7>; + interrupts = <7 IRQ_TYPE_EDGE_FALLING>; + }; +}; + +&i2s { + #sound-dai-cells = <0>; + status = "okay"; +}; + &wdt { status = "okay"; };