15def4c47SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 25def4c47SEmmanuel Vadot%YAML 1.2 35def4c47SEmmanuel Vadot--- 45def4c47SEmmanuel Vadot$id: http://devicetree.org/schemas/sound/qcom,lpass-rx-macro.yaml# 55def4c47SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 65def4c47SEmmanuel Vadot 78bab661aSEmmanuel Vadottitle: LPASS(Low Power Audio Subsystem) RX Macro audio codec 85def4c47SEmmanuel Vadot 95def4c47SEmmanuel Vadotmaintainers: 105def4c47SEmmanuel Vadot - Srinivas Kandagatla <srinivas.kandagatla@linaro.org> 115def4c47SEmmanuel Vadot 125def4c47SEmmanuel Vadotproperties: 135def4c47SEmmanuel Vadot compatible: 14*8d13bc63SEmmanuel Vadot oneOf: 15*8d13bc63SEmmanuel Vadot - enum: 168cc087a1SEmmanuel Vadot - qcom,sc7280-lpass-rx-macro 178cc087a1SEmmanuel Vadot - qcom,sm8250-lpass-rx-macro 187ef62cebSEmmanuel Vadot - qcom,sm8450-lpass-rx-macro 19fac71e4eSEmmanuel Vadot - qcom,sm8550-lpass-rx-macro 207ef62cebSEmmanuel Vadot - qcom,sc8280xp-lpass-rx-macro 21*8d13bc63SEmmanuel Vadot - items: 22*8d13bc63SEmmanuel Vadot - enum: 23*8d13bc63SEmmanuel Vadot - qcom,sm8650-lpass-rx-macro 24*8d13bc63SEmmanuel Vadot - qcom,x1e80100-lpass-rx-macro 25*8d13bc63SEmmanuel Vadot - const: qcom,sm8550-lpass-rx-macro 265def4c47SEmmanuel Vadot 275def4c47SEmmanuel Vadot reg: 285def4c47SEmmanuel Vadot maxItems: 1 295def4c47SEmmanuel Vadot 305def4c47SEmmanuel Vadot "#sound-dai-cells": 315def4c47SEmmanuel Vadot const: 1 325def4c47SEmmanuel Vadot 335def4c47SEmmanuel Vadot '#clock-cells': 345def4c47SEmmanuel Vadot const: 0 355def4c47SEmmanuel Vadot 365def4c47SEmmanuel Vadot clocks: 37fac71e4eSEmmanuel Vadot minItems: 3 385def4c47SEmmanuel Vadot maxItems: 5 395def4c47SEmmanuel Vadot 405def4c47SEmmanuel Vadot clock-names: 41fac71e4eSEmmanuel Vadot minItems: 3 42fac71e4eSEmmanuel Vadot maxItems: 5 435def4c47SEmmanuel Vadot 445def4c47SEmmanuel Vadot clock-output-names: 458bab661aSEmmanuel Vadot maxItems: 1 465def4c47SEmmanuel Vadot 47c9ccf3a3SEmmanuel Vadot power-domains: 48c9ccf3a3SEmmanuel Vadot maxItems: 2 49c9ccf3a3SEmmanuel Vadot 50c9ccf3a3SEmmanuel Vadot power-domain-names: 51c9ccf3a3SEmmanuel Vadot items: 52c9ccf3a3SEmmanuel Vadot - const: macro 53c9ccf3a3SEmmanuel Vadot - const: dcodec 54c9ccf3a3SEmmanuel Vadot 555def4c47SEmmanuel Vadotrequired: 565def4c47SEmmanuel Vadot - compatible 575def4c47SEmmanuel Vadot - reg 585def4c47SEmmanuel Vadot - "#sound-dai-cells" 595def4c47SEmmanuel Vadot 60fac71e4eSEmmanuel VadotallOf: 61fac71e4eSEmmanuel Vadot - $ref: dai-common.yaml# 62fac71e4eSEmmanuel Vadot - if: 63fac71e4eSEmmanuel Vadot properties: 64fac71e4eSEmmanuel Vadot compatible: 65fac71e4eSEmmanuel Vadot enum: 66fac71e4eSEmmanuel Vadot - qcom,sc7280-lpass-rx-macro 67fac71e4eSEmmanuel Vadot then: 68fac71e4eSEmmanuel Vadot properties: 69fac71e4eSEmmanuel Vadot clock-names: 70fac71e4eSEmmanuel Vadot oneOf: 71fac71e4eSEmmanuel Vadot - items: # for ADSP based platforms 72fac71e4eSEmmanuel Vadot - const: mclk 73fac71e4eSEmmanuel Vadot - const: npl 74fac71e4eSEmmanuel Vadot - const: macro 75fac71e4eSEmmanuel Vadot - const: dcodec 76fac71e4eSEmmanuel Vadot - const: fsgen 77fac71e4eSEmmanuel Vadot - items: # for ADSP bypass based platforms 78fac71e4eSEmmanuel Vadot - const: mclk 79fac71e4eSEmmanuel Vadot - const: npl 80fac71e4eSEmmanuel Vadot - const: fsgen 81fac71e4eSEmmanuel Vadot 82fac71e4eSEmmanuel Vadot - if: 83fac71e4eSEmmanuel Vadot properties: 84fac71e4eSEmmanuel Vadot compatible: 85fac71e4eSEmmanuel Vadot enum: 86fac71e4eSEmmanuel Vadot - qcom,sc8280xp-lpass-rx-macro 87fac71e4eSEmmanuel Vadot - qcom,sm8250-lpass-rx-macro 88fac71e4eSEmmanuel Vadot - qcom,sm8450-lpass-rx-macro 89fac71e4eSEmmanuel Vadot then: 90fac71e4eSEmmanuel Vadot properties: 91fac71e4eSEmmanuel Vadot clocks: 92fac71e4eSEmmanuel Vadot minItems: 5 93fac71e4eSEmmanuel Vadot maxItems: 5 94fac71e4eSEmmanuel Vadot clock-names: 95fac71e4eSEmmanuel Vadot items: 96fac71e4eSEmmanuel Vadot - const: mclk 97fac71e4eSEmmanuel Vadot - const: npl 98fac71e4eSEmmanuel Vadot - const: macro 99fac71e4eSEmmanuel Vadot - const: dcodec 100fac71e4eSEmmanuel Vadot - const: fsgen 101fac71e4eSEmmanuel Vadot 102fac71e4eSEmmanuel Vadot - if: 103fac71e4eSEmmanuel Vadot properties: 104fac71e4eSEmmanuel Vadot compatible: 105*8d13bc63SEmmanuel Vadot contains: 106fac71e4eSEmmanuel Vadot enum: 107fac71e4eSEmmanuel Vadot - qcom,sm8550-lpass-rx-macro 108fac71e4eSEmmanuel Vadot then: 109fac71e4eSEmmanuel Vadot properties: 110fac71e4eSEmmanuel Vadot clocks: 111fac71e4eSEmmanuel Vadot minItems: 4 112fac71e4eSEmmanuel Vadot maxItems: 4 113fac71e4eSEmmanuel Vadot clock-names: 114fac71e4eSEmmanuel Vadot items: 115fac71e4eSEmmanuel Vadot - const: mclk 116fac71e4eSEmmanuel Vadot - const: macro 117fac71e4eSEmmanuel Vadot - const: dcodec 118fac71e4eSEmmanuel Vadot - const: fsgen 119fac71e4eSEmmanuel Vadot 1208bab661aSEmmanuel VadotunevaluatedProperties: false 1215def4c47SEmmanuel Vadot 1225def4c47SEmmanuel Vadotexamples: 1235def4c47SEmmanuel Vadot - | 1245def4c47SEmmanuel Vadot #include <dt-bindings/sound/qcom,q6afe.h> 1255def4c47SEmmanuel Vadot codec@3200000 { 1265def4c47SEmmanuel Vadot compatible = "qcom,sm8250-lpass-rx-macro"; 1275def4c47SEmmanuel Vadot reg = <0x3200000 0x1000>; 1285def4c47SEmmanuel Vadot #sound-dai-cells = <1>; 1295def4c47SEmmanuel Vadot #clock-cells = <0>; 1305def4c47SEmmanuel Vadot clocks = <&audiocc 0>, 1315def4c47SEmmanuel Vadot <&audiocc 1>, 1325def4c47SEmmanuel Vadot <&q6afecc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>, 1335def4c47SEmmanuel Vadot <&q6afecc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>, 1345def4c47SEmmanuel Vadot <&vamacro>; 1355def4c47SEmmanuel Vadot clock-names = "mclk", "npl", "macro", "dcodec", "fsgen"; 1365def4c47SEmmanuel Vadot clock-output-names = "mclk"; 1375def4c47SEmmanuel Vadot }; 138