Commit 1938b585 authored by Nicolas Frattaroli's avatar Nicolas Frattaroli Committed by Heiko Stuebner
Browse files

arm64: dts: rockchip: Add analog audio on Quartz64



On the Quartz64 Model A, the I2S1 TDM controller is connected
to the rk817 codec in I2S mode. Enabling it and adding the
necessary simple-sound-card and codec nodes allows for analog
audio output on the PINE64 Quartz64 Model A SBC.

Signed-off-by: default avatarNicolas Frattaroli <frattaroli.nicolas@gmail.com>
Link: https://lore.kernel.org/r/20211016105354.116513-5-frattaroli.nicolas@gmail.com


[some property sorting]
Signed-off-by: default avatarHeiko Stuebner <heiko@sntech.de>
parent ef5c9135
Loading
Loading
Loading
Loading
+32 −3
Original line number Diff line number Diff line
@@ -58,6 +58,21 @@ led-diy {
		};
	};

	rk817-sound {
		compatible = "simple-audio-card";
		simple-audio-card,format = "i2s";
		simple-audio-card,name = "Analog RK817";
		simple-audio-card,mclk-fs = <256>;

		simple-audio-card,cpu {
			sound-dai = <&i2s1_8ch>;
		};

		simple-audio-card,codec {
			sound-dai = <&rk817>;
		};
	};

	spdif_dit: spdif-dit {
		compatible = "linux,spdif-dit";
		#sound-dai-cells = <0>;
@@ -215,13 +230,17 @@ rk817: pmic@20 {
		reg = <0x20>;
		interrupt-parent = <&gpio0>;
		interrupts = <RK_PA3 IRQ_TYPE_LEVEL_LOW>;
		assigned-clocks = <&cru I2S1_MCLKOUT_TX>;
		assigned-clock-parents = <&cru CLK_I2S1_8CH_TX>;
		clock-names = "mclk";
		clocks = <&cru I2S1_MCLKOUT_TX>;
		clock-output-names = "rk808-clkout1", "rk808-clkout2";

		#clock-cells = <1>;
		pinctrl-names = "default";
		pinctrl-0 = <&pmic_int_l>;
		pinctrl-0 = <&pmic_int_l>, <&i2s1m0_mclk>;
		rockchip,system-power-controller;
		#sound-dai-cells = <0>;
		wakeup-source;
		#clock-cells = <1>;

		vcc1-supply = <&vcc_sys>;
		vcc2-supply = <&vcc_sys>;
@@ -410,6 +429,16 @@ regulator-state-mem {
	};
};

&i2s1_8ch {
	pinctrl-names = "default";
	pinctrl-0 = <&i2s1m0_sclktx
		     &i2s1m0_lrcktx
		     &i2s1m0_sdi0
		     &i2s1m0_sdo0>;
	rockchip,trcm-sync-tx-only;
	status = "okay";
};

&mdio1 {
	rgmii_phy1: ethernet-phy@0 {
		compatible = "ethernet-phy-ieee802.3-c22";