106c73a39SSrinivasa Rao Mandadapu// SPDX-License-Identifier: BSD-3-Clause 206c73a39SSrinivasa Rao Mandadapu/* 306c73a39SSrinivasa Rao Mandadapu * sc7280 device tree source for boards using Max98360 and wcd9385 codec 406c73a39SSrinivasa Rao Mandadapu * 506c73a39SSrinivasa Rao Mandadapu * Copyright (c) 2022, The Linux Foundation. All rights reserved. 606c73a39SSrinivasa Rao Mandadapu */ 706c73a39SSrinivasa Rao Mandadapu 8*29e0b604SSrinivasa Rao Mandadapu/ { 9*29e0b604SSrinivasa Rao Mandadapu /* BOARD-SPECIFIC TOP LEVEL NODES */ 10*29e0b604SSrinivasa Rao Mandadapu sound: sound { 11*29e0b604SSrinivasa Rao Mandadapu compatible = "google,sc7280-herobrine"; 12*29e0b604SSrinivasa Rao Mandadapu model = "sc7280-wcd938x-max98360a-1mic"; 13*29e0b604SSrinivasa Rao Mandadapu 14*29e0b604SSrinivasa Rao Mandadapu audio-routing = 15*29e0b604SSrinivasa Rao Mandadapu "IN1_HPHL", "HPHL_OUT", 16*29e0b604SSrinivasa Rao Mandadapu "IN2_HPHR", "HPHR_OUT", 17*29e0b604SSrinivasa Rao Mandadapu "AMIC1", "MIC BIAS1", 18*29e0b604SSrinivasa Rao Mandadapu "AMIC2", "MIC BIAS2", 19*29e0b604SSrinivasa Rao Mandadapu "VA DMIC0", "MIC BIAS1", 20*29e0b604SSrinivasa Rao Mandadapu "VA DMIC1", "MIC BIAS1", 21*29e0b604SSrinivasa Rao Mandadapu "VA DMIC2", "MIC BIAS3", 22*29e0b604SSrinivasa Rao Mandadapu "VA DMIC3", "MIC BIAS3", 23*29e0b604SSrinivasa Rao Mandadapu "TX SWR_ADC0", "ADC1_OUTPUT", 24*29e0b604SSrinivasa Rao Mandadapu "TX SWR_ADC1", "ADC2_OUTPUT", 25*29e0b604SSrinivasa Rao Mandadapu "TX SWR_ADC2", "ADC3_OUTPUT", 26*29e0b604SSrinivasa Rao Mandadapu "TX SWR_DMIC0", "DMIC1_OUTPUT", 27*29e0b604SSrinivasa Rao Mandadapu "TX SWR_DMIC1", "DMIC2_OUTPUT", 28*29e0b604SSrinivasa Rao Mandadapu "TX SWR_DMIC2", "DMIC3_OUTPUT", 29*29e0b604SSrinivasa Rao Mandadapu "TX SWR_DMIC3", "DMIC4_OUTPUT", 30*29e0b604SSrinivasa Rao Mandadapu "TX SWR_DMIC4", "DMIC5_OUTPUT", 31*29e0b604SSrinivasa Rao Mandadapu "TX SWR_DMIC5", "DMIC6_OUTPUT", 32*29e0b604SSrinivasa Rao Mandadapu "TX SWR_DMIC6", "DMIC7_OUTPUT", 33*29e0b604SSrinivasa Rao Mandadapu "TX SWR_DMIC7", "DMIC8_OUTPUT"; 34*29e0b604SSrinivasa Rao Mandadapu 35*29e0b604SSrinivasa Rao Mandadapu #address-cells = <1>; 36*29e0b604SSrinivasa Rao Mandadapu #size-cells = <0>; 37*29e0b604SSrinivasa Rao Mandadapu 38*29e0b604SSrinivasa Rao Mandadapu dai-link@0 { 39*29e0b604SSrinivasa Rao Mandadapu link-name = "MAX98360A"; 40*29e0b604SSrinivasa Rao Mandadapu reg = <0>; 41*29e0b604SSrinivasa Rao Mandadapu 42*29e0b604SSrinivasa Rao Mandadapu cpu { 43*29e0b604SSrinivasa Rao Mandadapu sound-dai = <&lpass_cpu MI2S_SECONDARY>; 44*29e0b604SSrinivasa Rao Mandadapu }; 45*29e0b604SSrinivasa Rao Mandadapu 46*29e0b604SSrinivasa Rao Mandadapu codec { 47*29e0b604SSrinivasa Rao Mandadapu sound-dai = <&max98360a>; 48*29e0b604SSrinivasa Rao Mandadapu }; 49*29e0b604SSrinivasa Rao Mandadapu }; 50*29e0b604SSrinivasa Rao Mandadapu 51*29e0b604SSrinivasa Rao Mandadapu dai-link@1 { 52*29e0b604SSrinivasa Rao Mandadapu link-name = "DisplayPort"; 53*29e0b604SSrinivasa Rao Mandadapu reg = <1>; 54*29e0b604SSrinivasa Rao Mandadapu 55*29e0b604SSrinivasa Rao Mandadapu cpu { 56*29e0b604SSrinivasa Rao Mandadapu sound-dai = <&lpass_cpu LPASS_DP_RX>; 57*29e0b604SSrinivasa Rao Mandadapu }; 58*29e0b604SSrinivasa Rao Mandadapu 59*29e0b604SSrinivasa Rao Mandadapu codec { 60*29e0b604SSrinivasa Rao Mandadapu sound-dai = <&mdss_dp>; 61*29e0b604SSrinivasa Rao Mandadapu }; 62*29e0b604SSrinivasa Rao Mandadapu }; 63*29e0b604SSrinivasa Rao Mandadapu 64*29e0b604SSrinivasa Rao Mandadapu dai-link@2 { 65*29e0b604SSrinivasa Rao Mandadapu link-name = "WCD9385 Playback"; 66*29e0b604SSrinivasa Rao Mandadapu reg = <2>; 67*29e0b604SSrinivasa Rao Mandadapu 68*29e0b604SSrinivasa Rao Mandadapu cpu { 69*29e0b604SSrinivasa Rao Mandadapu sound-dai = <&lpass_cpu LPASS_CDC_DMA_RX0>; 70*29e0b604SSrinivasa Rao Mandadapu }; 71*29e0b604SSrinivasa Rao Mandadapu 72*29e0b604SSrinivasa Rao Mandadapu codec { 73*29e0b604SSrinivasa Rao Mandadapu sound-dai = <&wcd9385 0>, <&swr0 0>, <&lpass_rx_macro 0>; 74*29e0b604SSrinivasa Rao Mandadapu }; 75*29e0b604SSrinivasa Rao Mandadapu }; 76*29e0b604SSrinivasa Rao Mandadapu 77*29e0b604SSrinivasa Rao Mandadapu dai-link@3 { 78*29e0b604SSrinivasa Rao Mandadapu link-name = "WCD9385 Capture"; 79*29e0b604SSrinivasa Rao Mandadapu reg = <3>; 80*29e0b604SSrinivasa Rao Mandadapu 81*29e0b604SSrinivasa Rao Mandadapu cpu { 82*29e0b604SSrinivasa Rao Mandadapu sound-dai = <&lpass_cpu LPASS_CDC_DMA_TX3>; 83*29e0b604SSrinivasa Rao Mandadapu }; 84*29e0b604SSrinivasa Rao Mandadapu 85*29e0b604SSrinivasa Rao Mandadapu codec { 86*29e0b604SSrinivasa Rao Mandadapu sound-dai = <&wcd9385 1>, <&swr1 0>, <&lpass_tx_macro 0>; 87*29e0b604SSrinivasa Rao Mandadapu }; 88*29e0b604SSrinivasa Rao Mandadapu }; 89*29e0b604SSrinivasa Rao Mandadapu 90*29e0b604SSrinivasa Rao Mandadapu dai-link@4 { 91*29e0b604SSrinivasa Rao Mandadapu link-name = "DMIC"; 92*29e0b604SSrinivasa Rao Mandadapu reg = <4>; 93*29e0b604SSrinivasa Rao Mandadapu 94*29e0b604SSrinivasa Rao Mandadapu cpu { 95*29e0b604SSrinivasa Rao Mandadapu sound-dai = <&lpass_cpu LPASS_CDC_DMA_VA_TX0>; 96*29e0b604SSrinivasa Rao Mandadapu }; 97*29e0b604SSrinivasa Rao Mandadapu 98*29e0b604SSrinivasa Rao Mandadapu codec { 99*29e0b604SSrinivasa Rao Mandadapu sound-dai = <&lpass_va_macro 0>; 100*29e0b604SSrinivasa Rao Mandadapu }; 101*29e0b604SSrinivasa Rao Mandadapu }; 102*29e0b604SSrinivasa Rao Mandadapu }; 103*29e0b604SSrinivasa Rao Mandadapu}; 104*29e0b604SSrinivasa Rao Mandadapu 105d5a959f9SSrinivasa Rao Mandadapu/* ADDITIONS TO NODES DEFINED IN PARENT DEVICE TREE FILES */ 106d5a959f9SSrinivasa Rao Mandadapu 107f10c73acSSrinivasa Rao Mandadapu&lpass_cpu { 108f10c73acSSrinivasa Rao Mandadapu status = "okay"; 109f10c73acSSrinivasa Rao Mandadapu 110f10c73acSSrinivasa Rao Mandadapu pinctrl-names = "default"; 111f10c73acSSrinivasa Rao Mandadapu pinctrl-0 = <&mi2s1_data0>, <&mi2s1_sclk>, <&mi2s1_ws>; 112f10c73acSSrinivasa Rao Mandadapu 113f10c73acSSrinivasa Rao Mandadapu dai-link@1 { 114f10c73acSSrinivasa Rao Mandadapu reg = <MI2S_SECONDARY>; 115f10c73acSSrinivasa Rao Mandadapu qcom,playback-sd-lines = <0>; 116f10c73acSSrinivasa Rao Mandadapu }; 117f10c73acSSrinivasa Rao Mandadapu 118f10c73acSSrinivasa Rao Mandadapu dai-link@5 { 119f10c73acSSrinivasa Rao Mandadapu reg = <LPASS_DP_RX>; 120f10c73acSSrinivasa Rao Mandadapu }; 121f10c73acSSrinivasa Rao Mandadapu 122f10c73acSSrinivasa Rao Mandadapu dai-link@6 { 123f10c73acSSrinivasa Rao Mandadapu reg = <LPASS_CDC_DMA_RX0>; 124f10c73acSSrinivasa Rao Mandadapu }; 125f10c73acSSrinivasa Rao Mandadapu 126f10c73acSSrinivasa Rao Mandadapu dai-link@19 { 127f10c73acSSrinivasa Rao Mandadapu reg = <LPASS_CDC_DMA_TX3>; 128f10c73acSSrinivasa Rao Mandadapu }; 129f10c73acSSrinivasa Rao Mandadapu 130f10c73acSSrinivasa Rao Mandadapu dai-link@25 { 131f10c73acSSrinivasa Rao Mandadapu reg = <LPASS_CDC_DMA_VA_TX0>; 132f10c73acSSrinivasa Rao Mandadapu }; 133f10c73acSSrinivasa Rao Mandadapu}; 134f10c73acSSrinivasa Rao Mandadapu 135d5a959f9SSrinivasa Rao Mandadapu&lpass_rx_macro { 136d5a959f9SSrinivasa Rao Mandadapu status = "okay"; 137d5a959f9SSrinivasa Rao Mandadapu}; 138d5a959f9SSrinivasa Rao Mandadapu 139d5a959f9SSrinivasa Rao Mandadapu&lpass_tx_macro { 140d5a959f9SSrinivasa Rao Mandadapu status = "okay"; 141d5a959f9SSrinivasa Rao Mandadapu}; 142d5a959f9SSrinivasa Rao Mandadapu 143d5a959f9SSrinivasa Rao Mandadapu&lpass_va_macro { 144d5a959f9SSrinivasa Rao Mandadapu status = "okay"; 145d5a959f9SSrinivasa Rao Mandadapu}; 146d5a959f9SSrinivasa Rao Mandadapu 147d5a959f9SSrinivasa Rao Mandadapu&swr0 { 148d5a959f9SSrinivasa Rao Mandadapu status = "okay"; 149d5a959f9SSrinivasa Rao Mandadapu}; 150d5a959f9SSrinivasa Rao Mandadapu 151d5a959f9SSrinivasa Rao Mandadapu&swr1 { 152d5a959f9SSrinivasa Rao Mandadapu status = "okay"; 153d5a959f9SSrinivasa Rao Mandadapu}; 154d5a959f9SSrinivasa Rao Mandadapu 1550a3a56a9SSrinivasa Rao Mandadapu&wcd9385 { 1560a3a56a9SSrinivasa Rao Mandadapu status = "okay"; 1570a3a56a9SSrinivasa Rao Mandadapu}; 1580a3a56a9SSrinivasa Rao Mandadapu 15949ac5e0cSSrinivasa Rao Mandadapu/* PINCTRL */ 16049ac5e0cSSrinivasa Rao Mandadapu 16149ac5e0cSSrinivasa Rao Mandadapu&lpass_dmic01_clk { 16249ac5e0cSSrinivasa Rao Mandadapu drive-strength = <8>; 16349ac5e0cSSrinivasa Rao Mandadapu bias-disable; 16449ac5e0cSSrinivasa Rao Mandadapu}; 16549ac5e0cSSrinivasa Rao Mandadapu 16649ac5e0cSSrinivasa Rao Mandadapu&lpass_dmic01_data { 16749ac5e0cSSrinivasa Rao Mandadapu bias-pull-down; 16849ac5e0cSSrinivasa Rao Mandadapu}; 16949ac5e0cSSrinivasa Rao Mandadapu 17049ac5e0cSSrinivasa Rao Mandadapu&lpass_dmic23_clk { 17149ac5e0cSSrinivasa Rao Mandadapu drive-strength = <8>; 17249ac5e0cSSrinivasa Rao Mandadapu bias-disable; 17349ac5e0cSSrinivasa Rao Mandadapu}; 17449ac5e0cSSrinivasa Rao Mandadapu 17549ac5e0cSSrinivasa Rao Mandadapu&lpass_dmic23_data { 17649ac5e0cSSrinivasa Rao Mandadapu bias-pull-down; 17749ac5e0cSSrinivasa Rao Mandadapu}; 17849ac5e0cSSrinivasa Rao Mandadapu 17949ac5e0cSSrinivasa Rao Mandadapu&lpass_rx_swr_clk { 18049ac5e0cSSrinivasa Rao Mandadapu drive-strength = <2>; 18149ac5e0cSSrinivasa Rao Mandadapu slew-rate = <1>; 18249ac5e0cSSrinivasa Rao Mandadapu bias-disable; 18349ac5e0cSSrinivasa Rao Mandadapu}; 18449ac5e0cSSrinivasa Rao Mandadapu 18549ac5e0cSSrinivasa Rao Mandadapu&lpass_rx_swr_data { 18649ac5e0cSSrinivasa Rao Mandadapu drive-strength = <2>; 18749ac5e0cSSrinivasa Rao Mandadapu slew-rate = <1>; 18849ac5e0cSSrinivasa Rao Mandadapu bias-bus-hold; 18949ac5e0cSSrinivasa Rao Mandadapu}; 19049ac5e0cSSrinivasa Rao Mandadapu 19149ac5e0cSSrinivasa Rao Mandadapu&lpass_tx_swr_clk { 19249ac5e0cSSrinivasa Rao Mandadapu drive-strength = <2>; 19349ac5e0cSSrinivasa Rao Mandadapu slew-rate = <1>; 19449ac5e0cSSrinivasa Rao Mandadapu bias-disable; 19549ac5e0cSSrinivasa Rao Mandadapu}; 19649ac5e0cSSrinivasa Rao Mandadapu 19749ac5e0cSSrinivasa Rao Mandadapu&lpass_tx_swr_data { 19849ac5e0cSSrinivasa Rao Mandadapu drive-strength = <2>; 19949ac5e0cSSrinivasa Rao Mandadapu slew-rate = <1>; 20049ac5e0cSSrinivasa Rao Mandadapu bias-bus-hold; 20149ac5e0cSSrinivasa Rao Mandadapu}; 20249ac5e0cSSrinivasa Rao Mandadapu 20306c73a39SSrinivasa Rao Mandadapu&mi2s1_data0 { 20406c73a39SSrinivasa Rao Mandadapu drive-strength = <6>; 20506c73a39SSrinivasa Rao Mandadapu bias-disable; 20606c73a39SSrinivasa Rao Mandadapu}; 20706c73a39SSrinivasa Rao Mandadapu 20806c73a39SSrinivasa Rao Mandadapu&mi2s1_sclk { 20906c73a39SSrinivasa Rao Mandadapu drive-strength = <6>; 21006c73a39SSrinivasa Rao Mandadapu bias-disable; 21106c73a39SSrinivasa Rao Mandadapu}; 21206c73a39SSrinivasa Rao Mandadapu 21306c73a39SSrinivasa Rao Mandadapu&mi2s1_ws { 21406c73a39SSrinivasa Rao Mandadapu drive-strength = <6>; 21506c73a39SSrinivasa Rao Mandadapu}; 216