123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117 |
- From 3b90e0fb53c31c50e64d2039e30ec25c1d8a8d5c Mon Sep 17 00:00:00 2001
- From: Walker Chen <[email protected]>
- Date: Fri, 26 May 2023 22:54:00 +0800
- Subject: [PATCH 068/122] ASoC: dt-bindings: Add TDM controller bindings for
- StarFive JH7110
- Add bindings for TDM driver which supports multi-channel audio playback
- and capture on JH7110 platform.
- Reviewed-by: Krzysztof Kozlowski <[email protected]>
- Signed-off-by: Walker Chen <[email protected]>
- ---
- .../bindings/sound/starfive,jh7110-tdm.yaml | 98 +++++++++++++++++++
- 1 file changed, 98 insertions(+)
- create mode 100644 Documentation/devicetree/bindings/sound/starfive,jh7110-tdm.yaml
- --- /dev/null
- +++ b/Documentation/devicetree/bindings/sound/starfive,jh7110-tdm.yaml
- @@ -0,0 +1,98 @@
- +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
- +%YAML 1.2
- +---
- +$id: http://devicetree.org/schemas/sound/starfive,jh7110-tdm.yaml#
- +$schema: http://devicetree.org/meta-schemas/core.yaml#
- +
- +title: StarFive JH7110 TDM Controller
- +
- +description: |
- + The TDM Controller is a Time Division Multiplexed audio interface
- + integrated in StarFive JH7110 SoC, allowing up to 8 channels of
- + audio over a serial interface. The TDM controller can operate both
- + in master and slave mode.
- +
- +maintainers:
- + - Walker Chen <[email protected]>
- +
- +allOf:
- + - $ref: dai-common.yaml#
- +
- +properties:
- + compatible:
- + enum:
- + - starfive,jh7110-tdm
- +
- + reg:
- + maxItems: 1
- +
- + clocks:
- + items:
- + - description: TDM AHB Clock
- + - description: TDM APB Clock
- + - description: TDM Internal Clock
- + - description: TDM Clock
- + - description: Inner MCLK
- + - description: TDM External Clock
- +
- + clock-names:
- + items:
- + - const: tdm_ahb
- + - const: tdm_apb
- + - const: tdm_internal
- + - const: tdm
- + - const: mclk_inner
- + - const: tdm_ext
- +
- + resets:
- + items:
- + - description: tdm ahb reset line
- + - description: tdm apb reset line
- + - description: tdm core reset line
- +
- + dmas:
- + items:
- + - description: RX DMA Channel
- + - description: TX DMA Channel
- +
- + dma-names:
- + items:
- + - const: rx
- + - const: tx
- +
- + "#sound-dai-cells":
- + const: 0
- +
- +required:
- + - compatible
- + - reg
- + - clocks
- + - clock-names
- + - resets
- + - dmas
- + - dma-names
- + - "#sound-dai-cells"
- +
- +additionalProperties: false
- +
- +examples:
- + - |
- + tdm@10090000 {
- + compatible = "starfive,jh7110-tdm";
- + reg = <0x10090000 0x1000>;
- + clocks = <&syscrg 184>,
- + <&syscrg 185>,
- + <&syscrg 186>,
- + <&syscrg 187>,
- + <&syscrg 17>,
- + <&tdm_ext>;
- + clock-names = "tdm_ahb", "tdm_apb",
- + "tdm_internal", "tdm",
- + "mclk_inner", "tdm_ext";
- + resets = <&syscrg 105>,
- + <&syscrg 107>,
- + <&syscrg 106>;
- + dmas = <&dma 20>, <&dma 21>;
- + dma-names = "rx","tx";
- + #sound-dai-cells = <0>;
- + };
|