--- a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi 2020-04-08 11:27:04.486670792 +0000 +++ b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi 2020-04-10 19:59:01.945704455 +0000 @@ -34,6 +34,12 @@ reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>; }; + sound { + compatible = "audio-graph-card"; + label = "rockchip,rk3399"; + dais = <&i2s0_p0>; + }; + vcc12v_dcin: dc-12v { compatible = "regulator-fixed"; regulator-name = "vcc12v_dcin"; @@ -132,6 +138,7 @@ regulator-max-microvolt = <1400000>; vin-supply = <&vcc5v0_sys>; }; + }; &cpu_l0 { @@ -434,6 +441,23 @@ i2c-scl-rising-time-ns = <300>; i2c-scl-falling-time-ns = <15>; status = "okay"; + + es8316: codec@11 { + compatible = "everest,es8316"; + reg = <0x11>; + clocks = <&cru SCLK_I2S_8CH_OUT>; + clock-names = "mclk"; + pinctrl-names = "default"; + pinctrl-0 = <&i2s_8ch_mclk>; + #sound-dai-cells = <0>; + + port { + es8316_p0_0: endpoint { + remote-endpoint = <&i2s0_p0_0>; + }; + }; + }; + }; &i2c3 { @@ -452,6 +476,15 @@ rockchip,playback-channels = <8>; rockchip,capture-channels = <8>; status = "okay"; + + i2s0_p0: port { + i2s0_p0_0: endpoint { + dai-format = "i2s"; + mclk-fs = <256>; + remote-endpoint = <&es8316_p0_0>; + }; + }; + }; &i2s1 { @@ -583,6 +616,21 @@ rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>; }; }; + + i2s0 { + i2s0_8ch_bus: i2s0-8ch-bus { + rockchip,pins = + <3 24 1 &pcfg_pull_none>, + <3 25 1 &pcfg_pull_none>, + <3 26 1 &pcfg_pull_none>, + <3 27 1 &pcfg_pull_none>, + <3 31 1 &pcfg_pull_none>; + }; + + i2s_8ch_mclk: i2s-8ch-mclk { + rockchip,pins = <4 0 1 &pcfg_pull_none>; + }; + }; }; &pwm2 {