1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: "http://devicetree.org/schemas/sound/qcom,q6dsp-lpass-ports.yaml#" 5$schema: "http://devicetree.org/meta-schemas/core.yaml#" 6 7title: Qualcomm DSP LPASS(Low Power Audio SubSystem) Audio Ports 8 9maintainers: 10 - Srinivas Kandagatla <srinivas.kandagatla@linaro.org> 11 12description: | 13 This binding describes the Qualcomm DSP LPASS Audio ports 14 15properties: 16 compatible: 17 enum: 18 - qcom,q6afe-dais 19 20 '#sound-dai-cells': 21 const: 1 22 23 '#address-cells': 24 const: 1 25 26 '#size-cells': 27 const: 0 28 29#Digital Audio Interfaces 30patternProperties: 31 '^dai@[0-9]+$': 32 type: object 33 description: 34 Q6DSP Digital Audio Interfaces. 35 36 properties: 37 reg: 38 description: 39 Digital Audio Interface ID 40 41 qcom,sd-lines: 42 $ref: /schemas/types.yaml#/definitions/uint32-array 43 description: 44 List of serial data lines used by this dai.should be one or more of the 0-3 sd lines. 45 minItems: 1 46 maxItems: 4 47 uniqueItems: true 48 items: 49 minimum: 0 50 maximum: 3 51 52 qcom,tdm-sync-mode: 53 $ref: /schemas/types.yaml#/definitions/uint32 54 enum: [0, 1, 2] 55 description: 56 TDM Synchronization mode 57 0 = Short sync bit mode 58 1 = Long sync mode 59 2 = Short sync slot mode 60 61 qcom,tdm-sync-src: 62 $ref: /schemas/types.yaml#/definitions/uint32 63 enum: [0, 1] 64 description: 65 TDM Synchronization source 66 0 = External source 67 1 = Internal source 68 69 qcom,tdm-data-out: 70 $ref: /schemas/types.yaml#/definitions/uint32 71 enum: [0, 1] 72 description: 73 TDM Data out signal to drive with other masters 74 0 = Disable 75 1 = Enable 76 77 qcom,tdm-invert-sync: 78 $ref: /schemas/types.yaml#/definitions/uint32 79 enum: [0, 1] 80 description: 81 TDM Invert the sync 82 0 = Normal 83 1 = Invert 84 85 qcom,tdm-data-delay: 86 $ref: /schemas/types.yaml#/definitions/uint32 87 enum: [0, 1, 2] 88 description: 89 TDM Number of bit clock to delay data 90 0 = 0 bit clock cycle 91 1 = 1 bit clock cycle 92 2 = 2 bit clock cycle 93 94 qcom,tdm-data-align: 95 $ref: /schemas/types.yaml#/definitions/uint32 96 enum: [0, 1] 97 description: 98 Indicate how data is packed within the slot. For example, 32 slot 99 width in case of sample bit width is 24TDM Invert the sync. 100 0 = MSB 101 1 = LSB 102 103 required: 104 - reg 105 106 allOf: 107 - if: 108 properties: 109 reg: 110 contains: 111 # TDM DAI ID range from PRIMARY_TDM_RX_0 - QUINARY_TDM_TX_7 112 items: 113 minimum: 24 114 maximum: 103 115 then: 116 required: 117 - qcom,tdm-sync-mode 118 - qcom,tdm-sync-src 119 - qcom,tdm-data-out 120 - qcom,tdm-invert-sync 121 - qcom,tdm-data-delay 122 - qcom,tdm-data-align 123 124 - if: 125 properties: 126 reg: 127 contains: 128 # MI2S DAI ID range PRIMARY_MI2S_RX - QUATERNARY_MI2S_TX and 129 # QUINARY_MI2S_RX - QUINARY_MI2S_TX 130 items: 131 oneOf: 132 - minimum: 16 133 maximum: 23 134 - minimum: 127 135 maximum: 128 136 then: 137 required: 138 - qcom,sd-lines 139 140 additionalProperties: false 141 142required: 143 - compatible 144 - "#sound-dai-cells" 145 - "#address-cells" 146 - "#size-cells" 147 148additionalProperties: false 149 150examples: 151 - | 152 #include <dt-bindings/sound/qcom,q6dsp-lpass-ports.h> 153 154 dais { 155 compatible = "qcom,q6afe-dais"; 156 #address-cells = <1>; 157 #size-cells = <0>; 158 #sound-dai-cells = <1>; 159 160 dai@22 { 161 reg = <QUATERNARY_MI2S_RX>; 162 qcom,sd-lines = <0 1 2 3>; 163 }; 164 }; 165