[PATCH] arm64: dts: rockchip: add rock-pi-4 analog audio

Alex Bee knaerzche at gmail.com
Tue Jun 29 02:06:51 PDT 2021


Hi Adrian,

I've submitted similar patch already. Its part of [1]

There is no headphone detection pin in the schematics, btw.

[1] 
https://patchwork.kernel.org/project/linux-rockchip/cover/20210618181256.27992-1-knaerzche@gmail.com/

Best,

Alex

Am 28.06.21 um 13:30 schrieb Adrian Ratiu:
> This adds the necessary pinctrl and nodes to enable the
> analog audio on rk3399 rock-pi-4 SBCs using the es8316
> codec and the audio-graph-card driver.
>
> Signed-off-by: Adrian Ratiu <adrian.ratiu at collabora.com>
> ---
>   .../boot/dts/rockchip/rk3399-rock-pi-4.dtsi   | 38 +++++++++++++++++++
>   1 file changed, 38 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi
> index b28888ea9262..77781d9150ac 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi
> +++ b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi
> @@ -128,6 +128,12 @@ vdd_log: vdd-log {
>   		regulator-max-microvolt = <1400000>;
>   		vin-supply = <&vcc5v0_sys>;
>   	};
> +
> +	sound {
> +		compatible = "audio-graph-card";
> +		label = "rockchip,rk3399";
> +		dais = <&i2s0_p0>;
> +	};
>   };
>   
>   &cpu_l0 {
> @@ -422,6 +428,24 @@ &i2c1 {
>   	i2c-scl-rising-time-ns = <300>;
>   	i2c-scl-falling-time-ns = <15>;
>   	status = "okay";
> +
> +	es8316: codec at 11 {
> +		compatible = "everest,es8316";
> +		reg = <0x11>;
> +		clocks = <&cru SCLK_I2S_8CH_OUT>;
> +		clock-names = "mclk";
> +		pinctrl-names = "default";
> +		pinctrl-0 = <&hp_det_pin>;
> +		interrupt-parent = <&gpio1>;
> +		interrupts = <RK_PA0 IRQ_TYPE_LEVEL_HIGH>;
> +		#sound-dai-cells = <0>;
> +
> +		port {
> +			es8316_p0_0: endpoint {
> +				remote-endpoint = <&i2s0_p0_0>;
> +			};
> +		};
> +	};
>   };
>   
>   &i2c3 {
> @@ -441,6 +465,14 @@ &i2s0 {
>   	rockchip,capture-channels = <2>;
>   	rockchip,playback-channels = <2>;
>   	status = "okay";
> +
> +	i2s0_p0: port {
> +		i2s0_p0_0: endpoint {
> +			dai-format = "i2s";
> +			mclk-fs = <256>;
> +			remote-endpoint = <&es8316_p0_0>;
> +		};
> +	};
>   };
>   
>   &i2s1 {
> @@ -556,6 +588,12 @@ wifi_host_wake_l: wifi-host-wake-l {
>   			rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>;
>   		};
>   	};
> +
> +	es8316 {
> +		hp_det_pin: hp-det-pin {
> +			rockchip,pins = <1 RK_PA0 RK_FUNC_GPIO &pcfg_pull_up>;
> +		};
> +	};
>   };
>   
>   &pwm2 {



More information about the Linux-rockchip mailing list