xref: /freebsd/sys/contrib/device-tree/Bindings/sound/rockchip,rk3328-codec.yaml (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/sound/rockchip,rk3328-codec.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Rockchip rk3328 internal codec
8
9maintainers:
10  - Heiko Stuebner <heiko@sntech.de>
11
12properties:
13  compatible:
14    const: rockchip,rk3328-codec
15
16  reg:
17    maxItems: 1
18
19  clocks:
20    items:
21      - description: clock for audio codec
22      - description: clock for I2S master clock
23
24  clock-names:
25    items:
26      - const: pclk
27      - const: mclk
28
29  rockchip,grf:
30    $ref: /schemas/types.yaml#/definitions/phandle
31    description:
32      The phandle of the syscon node for the GRF register.
33
34  spk-depop-time-ms:
35    default: 200
36    description:
37      Speaker depop time in msec.
38
39  mute-gpios:
40    maxItems: 1
41    description:
42      GPIO specifier for external line driver control (typically the
43      dedicated GPIO_MUTE pin)
44
45  "#sound-dai-cells":
46    const: 0
47
48required:
49  - compatible
50  - reg
51  - clocks
52  - clock-names
53  - rockchip,grf
54  - "#sound-dai-cells"
55
56examples:
57  - |
58    #include <dt-bindings/gpio/gpio.h>
59    #include <dt-bindings/clock/rk3328-cru.h>
60    codec: codec@ff410000 {
61      compatible = "rockchip,rk3328-codec";
62      reg = <0xff410000 0x1000>;
63      clocks = <&cru PCLK_ACODECPHY>, <&cru SCLK_I2S1>;
64      clock-names = "pclk", "mclk";
65      rockchip,grf = <&grf>;
66      mute-gpios = <&grf_gpio 0 GPIO_ACTIVE_LOW>;
67      spk-depop-time-ms = <100>;
68      #sound-dai-cells = <0>;
69    };
70