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