[PATCH v4 2/2] ASoC: sun50i-dmic: dt-bindings: add DT bindings for DMIC controller
From: Ban Tao fengzheng923@gmail.com
DT binding documentation for this new ASoC driver.
Signed-off-by: Ban Tao fengzheng923@gmail.com Reviewed-by: Rob Herring robh@kernel.org
--- v1->v2: 1.Fix some build errors. --- v2->v3: 1.Fix some build errors. --- v3->v4: 1.None. --- .../sound/allwinner,sun50i-h6-dmic.yaml | 68 +++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/allwinner,sun50i-h6-dmic.yaml
diff --git a/Documentation/devicetree/bindings/sound/allwinner,sun50i-h6-dmic.yaml b/Documentation/devicetree/bindings/sound/allwinner,sun50i-h6-dmic.yaml new file mode 100644 index 000000000000..d9107685b78d --- /dev/null +++ b/Documentation/devicetree/bindings/sound/allwinner,sun50i-h6-dmic.yaml @@ -0,0 +1,68 @@ +# SPDX-License-Identifier: (GPL-2.0+ OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/sound/allwinner,sun50i-h6-dmic.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Allwinner H6 DMIC Device Tree Bindings + +maintainers: + - Ban Tao fengzheng923@gmail.com + +properties: + "#sound-dai-cells": + const: 0 + + compatible: + const: allwinner,sun50i-h6-dmic + + reg: + maxItems: 1 + + clocks: + items: + - description: Bus Clock + - description: Module Clock + + clock-names: + items: + - const: bus + - const: mod + + dmas: + items: + - description: RX DMA Channel + + dma-names: + items: + - const: rx + + resets: + maxItems: 1 + +required: + - "#sound-dai-cells" + - compatible + - reg + - clocks + - clock-names + - dmas + - dma-names + - resets + +additionalProperties: false + +examples: + - | + dmic: dmic@5095000 { + #sound-dai-cells = <0>; + compatible = "allwinner,sun50i-h6-dmic"; + reg = <0x05095000 0x400>; + clocks = <&ccu 101>, <&ccu 100>; + clock-names = "bus", "mod"; + dmas = <&dma 7>; + dma-names = "rx"; + resets = <&ccu 42>; + }; + +...
On Fri, Jun 25, 2021 at 05:07:21AM -0400, fengzheng923@gmail.com wrote:
From: Ban Tao fengzheng923@gmail.com
DT binding documentation for this new ASoC driver.
Signed-off-by: Ban Tao fengzheng923@gmail.com Reviewed-by: Rob Herring robh@kernel.org
v1->v2:
1.Fix some build errors.
v2->v3:
1.Fix some build errors.
v3->v4:
1.None.
.../sound/allwinner,sun50i-h6-dmic.yaml | 68 +++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/allwinner,sun50i-h6-dmic.yaml
diff --git a/Documentation/devicetree/bindings/sound/allwinner,sun50i-h6-dmic.yaml b/Documentation/devicetree/bindings/sound/allwinner,sun50i-h6-dmic.yaml new file mode 100644 index 000000000000..d9107685b78d --- /dev/null +++ b/Documentation/devicetree/bindings/sound/allwinner,sun50i-h6-dmic.yaml @@ -0,0 +1,68 @@ +# SPDX-License-Identifier: (GPL-2.0+ OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/sound/allwinner,sun50i-h6-dmic.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml#
+title: Allwinner H6 DMIC Device Tree Bindings
+maintainers:
- Ban Tao fengzheng923@gmail.com
+properties:
- "#sound-dai-cells":
- const: 0
- compatible:
- const: allwinner,sun50i-h6-dmic
- reg:
- maxItems: 1
- clocks:
- items:
- description: Bus Clock
- description: Module Clock
- clock-names:
- items:
- const: bus
- const: mod
- dmas:
- items:
- description: RX DMA Channel
- dma-names:
- items:
- const: rx
- resets:
- maxItems: 1
+required:
- "#sound-dai-cells"
- compatible
- reg
- clocks
- clock-names
- dmas
- dma-names
- resets
+additionalProperties: false
+examples:
- |
- dmic: dmic@5095000 {
#sound-dai-cells = <0>;
compatible = "allwinner,sun50i-h6-dmic";
reg = <0x05095000 0x400>;
clocks = <&ccu 101>, <&ccu 100>;
clock-names = "bus", "mod";
dmas = <&dma 7>;
dma-names = "rx";
resets = <&ccu 42>;
- };
You can keep the clock and reset indices, it's more readable that way, you just have to add the headers dt-bindings/clock/sun50i-h6-ccu.h and dt-bindings/reset/sun50i-h6-ccu.h like what Documentation/devicetree/bindings/iommu/allwinner,sun50i-h6-iommu.yaml is doing.
Also, this controller has an interrupt. Even if the driver doesn't use it it should be in the binding.
Maxime
participants (2)
-
fengzheng923@gmail.com
-
Maxime Ripard