xref: /freebsd/sys/contrib/device-tree/Bindings/sound/rockchip,rk3328-codec.yaml (revision 734e82fe33aa764367791a7d603b383996c6b40b)
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>
11allOf:
12  - $ref: dai-common.yaml#
13
14
15properties:
16  compatible:
17    const: rockchip,rk3328-codec
18
19  reg:
20    maxItems: 1
21
22  clocks:
23    items:
24      - description: clock for audio codec
25      - description: clock for I2S master clock
26
27  clock-names:
28    items:
29      - const: pclk
30      - const: mclk
31
32  rockchip,grf:
33    $ref: /schemas/types.yaml#/definitions/phandle
34    description:
35      The phandle of the syscon node for the GRF register.
36
37  spk-depop-time-ms:
38    default: 200
39    description:
40      Speaker depop time in msec.
41
42  mute-gpios:
43    maxItems: 1
44    description:
45      GPIO specifier for external line driver control (typically the
46      dedicated GPIO_MUTE pin)
47
48  "#sound-dai-cells":
49    const: 0
50
51required:
52  - compatible
53  - reg
54  - clocks
55  - clock-names
56  - rockchip,grf
57  - "#sound-dai-cells"
58
59unevaluatedProperties: false
60
61examples:
62  - |
63    #include <dt-bindings/gpio/gpio.h>
64    #include <dt-bindings/clock/rk3328-cru.h>
65    codec: codec@ff410000 {
66      compatible = "rockchip,rk3328-codec";
67      reg = <0xff410000 0x1000>;
68      clocks = <&cru PCLK_ACODECPHY>, <&cru SCLK_I2S1>;
69      clock-names = "pclk", "mclk";
70      rockchip,grf = <&grf>;
71      mute-gpios = <&grf_gpio 0 GPIO_ACTIVE_LOW>;
72      spk-depop-time-ms = <100>;
73      #sound-dai-cells = <0>;
74    };
75