1 # SPDX-License-Identifier: (GPL-2.0-only OR BS 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 %YAML 1.2 2 %YAML 1.2 3 --- 3 --- 4 $id: http://devicetree.org/schemas/sound/qcom, 4 $id: http://devicetree.org/schemas/sound/qcom,lpass-tx-macro.yaml# 5 $schema: http://devicetree.org/meta-schemas/co 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 6 6 7 title: LPASS(Low Power Audio Subsystem) TX Mac !! 7 title: LPASS(Low Power Audio Subsystem) TX Macro audio codec DT bindings 8 8 9 maintainers: 9 maintainers: 10 - Srinivas Kandagatla <srinivas.kandagatla@li 10 - Srinivas Kandagatla <srinivas.kandagatla@linaro.org> 11 11 12 properties: 12 properties: 13 compatible: 13 compatible: 14 oneOf: !! 14 enum: 15 - enum: !! 15 - qcom,sc7280-lpass-tx-macro 16 - qcom,sc7280-lpass-tx-macro !! 16 - qcom,sm8250-lpass-tx-macro 17 - qcom,sm6115-lpass-tx-macro !! 17 - qcom,sm8450-lpass-tx-macro 18 - qcom,sm8250-lpass-tx-macro !! 18 - qcom,sc8280xp-lpass-tx-macro 19 - qcom,sm8450-lpass-tx-macro << 20 - qcom,sm8550-lpass-tx-macro << 21 - qcom,sc8280xp-lpass-tx-macro << 22 - items: << 23 - enum: << 24 - qcom,sm8650-lpass-tx-macro << 25 - qcom,x1e80100-lpass-tx-macro << 26 - const: qcom,sm8550-lpass-tx-macro << 27 19 28 reg: 20 reg: 29 maxItems: 1 21 maxItems: 1 30 22 31 "#sound-dai-cells": 23 "#sound-dai-cells": 32 const: 1 24 const: 1 33 25 34 '#clock-cells': 26 '#clock-cells': 35 const: 0 27 const: 0 36 28 37 clocks: 29 clocks: 38 minItems: 3 << 39 maxItems: 5 30 maxItems: 5 40 31 41 clock-names: 32 clock-names: 42 minItems: 3 !! 33 oneOf: 43 maxItems: 5 !! 34 - items: #for ADSP based platforms >> 35 - const: mclk >> 36 - const: npl >> 37 - const: macro >> 38 - const: dcodec >> 39 - const: fsgen >> 40 - items: #for ADSP bypass based platforms >> 41 - const: mclk >> 42 - const: npl >> 43 - const: fsgen 44 44 45 clock-output-names: 45 clock-output-names: 46 maxItems: 1 !! 46 items: >> 47 - const: mclk 47 48 48 power-domains: 49 power-domains: 49 maxItems: 2 50 maxItems: 2 50 51 51 power-domain-names: 52 power-domain-names: 52 items: 53 items: 53 - const: macro 54 - const: macro 54 - const: dcodec 55 - const: dcodec 55 56 56 qcom,dmic-sample-rate: 57 qcom,dmic-sample-rate: 57 description: dmic sample rate 58 description: dmic sample rate 58 $ref: /schemas/types.yaml#/definitions/uin 59 $ref: /schemas/types.yaml#/definitions/uint32 59 60 60 required: 61 required: 61 - compatible 62 - compatible 62 - reg 63 - reg 63 - "#sound-dai-cells" 64 - "#sound-dai-cells" 64 65 65 allOf: !! 66 additionalProperties: false 66 - $ref: dai-common.yaml# << 67 - if: << 68 properties: << 69 compatible: << 70 enum: << 71 - qcom,sc7280-lpass-tx-macro << 72 then: << 73 properties: << 74 clock-names: << 75 oneOf: << 76 - items: # for ADSP based platfo << 77 - const: mclk << 78 - const: npl << 79 - const: macro << 80 - const: dcodec << 81 - const: fsgen << 82 - items: # for ADSP bypass based << 83 - const: mclk << 84 - const: npl << 85 - const: fsgen << 86 << 87 - if: << 88 properties: << 89 compatible: << 90 enum: << 91 - qcom,sc8280xp-lpass-tx-macro << 92 - qcom,sm8250-lpass-tx-macro << 93 - qcom,sm8450-lpass-tx-macro << 94 then: << 95 properties: << 96 clocks: << 97 minItems: 5 << 98 maxItems: 5 << 99 clock-names: << 100 items: << 101 - const: mclk << 102 - const: npl << 103 - const: macro << 104 - const: dcodec << 105 - const: fsgen << 106 << 107 - if: << 108 properties: << 109 compatible: << 110 enum: << 111 - qcom,sm6115-lpass-tx-macro << 112 then: << 113 properties: << 114 clocks: << 115 minItems: 4 << 116 maxItems: 4 << 117 clock-names: << 118 items: << 119 - const: mclk << 120 - const: npl << 121 - const: dcodec << 122 - const: fsgen << 123 << 124 - if: << 125 properties: << 126 compatible: << 127 contains: << 128 enum: << 129 - qcom,sm8550-lpass-tx-macro << 130 then: << 131 properties: << 132 clocks: << 133 minItems: 4 << 134 maxItems: 4 << 135 clock-names: << 136 items: << 137 - const: mclk << 138 - const: macro << 139 - const: dcodec << 140 - const: fsgen << 141 << 142 unevaluatedProperties: false << 143 67 144 examples: 68 examples: 145 - | 69 - | 146 #include <dt-bindings/sound/qcom,q6afe.h> 70 #include <dt-bindings/sound/qcom,q6afe.h> 147 codec@3220000 { 71 codec@3220000 { 148 compatible = "qcom,sm8250-lpass-tx-macro 72 compatible = "qcom,sm8250-lpass-tx-macro"; 149 reg = <0x3220000 0x1000>; 73 reg = <0x3220000 0x1000>; 150 #sound-dai-cells = <1>; 74 #sound-dai-cells = <1>; 151 #clock-cells = <0>; 75 #clock-cells = <0>; 152 clocks = <&aoncc 0>, 76 clocks = <&aoncc 0>, 153 <&aoncc 1>, 77 <&aoncc 1>, 154 <&q6afecc LPASS_HW_MACRO_VOTE L 78 <&q6afecc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>, 155 <&q6afecc LPASS_HW_DCODEC_VOTE 79 <&q6afecc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>, 156 <&vamacro>; 80 <&vamacro>; 157 clock-names = "mclk", "npl", "macro", "d 81 clock-names = "mclk", "npl", "macro", "dcodec", "fsgen"; 158 clock-output-names = "mclk"; 82 clock-output-names = "mclk"; 159 qcom,dmic-sample-rate = <600000>; 83 qcom,dmic-sample-rate = <600000>; 160 }; 84 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.