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