11c5b7afeSJudy Hsiao// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
21c5b7afeSJudy Hsiao/*
31c5b7afeSJudy Hsiao *
41c5b7afeSJudy Hsiao * This file defines the common audio settings for the child boards
51c5b7afeSJudy Hsiao * using rt5682 codec.
61c5b7afeSJudy Hsiao *
71c5b7afeSJudy Hsiao * Copyright 2022 Google LLC.
81c5b7afeSJudy Hsiao */
91c5b7afeSJudy Hsiao
101c5b7afeSJudy Hsiao/ {
111c5b7afeSJudy Hsiao	/* BOARD-SPECIFIC TOP LEVEL NODES */
121c5b7afeSJudy Hsiao	sound: sound {
131c5b7afeSJudy Hsiao		compatible = "google,sc7280-herobrine";
141c5b7afeSJudy Hsiao		model = "sc7280-rt5682-max98360a-1mic";
151c5b7afeSJudy Hsiao
16*3d11e7e1SSheng-Liang Pan		audio-routing = "Headphone Jack", "HPOL",
171c5b7afeSJudy Hsiao				"Headphone Jack", "HPOR";
181c5b7afeSJudy Hsiao
191c5b7afeSJudy Hsiao		#address-cells = <1>;
201c5b7afeSJudy Hsiao		#size-cells = <0>;
211c5b7afeSJudy Hsiao
22*3d11e7e1SSheng-Liang Pan		status = "okay";
23*3d11e7e1SSheng-Liang Pan
241c5b7afeSJudy Hsiao		dai-link@0 {
251c5b7afeSJudy Hsiao			link-name = "MAX98360";
261c5b7afeSJudy Hsiao			reg = <0>;
271c5b7afeSJudy Hsiao
281c5b7afeSJudy Hsiao			cpu {
291c5b7afeSJudy Hsiao				sound-dai = <&lpass_cpu MI2S_SECONDARY>;
301c5b7afeSJudy Hsiao			};
311c5b7afeSJudy Hsiao
321c5b7afeSJudy Hsiao			codec {
331c5b7afeSJudy Hsiao				sound-dai = <&max98360a>;
341c5b7afeSJudy Hsiao			};
351c5b7afeSJudy Hsiao		};
361c5b7afeSJudy Hsiao
371c5b7afeSJudy Hsiao		dai-link@1 {
381c5b7afeSJudy Hsiao			link-name = "ALC5682";
391c5b7afeSJudy Hsiao			reg = <1>;
401c5b7afeSJudy Hsiao
411c5b7afeSJudy Hsiao			cpu {
421c5b7afeSJudy Hsiao				sound-dai = <&lpass_cpu MI2S_PRIMARY>;
431c5b7afeSJudy Hsiao			};
441c5b7afeSJudy Hsiao
451c5b7afeSJudy Hsiao			codec {
461c5b7afeSJudy Hsiao				sound-dai = <&alc5682 0 /* aif1 */>;
471c5b7afeSJudy Hsiao			};
481c5b7afeSJudy Hsiao		};
491c5b7afeSJudy Hsiao	};
501c5b7afeSJudy Hsiao};
511c5b7afeSJudy Hsiao
521c5b7afeSJudy Hsiaohp_i2c: &i2c2 {
531c5b7afeSJudy Hsiao	clock-frequency = <400000>;
54*3d11e7e1SSheng-Liang Pan	status = "okay";
551c5b7afeSJudy Hsiao
561c5b7afeSJudy Hsiao	alc5682: codec@1a {
571c5b7afeSJudy Hsiao		compatible = "realtek,rt5682s";
581c5b7afeSJudy Hsiao		reg = <0x1a>;
591c5b7afeSJudy Hsiao		pinctrl-names = "default";
601c5b7afeSJudy Hsiao		pinctrl-0 = <&hp_irq>;
611c5b7afeSJudy Hsiao
621c5b7afeSJudy Hsiao		#sound-dai-cells = <1>;
631c5b7afeSJudy Hsiao
641c5b7afeSJudy Hsiao		interrupt-parent = <&tlmm>;
651c5b7afeSJudy Hsiao		interrupts = <101 IRQ_TYPE_EDGE_BOTH>;
661c5b7afeSJudy Hsiao
671c5b7afeSJudy Hsiao		AVDD-supply = <&pp1800_alc5682>;
681c5b7afeSJudy Hsiao		MICVDD-supply = <&pp3300_codec>;
691c5b7afeSJudy Hsiao
701c5b7afeSJudy Hsiao		realtek,dmic1-data-pin = <1>;
711c5b7afeSJudy Hsiao		realtek,dmic1-clk-pin = <2>;
721c5b7afeSJudy Hsiao		realtek,jd-src = <1>;
731c5b7afeSJudy Hsiao		realtek,dmic-clk-rate-hz = <2048000>;
741c5b7afeSJudy Hsiao	};
751c5b7afeSJudy Hsiao};
761c5b7afeSJudy Hsiao
771c5b7afeSJudy Hsiao&lpass_cpu {
781c5b7afeSJudy Hsiao	pinctrl-names = "default";
791c5b7afeSJudy Hsiao	pinctrl-0 = <&mi2s0_data0>, <&mi2s0_data1>, <&mi2s0_mclk>, <&mi2s0_sclk>, <&mi2s0_ws>,
801c5b7afeSJudy Hsiao			<&mi2s1_data0>, <&mi2s1_sclk>, <&mi2s1_ws>;
811c5b7afeSJudy Hsiao
821c5b7afeSJudy Hsiao	#address-cells = <1>;
831c5b7afeSJudy Hsiao	#size-cells = <0>;
841c5b7afeSJudy Hsiao
85*3d11e7e1SSheng-Liang Pan	status = "okay";
86*3d11e7e1SSheng-Liang Pan
871c5b7afeSJudy Hsiao	dai-link@0 {
881c5b7afeSJudy Hsiao		reg = <MI2S_PRIMARY>;
891c5b7afeSJudy Hsiao		qcom,playback-sd-lines = <1>;
901c5b7afeSJudy Hsiao		qcom,capture-sd-lines = <0>;
911c5b7afeSJudy Hsiao	};
921c5b7afeSJudy Hsiao
931c5b7afeSJudy Hsiao	dai-link@1 {
941c5b7afeSJudy Hsiao		reg = <MI2S_SECONDARY>;
951c5b7afeSJudy Hsiao		qcom,playback-sd-lines = <0>;
961c5b7afeSJudy Hsiao	};
971c5b7afeSJudy Hsiao};
981c5b7afeSJudy Hsiao
991c5b7afeSJudy Hsiao&mi2s0_data0 {
1001c5b7afeSJudy Hsiao	drive-strength = <6>;
1011c5b7afeSJudy Hsiao	bias-disable;
1021c5b7afeSJudy Hsiao};
1031c5b7afeSJudy Hsiao
1041c5b7afeSJudy Hsiao&mi2s0_data1 {
1051c5b7afeSJudy Hsiao	drive-strength = <6>;
1061c5b7afeSJudy Hsiao	bias-disable;
1071c5b7afeSJudy Hsiao};
1081c5b7afeSJudy Hsiao
1091c5b7afeSJudy Hsiao&mi2s0_mclk {
1101c5b7afeSJudy Hsiao	drive-strength = <6>;
1111c5b7afeSJudy Hsiao	bias-disable;
1121c5b7afeSJudy Hsiao};
1131c5b7afeSJudy Hsiao
1141c5b7afeSJudy Hsiao&mi2s0_sclk {
1151c5b7afeSJudy Hsiao	drive-strength = <6>;
1161c5b7afeSJudy Hsiao	bias-disable;
1171c5b7afeSJudy Hsiao};
1181c5b7afeSJudy Hsiao
1191c5b7afeSJudy Hsiao&mi2s0_ws {
1201c5b7afeSJudy Hsiao	drive-strength = <6>;
1211c5b7afeSJudy Hsiao	bias-disable;
1221c5b7afeSJudy Hsiao};
123