14d1a015aSJohan Jonker# SPDX-License-Identifier: GPL-2.0
24d1a015aSJohan Jonker%YAML 1.2
34d1a015aSJohan Jonker---
44d1a015aSJohan Jonker$id: http://devicetree.org/schemas/sound/rockchip-spdif.yaml#
54d1a015aSJohan Jonker$schema: http://devicetree.org/meta-schemas/core.yaml#
64d1a015aSJohan Jonker
74d1a015aSJohan Jonkertitle: Rockchip SPDIF transceiver
84d1a015aSJohan Jonker
94d1a015aSJohan Jonkerdescription:
104d1a015aSJohan Jonker  The S/PDIF audio block is a stereo transceiver that allows the
114d1a015aSJohan Jonker  processor to receive and transmit digital audio via a coaxial or
124d1a015aSJohan Jonker  fibre cable.
134d1a015aSJohan Jonker
144d1a015aSJohan Jonkermaintainers:
154d1a015aSJohan Jonker  - Heiko Stuebner <heiko@sntech.de>
164d1a015aSJohan Jonker
174d1a015aSJohan Jonkerproperties:
184d1a015aSJohan Jonker  compatible:
194d1a015aSJohan Jonker    oneOf:
204d1a015aSJohan Jonker      - const: rockchip,rk3066-spdif
214d1a015aSJohan Jonker      - const: rockchip,rk3228-spdif
224d1a015aSJohan Jonker      - const: rockchip,rk3328-spdif
234d1a015aSJohan Jonker      - const: rockchip,rk3366-spdif
244d1a015aSJohan Jonker      - const: rockchip,rk3368-spdif
254d1a015aSJohan Jonker      - const: rockchip,rk3399-spdif
26e79ef3c2SSugar Zhang      - const: rockchip,rk3568-spdif
274d1a015aSJohan Jonker      - items:
284d1a015aSJohan Jonker          - enum:
29*5c8a033fSAlex Bee              - rockchip,rk3128-spdif
304d1a015aSJohan Jonker              - rockchip,rk3188-spdif
314d1a015aSJohan Jonker              - rockchip,rk3288-spdif
32a8535ae7SJohan Jonker              - rockchip,rk3308-spdif
334d1a015aSJohan Jonker          - const: rockchip,rk3066-spdif
344d1a015aSJohan Jonker
354d1a015aSJohan Jonker  reg:
364d1a015aSJohan Jonker    maxItems: 1
374d1a015aSJohan Jonker
384d1a015aSJohan Jonker  interrupts:
394d1a015aSJohan Jonker    maxItems: 1
404d1a015aSJohan Jonker
414d1a015aSJohan Jonker  clocks:
424d1a015aSJohan Jonker    items:
434d1a015aSJohan Jonker      - description: clock for SPDIF bus
444d1a015aSJohan Jonker      - description: clock for SPDIF controller
454d1a015aSJohan Jonker
464d1a015aSJohan Jonker  clock-names:
474d1a015aSJohan Jonker    items:
484d1a015aSJohan Jonker      - const: mclk
494d1a015aSJohan Jonker      - const: hclk
504d1a015aSJohan Jonker
514d1a015aSJohan Jonker  dmas:
524d1a015aSJohan Jonker    maxItems: 1
534d1a015aSJohan Jonker
544d1a015aSJohan Jonker  dma-names:
554d1a015aSJohan Jonker    const: tx
564d1a015aSJohan Jonker
5765f1d3d9SJohan Jonker  power-domains:
5865f1d3d9SJohan Jonker    maxItems: 1
5965f1d3d9SJohan Jonker
604d1a015aSJohan Jonker  rockchip,grf:
614d1a015aSJohan Jonker    $ref: /schemas/types.yaml#/definitions/phandle
624d1a015aSJohan Jonker    description:
634d1a015aSJohan Jonker      The phandle of the syscon node for the GRF register.
644d1a015aSJohan Jonker      Required property on RK3288.
654d1a015aSJohan Jonker
66f0c0f5a4SJohan Jonker  "#sound-dai-cells":
67f0c0f5a4SJohan Jonker    const: 0
68f0c0f5a4SJohan Jonker
694d1a015aSJohan Jonkerrequired:
704d1a015aSJohan Jonker  - compatible
714d1a015aSJohan Jonker  - reg
724d1a015aSJohan Jonker  - interrupts
734d1a015aSJohan Jonker  - clocks
744d1a015aSJohan Jonker  - clock-names
754d1a015aSJohan Jonker  - dmas
764d1a015aSJohan Jonker  - dma-names
77f0c0f5a4SJohan Jonker  - "#sound-dai-cells"
784d1a015aSJohan Jonker
7958ae9a2aSKrzysztof KozlowskiallOf:
8058ae9a2aSKrzysztof Kozlowski  - $ref: dai-common.yaml#
8158ae9a2aSKrzysztof Kozlowski  - if:
824d1a015aSJohan Jonker      properties:
834d1a015aSJohan Jonker        compatible:
844d1a015aSJohan Jonker          contains:
854d1a015aSJohan Jonker            const: rockchip,rk3288-spdif
864d1a015aSJohan Jonker    then:
874d1a015aSJohan Jonker      required:
884d1a015aSJohan Jonker        - rockchip,grf
894d1a015aSJohan Jonker
9058ae9a2aSKrzysztof KozlowskiunevaluatedProperties: false
914d1a015aSJohan Jonker
924d1a015aSJohan Jonkerexamples:
934d1a015aSJohan Jonker  - |
944d1a015aSJohan Jonker    #include <dt-bindings/clock/rk3188-cru.h>
954d1a015aSJohan Jonker    #include <dt-bindings/interrupt-controller/arm-gic.h>
964d1a015aSJohan Jonker    spdif: spdif@1011e000 {
974d1a015aSJohan Jonker      compatible = "rockchip,rk3188-spdif", "rockchip,rk3066-spdif";
984d1a015aSJohan Jonker      reg = <0x1011e000 0x2000>;
994d1a015aSJohan Jonker      interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
1004d1a015aSJohan Jonker      clocks = <&cru SCLK_SPDIF>, <&cru HCLK_SPDIF>;
1014d1a015aSJohan Jonker      clock-names = "mclk", "hclk";
1024d1a015aSJohan Jonker      dmas = <&dmac1_s 8>;
1034d1a015aSJohan Jonker      dma-names = "tx";
104f0c0f5a4SJohan Jonker      #sound-dai-cells = <0>;
1054d1a015aSJohan Jonker    };
106