165 lines
4.0 KiB
YAML
165 lines
4.0 KiB
YAML
# 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>;
|
|
};
|
|
};
|