206 lines
5.4 KiB
YAML
206 lines
5.4 KiB
YAML
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/sound/qcom,apq8016-sbc-sndcard.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Qualcomm APQ8016 and similar sound cards
|
|
|
|
maintainers:
|
|
- Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
|
|
- Stephan Gerhold <stephan@gerhold.net>
|
|
|
|
properties:
|
|
compatible:
|
|
enum:
|
|
- qcom,apq8016-sbc-sndcard
|
|
- qcom,msm8916-qdsp6-sndcard
|
|
|
|
reg:
|
|
items:
|
|
- description: Microphone I/O mux register address
|
|
- description: Speaker I/O mux register address
|
|
|
|
reg-names:
|
|
items:
|
|
- const: mic-iomux
|
|
- const: spkr-iomux
|
|
|
|
audio-routing:
|
|
$ref: /schemas/types.yaml#/definitions/non-unique-string-array
|
|
description:
|
|
A list of the connections between audio components. Each entry is a
|
|
pair of strings, the first being the connection's sink, the second
|
|
being the connection's source. Valid names could be power supplies,
|
|
MicBias of codec and the jacks on the board.
|
|
|
|
aux-devs:
|
|
$ref: /schemas/types.yaml#/definitions/phandle-array
|
|
description: |
|
|
List of phandles pointing to auxiliary devices, such
|
|
as amplifiers, to be added to the sound card.
|
|
|
|
model:
|
|
$ref: /schemas/types.yaml#/definitions/string
|
|
description: User visible long sound card name
|
|
|
|
pin-switches:
|
|
description: List of widget names for which pin switches should be created.
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
|
|
widgets:
|
|
description: User specified audio sound widgets.
|
|
$ref: /schemas/types.yaml#/definitions/non-unique-string-array
|
|
|
|
patternProperties:
|
|
".*-dai-link$":
|
|
description:
|
|
Each subnode represents a dai link. Subnodes of each dai links would be
|
|
cpu/codec dais.
|
|
|
|
type: object
|
|
|
|
properties:
|
|
link-name:
|
|
description: Indicates dai-link name and PCM stream name.
|
|
$ref: /schemas/types.yaml#/definitions/string
|
|
maxItems: 1
|
|
|
|
cpu:
|
|
description: Holds subnode which indicates cpu dai.
|
|
type: object
|
|
additionalProperties: false
|
|
|
|
properties:
|
|
sound-dai:
|
|
maxItems: 1
|
|
|
|
platform:
|
|
description: Holds subnode which indicates platform dai.
|
|
type: object
|
|
additionalProperties: false
|
|
|
|
properties:
|
|
sound-dai:
|
|
maxItems: 1
|
|
|
|
codec:
|
|
description: Holds subnode which indicates codec dai.
|
|
type: object
|
|
additionalProperties: false
|
|
|
|
properties:
|
|
sound-dai:
|
|
minItems: 1
|
|
maxItems: 8
|
|
|
|
required:
|
|
- link-name
|
|
- cpu
|
|
|
|
additionalProperties: false
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
- reg-names
|
|
- model
|
|
|
|
additionalProperties: false
|
|
|
|
examples:
|
|
- |
|
|
#include <dt-bindings/sound/qcom,lpass.h>
|
|
sound@7702000 {
|
|
compatible = "qcom,apq8016-sbc-sndcard";
|
|
reg = <0x07702000 0x4>, <0x07702004 0x4>;
|
|
reg-names = "mic-iomux", "spkr-iomux";
|
|
|
|
model = "DB410c";
|
|
audio-routing =
|
|
"AMIC2", "MIC BIAS Internal2",
|
|
"AMIC3", "MIC BIAS External1";
|
|
|
|
pinctrl-0 = <&cdc_pdm_lines_act &ext_sec_tlmm_lines_act &ext_mclk_tlmm_lines_act>;
|
|
pinctrl-1 = <&cdc_pdm_lines_sus &ext_sec_tlmm_lines_sus &ext_mclk_tlmm_lines_sus>;
|
|
pinctrl-names = "default", "sleep";
|
|
|
|
quaternary-dai-link {
|
|
link-name = "ADV7533";
|
|
cpu {
|
|
sound-dai = <&lpass MI2S_QUATERNARY>;
|
|
};
|
|
codec {
|
|
sound-dai = <&adv_bridge 0>;
|
|
};
|
|
};
|
|
|
|
primary-dai-link {
|
|
link-name = "WCD";
|
|
cpu {
|
|
sound-dai = <&lpass MI2S_PRIMARY>;
|
|
};
|
|
codec {
|
|
sound-dai = <&lpass_codec 0>, <&wcd_codec 0>;
|
|
};
|
|
};
|
|
|
|
tertiary-dai-link {
|
|
link-name = "WCD-Capture";
|
|
cpu {
|
|
sound-dai = <&lpass MI2S_TERTIARY>;
|
|
};
|
|
codec {
|
|
sound-dai = <&lpass_codec 1>, <&wcd_codec 1>;
|
|
};
|
|
};
|
|
};
|
|
|
|
- |
|
|
#include <dt-bindings/sound/qcom,q6afe.h>
|
|
#include <dt-bindings/sound/qcom,q6asm.h>
|
|
sound@7702000 {
|
|
compatible = "qcom,msm8916-qdsp6-sndcard";
|
|
reg = <0x07702000 0x4>, <0x07702004 0x4>;
|
|
reg-names = "mic-iomux", "spkr-iomux";
|
|
|
|
model = "msm8916";
|
|
widgets =
|
|
"Speaker", "Speaker",
|
|
"Headphone", "Headphones";
|
|
pin-switches = "Speaker";
|
|
audio-routing =
|
|
"Speaker", "Speaker Amp OUT",
|
|
"Speaker Amp IN", "HPH_R",
|
|
"Headphones", "HPH_L",
|
|
"Headphones", "HPH_R",
|
|
"AMIC1", "MIC BIAS Internal1",
|
|
"AMIC2", "MIC BIAS Internal2",
|
|
"AMIC3", "MIC BIAS Internal3";
|
|
aux-devs = <&speaker_amp>;
|
|
|
|
pinctrl-names = "default", "sleep";
|
|
pinctrl-0 = <&cdc_pdm_lines_act>;
|
|
pinctrl-1 = <&cdc_pdm_lines_sus>;
|
|
|
|
mm1-dai-link {
|
|
link-name = "MultiMedia1";
|
|
cpu {
|
|
sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA1>;
|
|
};
|
|
};
|
|
|
|
primary-dai-link {
|
|
link-name = "Primary MI2S";
|
|
cpu {
|
|
sound-dai = <&q6afedai PRIMARY_MI2S_RX>;
|
|
};
|
|
platform {
|
|
sound-dai = <&q6routing>;
|
|
};
|
|
codec {
|
|
sound-dai = <&lpass_codec 0>, <&wcd_codec 0>;
|
|
};
|
|
};
|
|
};
|