xref: /freebsd/sys/contrib/device-tree/Bindings/sound/amlogic,axg-tdm-formatters.yaml (revision cb7aa33ac6cd46a5434798e50363136e64f3ae98)
1*cb7aa33aSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*cb7aa33aSEmmanuel Vadot%YAML 1.2
3*cb7aa33aSEmmanuel Vadot---
4*cb7aa33aSEmmanuel Vadot$id: http://devicetree.org/schemas/sound/amlogic,axg-tdm-formatters.yaml#
5*cb7aa33aSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*cb7aa33aSEmmanuel Vadot
7*cb7aa33aSEmmanuel Vadottitle: Amlogic Audio AXG TDM formatters
8*cb7aa33aSEmmanuel Vadot
9*cb7aa33aSEmmanuel Vadotmaintainers:
10*cb7aa33aSEmmanuel Vadot  - Jerome Brunet <jbrunet@baylibre.com>
11*cb7aa33aSEmmanuel Vadot
12*cb7aa33aSEmmanuel Vadotproperties:
13*cb7aa33aSEmmanuel Vadot  compatible:
14*cb7aa33aSEmmanuel Vadot    enum:
15*cb7aa33aSEmmanuel Vadot      - amlogic,g12a-tdmout
16*cb7aa33aSEmmanuel Vadot      - amlogic,sm1-tdmout
17*cb7aa33aSEmmanuel Vadot      - amlogic,axg-tdmout
18*cb7aa33aSEmmanuel Vadot      - amlogic,g12a-tdmin
19*cb7aa33aSEmmanuel Vadot      - amlogic,sm1-tdmin
20*cb7aa33aSEmmanuel Vadot      - amlogic,axg-tdmin
21*cb7aa33aSEmmanuel Vadot
22*cb7aa33aSEmmanuel Vadot  clocks:
23*cb7aa33aSEmmanuel Vadot    items:
24*cb7aa33aSEmmanuel Vadot      - description: Peripheral clock
25*cb7aa33aSEmmanuel Vadot      - description: Bit clock
26*cb7aa33aSEmmanuel Vadot      - description: Bit clock input multiplexer
27*cb7aa33aSEmmanuel Vadot      - description: Sample clock
28*cb7aa33aSEmmanuel Vadot      - description: Sample clock input multiplexer
29*cb7aa33aSEmmanuel Vadot
30*cb7aa33aSEmmanuel Vadot  clock-names:
31*cb7aa33aSEmmanuel Vadot    items:
32*cb7aa33aSEmmanuel Vadot      - const: pclk
33*cb7aa33aSEmmanuel Vadot      - const: sclk
34*cb7aa33aSEmmanuel Vadot      - const: sclk_sel
35*cb7aa33aSEmmanuel Vadot      - const: lrclk
36*cb7aa33aSEmmanuel Vadot      - const: lrclk_sel
37*cb7aa33aSEmmanuel Vadot
38*cb7aa33aSEmmanuel Vadot  reg:
39*cb7aa33aSEmmanuel Vadot    maxItems: 1
40*cb7aa33aSEmmanuel Vadot
41*cb7aa33aSEmmanuel Vadot  resets:
42*cb7aa33aSEmmanuel Vadot    maxItems: 1
43*cb7aa33aSEmmanuel Vadot
44*cb7aa33aSEmmanuel Vadotrequired:
45*cb7aa33aSEmmanuel Vadot  - compatible
46*cb7aa33aSEmmanuel Vadot  - reg
47*cb7aa33aSEmmanuel Vadot  - clocks
48*cb7aa33aSEmmanuel Vadot  - clock-names
49*cb7aa33aSEmmanuel Vadot
50*cb7aa33aSEmmanuel VadotallOf:
51*cb7aa33aSEmmanuel Vadot  - $ref: component-common.yaml#
52*cb7aa33aSEmmanuel Vadot
53*cb7aa33aSEmmanuel Vadot  - if:
54*cb7aa33aSEmmanuel Vadot      properties:
55*cb7aa33aSEmmanuel Vadot        compatible:
56*cb7aa33aSEmmanuel Vadot          contains:
57*cb7aa33aSEmmanuel Vadot            enum:
58*cb7aa33aSEmmanuel Vadot              - amlogic,g12a-tdmin
59*cb7aa33aSEmmanuel Vadot              - amlogic,sm1-tdmin
60*cb7aa33aSEmmanuel Vadot              - amlogic,g12a-tdmout
61*cb7aa33aSEmmanuel Vadot              - amlogic,sm1-tdmout
62*cb7aa33aSEmmanuel Vadot    then:
63*cb7aa33aSEmmanuel Vadot      required:
64*cb7aa33aSEmmanuel Vadot        - resets
65*cb7aa33aSEmmanuel Vadot
66*cb7aa33aSEmmanuel Vadot    else:
67*cb7aa33aSEmmanuel Vadot      properties:
68*cb7aa33aSEmmanuel Vadot        resets: false
69*cb7aa33aSEmmanuel Vadot
70*cb7aa33aSEmmanuel VadotunevaluatedProperties: false
71*cb7aa33aSEmmanuel Vadot
72*cb7aa33aSEmmanuel Vadotexamples:
73*cb7aa33aSEmmanuel Vadot  - |
74*cb7aa33aSEmmanuel Vadot    #include <dt-bindings/clock/axg-audio-clkc.h>
75*cb7aa33aSEmmanuel Vadot    #include <dt-bindings/reset/amlogic,meson-g12a-audio-reset.h>
76*cb7aa33aSEmmanuel Vadot
77*cb7aa33aSEmmanuel Vadot    audio-controller@500 {
78*cb7aa33aSEmmanuel Vadot        compatible = "amlogic,g12a-tdmout";
79*cb7aa33aSEmmanuel Vadot        reg = <0x500 0x40>;
80*cb7aa33aSEmmanuel Vadot        resets = <&clkc_audio AUD_RESET_TDMOUT_A>;
81*cb7aa33aSEmmanuel Vadot        clocks = <&clkc_audio AUD_CLKID_TDMOUT_A>,
82*cb7aa33aSEmmanuel Vadot                 <&clkc_audio AUD_CLKID_TDMOUT_A_SCLK>,
83*cb7aa33aSEmmanuel Vadot                 <&clkc_audio AUD_CLKID_TDMOUT_A_SCLK_SEL>,
84*cb7aa33aSEmmanuel Vadot                 <&clkc_audio AUD_CLKID_TDMOUT_A_LRCLK>,
85*cb7aa33aSEmmanuel Vadot                 <&clkc_audio AUD_CLKID_TDMOUT_A_LRCLK>;
86*cb7aa33aSEmmanuel Vadot        clock-names = "pclk", "sclk", "sclk_sel",
87*cb7aa33aSEmmanuel Vadot                      "lrclk", "lrclk_sel";
88*cb7aa33aSEmmanuel Vadot    };
89