1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/sound/nvidia,tegra210-dmic.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Tegra210 DMIC Controller Device Tree Bindings 8 9description: | 10 The Digital MIC (DMIC) Controller is used to interface with Pulse 11 Density Modulation (PDM) input devices. It converts PDM signals to 12 Pulse Coded Modulation (PCM) signals. DMIC can be viewed as a PDM 13 receiver. 14 15maintainers: 16 - Jon Hunter <jonathanh@nvidia.com> 17 - Sameer Pujar <spujar@nvidia.com> 18 19properties: 20 $nodename: 21 pattern: "^dmic@[0-9a-f]*$" 22 23 compatible: 24 oneOf: 25 - const: nvidia,tegra210-dmic 26 - items: 27 - enum: 28 - nvidia,tegra194-dmic 29 - nvidia,tegra186-dmic 30 - const: nvidia,tegra210-dmic 31 32 reg: 33 maxItems: 1 34 35 clocks: 36 maxItems: 1 37 38 clock-names: 39 const: dmic 40 41 assigned-clocks: 42 maxItems: 1 43 44 assigned-clock-parents: 45 maxItems: 1 46 47 assigned-clock-rates: 48 maxItems: 1 49 50 sound-name-prefix: 51 pattern: "^DMIC[1-9]$" 52 $ref: /schemas/types.yaml#/definitions/string 53 description: 54 used as prefix for sink/source names of the component. Must be a 55 unique string among multiple instances of the same component. 56 The name can be "DMIC1" or "DMIC2" ... "DMICx", where x depends 57 on the maximum available instances on a Tegra SoC. 58 59 ports: 60 $ref: /schemas/graph.yaml#/properties/ports 61 properties: 62 port@0: 63 $ref: audio-graph-port.yaml# 64 unevaluatedProperties: false 65 description: | 66 DMIC ACIF (Audio Client Interface) port connected to the 67 corresponding AHUB (Audio Hub) ACIF port. 68 69 port@1: 70 $ref: audio-graph-port.yaml# 71 unevaluatedProperties: false 72 description: | 73 DMIC DAP (Digital Audio Port) interface which can be connected 74 to external audio codec for capture. 75 76required: 77 - compatible 78 - reg 79 - clocks 80 - clock-names 81 - assigned-clocks 82 - assigned-clock-parents 83 84additionalProperties: false 85 86examples: 87 - | 88 #include<dt-bindings/clock/tegra210-car.h> 89 90 dmic@702d4000 { 91 compatible = "nvidia,tegra210-dmic"; 92 reg = <0x702d4000 0x100>; 93 clocks = <&tegra_car TEGRA210_CLK_DMIC1>; 94 clock-names = "dmic"; 95 assigned-clocks = <&tegra_car TEGRA210_CLK_DMIC1>; 96 assigned-clock-parents = <&tegra_car TEGRA210_CLK_PLL_A_OUT0>; 97 assigned-clock-rates = <3072000>; 98 sound-name-prefix = "DMIC1"; 99 }; 100 101... 102