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