# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/sound/qcom,q6dsp-lpass-ports.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Qualcomm DSP LPASS(Low Power Audio SubSystem) Audio Ports

maintainers:
  - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>

description: |
  This binding describes the Qualcomm DSP LPASS Audio ports

properties:
  compatible:
    enum:
      - qcom,q6afe-dais

  '#sound-dai-cells':
    const: 1

  '#address-cells':
    const: 1

  '#size-cells':
    const: 0

# Digital Audio Interfaces
patternProperties:
  '^dai@[0-9]+$':
    type: object
    description:
      Q6DSP Digital Audio Interfaces.

    properties:
      reg:
        description:
          Digital Audio Interface ID

      qcom,sd-lines:
        $ref: /schemas/types.yaml#/definitions/uint32-array
        description:
          List of serial data lines used by this dai.should be one or more of the 0-3 sd lines.
        minItems: 1
        maxItems: 4
        uniqueItems: true
        items:
          minimum: 0
          maximum: 3

      qcom,tdm-sync-mode:
        $ref: /schemas/types.yaml#/definitions/uint32
        enum: [0, 1, 2]
        description:
          TDM Synchronization mode
            0 = Short sync bit mode
            1 = Long sync mode
            2 = Short sync slot mode

      qcom,tdm-sync-src:
        $ref: /schemas/types.yaml#/definitions/uint32
        enum: [0, 1]
        description:
          TDM Synchronization source
            0 = External source
            1 = Internal source

      qcom,tdm-data-out:
        $ref: /schemas/types.yaml#/definitions/uint32
        enum: [0, 1]
        description:
          TDM Data out signal to drive with other masters
            0 = Disable
            1 = Enable

      qcom,tdm-invert-sync:
        $ref: /schemas/types.yaml#/definitions/uint32
        enum: [0, 1]
        description:
          TDM Invert the sync
            0 = Normal
            1 = Invert

      qcom,tdm-data-delay:
        $ref: /schemas/types.yaml#/definitions/uint32
        enum: [0, 1, 2]
        description:
          TDM Number of bit clock to delay data
            0 = 0 bit clock cycle
            1 = 1 bit clock cycle
            2 = 2 bit clock cycle

      qcom,tdm-data-align:
        $ref: /schemas/types.yaml#/definitions/uint32
        enum: [0, 1]
        description:
          Indicate how data is packed within the slot. For example, 32 slot
          width in case of sample bit width is 24TDM Invert the sync.
            0 = MSB
            1 = LSB

    required:
      - reg

    allOf:
      - if:
          properties:
            reg:
              contains:
                # TDM DAI ID range from PRIMARY_TDM_RX_0 - QUINARY_TDM_TX_7
                items:
                  minimum: 24
                  maximum: 103
        then:
          required:
            - qcom,tdm-sync-mode
            - qcom,tdm-sync-src
            - qcom,tdm-data-out
            - qcom,tdm-invert-sync
            - qcom,tdm-data-delay
            - qcom,tdm-data-align

      - if:
          properties:
            reg:
              contains:
                # MI2S DAI ID range PRIMARY_MI2S_RX - QUATERNARY_MI2S_TX and
                # QUINARY_MI2S_RX - QUINARY_MI2S_TX
                items:
                  oneOf:
                    - minimum: 16
                      maximum: 23
                    - minimum: 127
                      maximum: 128
        then:
          required:
            - qcom,sd-lines

    additionalProperties: false

required:
  - compatible
  - "#sound-dai-cells"
  - "#address-cells"
  - "#size-cells"

additionalProperties: false

examples:
  - |
    #include <dt-bindings/sound/qcom,q6dsp-lpass-ports.h>

    dais {
        compatible = "qcom,q6afe-dais";
        #address-cells = <1>;
        #size-cells = <0>;
        #sound-dai-cells = <1>;

        dai@22 {
            reg = <QUATERNARY_MI2S_RX>;
            qcom,sd-lines = <0 1 2 3>;
        };
    };
