199 lines
4.8 KiB
YAML
199 lines
4.8 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/sound/mt8186-mt6366-da7219-max98357.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Mediatek MT8186 with MT6366, DA7219 and MAX98357 ASoC sound card driver
|
|
|
|
maintainers:
|
|
- Jiaxin Yu <jiaxin.yu@mediatek.com>
|
|
|
|
description:
|
|
This binding describes the MT8186 sound card.
|
|
|
|
allOf:
|
|
- $ref: sound-card-common.yaml#
|
|
|
|
properties:
|
|
compatible:
|
|
enum:
|
|
- mediatek,mt8186-mt6366-da7219-max98357-sound
|
|
|
|
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 the input or output widgets of audio components,
|
|
power supplies, MicBias of codec and the software switch.
|
|
minItems: 2
|
|
items:
|
|
enum:
|
|
# Sinks
|
|
- HDMI1
|
|
- Headphones
|
|
- Line Out
|
|
- MIC
|
|
- Speakers
|
|
|
|
# Sources
|
|
- Headset Mic
|
|
- HPL
|
|
- HPR
|
|
- Speaker
|
|
- TX
|
|
|
|
mediatek,platform:
|
|
$ref: /schemas/types.yaml#/definitions/phandle
|
|
description: The phandle of MT8186 ASoC platform.
|
|
|
|
headset-codec:
|
|
type: object
|
|
deprecated: true
|
|
additionalProperties: false
|
|
properties:
|
|
sound-dai:
|
|
maxItems: 1
|
|
required:
|
|
- sound-dai
|
|
|
|
playback-codecs:
|
|
type: object
|
|
deprecated: true
|
|
additionalProperties: false
|
|
properties:
|
|
sound-dai:
|
|
items:
|
|
- description: phandle of dp codec
|
|
- description: phandle of l channel speaker codec
|
|
- description: phandle of r channel speaker codec
|
|
minItems: 2
|
|
required:
|
|
- sound-dai
|
|
|
|
mediatek,adsp:
|
|
$ref: /schemas/types.yaml#/definitions/phandle
|
|
description: The phandle of MT8186 ADSP platform.
|
|
|
|
mediatek,dai-link:
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
description:
|
|
A list of the desired dai-links in the sound card. Each entry is a
|
|
name defined in the machine driver.
|
|
|
|
patternProperties:
|
|
".*-dai-link$":
|
|
type: object
|
|
additionalProperties: false
|
|
description:
|
|
Container for dai-link level properties and CODEC sub-nodes.
|
|
|
|
properties:
|
|
link-name:
|
|
description: Indicates dai-link name and PCM stream name
|
|
items:
|
|
enum:
|
|
- I2S0
|
|
- I2S1
|
|
- I2S2
|
|
- I2S3
|
|
|
|
codec:
|
|
description: Holds subnode which indicates codec dai.
|
|
type: object
|
|
additionalProperties: false
|
|
properties:
|
|
sound-dai:
|
|
minItems: 1
|
|
maxItems: 2
|
|
required:
|
|
- sound-dai
|
|
|
|
dai-format:
|
|
description: audio format
|
|
items:
|
|
enum:
|
|
- i2s
|
|
- right_j
|
|
- left_j
|
|
- dsp_a
|
|
- dsp_b
|
|
|
|
mediatek,clk-provider:
|
|
$ref: /schemas/types.yaml#/definitions/string
|
|
description: Indicates dai-link clock master.
|
|
items:
|
|
enum:
|
|
- cpu
|
|
- codec
|
|
|
|
required:
|
|
- link-name
|
|
|
|
unevaluatedProperties: false
|
|
|
|
required:
|
|
- compatible
|
|
- mediatek,platform
|
|
|
|
# Disallow legacy properties if xxx-dai-link nodes are specified
|
|
if:
|
|
not:
|
|
patternProperties:
|
|
".*-dai-link$": false
|
|
then:
|
|
properties:
|
|
headset-codec: false
|
|
speaker-codecs: false
|
|
|
|
examples:
|
|
- |
|
|
|
|
sound: mt8186-sound {
|
|
compatible = "mediatek,mt8186-mt6366-da7219-max98357-sound";
|
|
model = "mt8186_da7219_m98357";
|
|
pinctrl-names = "aud_clk_mosi_off",
|
|
"aud_clk_mosi_on";
|
|
pinctrl-0 = <&aud_clk_mosi_off>;
|
|
pinctrl-1 = <&aud_clk_mosi_on>;
|
|
mediatek,platform = <&afe>;
|
|
|
|
audio-routing =
|
|
"Headphones", "HPL",
|
|
"Headphones", "HPR",
|
|
"MIC", "Headset Mic",
|
|
"Speakers", "Speaker",
|
|
"HDMI1", "TX";
|
|
|
|
hs-playback-dai-link {
|
|
link-name = "I2S0";
|
|
dai-format = "i2s";
|
|
mediatek,clk-provider = "cpu";
|
|
codec {
|
|
sound-dai = <&da7219>;
|
|
};
|
|
};
|
|
|
|
hs-capture-dai-link {
|
|
link-name = "I2S1";
|
|
dai-format = "i2s";
|
|
mediatek,clk-provider = "cpu";
|
|
codec {
|
|
sound-dai = <&da7219>;
|
|
};
|
|
};
|
|
|
|
spk-dp-playback-dai-link {
|
|
link-name = "I2S3";
|
|
dai-format = "i2s";
|
|
mediatek,clk-provider = "cpu";
|
|
codec {
|
|
sound-dai = <&anx_bridge_dp>, <&max98357a>;
|
|
};
|
|
};
|
|
};
|
|
|
|
...
|