9e0f86fdcd
Add device tree binding properties of generic graph to ASoC component devices. This allows to define audio ports out of these components or DAIs and audio graph based sound card can be realised with this. Signed-off-by: Sameer Pujar <spujar@nvidia.com> Reviewed-by: Jon Hunter <jonathanh@nvidia.com> Link: https://lore.kernel.org/r/1611048496-24650-2-git-send-email-spujar@nvidia.com Signed-off-by: Mark Brown <broonie@kernel.org>
101 lines
2.4 KiB
YAML
101 lines
2.4 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/sound/nvidia,tegra210-dmic.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Tegra210 DMIC Controller Device Tree Bindings
|
|
|
|
description: |
|
|
The Digital MIC (DMIC) Controller is used to interface with Pulse
|
|
Density Modulation (PDM) input devices. It converts PDM signals to
|
|
Pulse Coded Modulation (PCM) signals. DMIC can be viewed as a PDM
|
|
receiver.
|
|
|
|
maintainers:
|
|
- Jon Hunter <jonathanh@nvidia.com>
|
|
- Sameer Pujar <spujar@nvidia.com>
|
|
|
|
allOf:
|
|
- $ref: audio-graph-port.yaml#
|
|
|
|
properties:
|
|
$nodename:
|
|
pattern: "^dmic@[0-9a-f]*$"
|
|
|
|
compatible:
|
|
oneOf:
|
|
- const: nvidia,tegra210-dmic
|
|
- items:
|
|
- enum:
|
|
- nvidia,tegra194-dmic
|
|
- nvidia,tegra186-dmic
|
|
- const: nvidia,tegra210-dmic
|
|
|
|
reg:
|
|
maxItems: 1
|
|
|
|
clocks:
|
|
maxItems: 1
|
|
|
|
clock-names:
|
|
const: dmic
|
|
|
|
assigned-clocks:
|
|
maxItems: 1
|
|
|
|
assigned-clock-parents:
|
|
maxItems: 1
|
|
|
|
assigned-clock-rates:
|
|
maxItems: 1
|
|
|
|
sound-name-prefix:
|
|
pattern: "^DMIC[1-9]$"
|
|
$ref: /schemas/types.yaml#/definitions/string
|
|
description:
|
|
used as prefix for sink/source names of the component. Must be a
|
|
unique string among multiple instances of the same component.
|
|
The name can be "DMIC1" or "DMIC2" ... "DMICx", where x depends
|
|
on the maximum available instances on a Tegra SoC.
|
|
|
|
ports:
|
|
type: object
|
|
properties:
|
|
port@0:
|
|
description: |
|
|
DMIC ACIF (Audio Client Interface) port connected to the
|
|
corresponding AHUB (Audio Hub) ACIF port.
|
|
|
|
port@1:
|
|
description: |
|
|
DMIC DAP (Digital Audio Port) interface which can be connected
|
|
to external audio codec for capture.
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
- clocks
|
|
- clock-names
|
|
- assigned-clocks
|
|
- assigned-clock-parents
|
|
|
|
unevaluatedProperties: false
|
|
|
|
examples:
|
|
- |
|
|
#include<dt-bindings/clock/tegra210-car.h>
|
|
|
|
dmic@702d4000 {
|
|
compatible = "nvidia,tegra210-dmic";
|
|
reg = <0x702d4000 0x100>;
|
|
clocks = <&tegra_car TEGRA210_CLK_DMIC1>;
|
|
clock-names = "dmic";
|
|
assigned-clocks = <&tegra_car TEGRA210_CLK_DMIC1>;
|
|
assigned-clock-parents = <&tegra_car TEGRA210_CLK_PLL_A_OUT0>;
|
|
assigned-clock-rates = <3072000>;
|
|
sound-name-prefix = "DMIC1";
|
|
};
|
|
|
|
...
|