1*4d37c72eSJerome Brunet# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*4d37c72eSJerome Brunet%YAML 1.2
3*4d37c72eSJerome Brunet---
4*4d37c72eSJerome Brunet$id: http://devicetree.org/schemas/sound/amlogic,axg-pdm.yaml#
5*4d37c72eSJerome Brunet$schema: http://devicetree.org/meta-schemas/core.yaml#
6*4d37c72eSJerome Brunet
7*4d37c72eSJerome Brunettitle: Amlogic Audio AXG PDM input
8*4d37c72eSJerome Brunet
9*4d37c72eSJerome Brunetmaintainers:
10*4d37c72eSJerome Brunet  - Jerome Brunet <jbrunet@baylibre.com>
11*4d37c72eSJerome Brunet
12*4d37c72eSJerome Brunetproperties:
13*4d37c72eSJerome Brunet  compatible:
14*4d37c72eSJerome Brunet    oneOf:
15*4d37c72eSJerome Brunet      - items:
16*4d37c72eSJerome Brunet          - enum:
17*4d37c72eSJerome Brunet              - amlogic,g12a-pdm
18*4d37c72eSJerome Brunet              - amlogic,sm1-pdm
19*4d37c72eSJerome Brunet          - const: amlogic,axg-pdm
20*4d37c72eSJerome Brunet      - const: amlogic,axg-pdm
21*4d37c72eSJerome Brunet
22*4d37c72eSJerome Brunet  reg:
23*4d37c72eSJerome Brunet    maxItems: 1
24*4d37c72eSJerome Brunet
25*4d37c72eSJerome Brunet  "#sound-dai-cells":
26*4d37c72eSJerome Brunet    const: 0
27*4d37c72eSJerome Brunet
28*4d37c72eSJerome Brunet  clocks:
29*4d37c72eSJerome Brunet    items:
30*4d37c72eSJerome Brunet      - description: Peripheral clock
31*4d37c72eSJerome Brunet      - description: PDM digital clock
32*4d37c72eSJerome Brunet      - description: DSP system clock
33*4d37c72eSJerome Brunet
34*4d37c72eSJerome Brunet  clock-names:
35*4d37c72eSJerome Brunet    items:
36*4d37c72eSJerome Brunet      - const: pclk
37*4d37c72eSJerome Brunet      - const: dclk
38*4d37c72eSJerome Brunet      - const: sysclk
39*4d37c72eSJerome Brunet
40*4d37c72eSJerome Brunet  resets:
41*4d37c72eSJerome Brunet    maxItems: 1
42*4d37c72eSJerome Brunet
43*4d37c72eSJerome Brunetrequired:
44*4d37c72eSJerome Brunet  - compatible
45*4d37c72eSJerome Brunet  - reg
46*4d37c72eSJerome Brunet  - "#sound-dai-cells"
47*4d37c72eSJerome Brunet  - clocks
48*4d37c72eSJerome Brunet  - clock-names
49*4d37c72eSJerome Brunet
50*4d37c72eSJerome BrunetallOf:
51*4d37c72eSJerome Brunet  - $ref: dai-common.yaml#
52*4d37c72eSJerome Brunet
53*4d37c72eSJerome Brunet  - if:
54*4d37c72eSJerome Brunet      properties:
55*4d37c72eSJerome Brunet        compatible:
56*4d37c72eSJerome Brunet          contains:
57*4d37c72eSJerome Brunet            enum:
58*4d37c72eSJerome Brunet              - amlogic,g12a-pdm
59*4d37c72eSJerome Brunet              - amlogic,sm1-pdm
60*4d37c72eSJerome Brunet    then:
61*4d37c72eSJerome Brunet      required:
62*4d37c72eSJerome Brunet        - resets
63*4d37c72eSJerome Brunet
64*4d37c72eSJerome Brunet    else:
65*4d37c72eSJerome Brunet      properties:
66*4d37c72eSJerome Brunet        resets: false
67*4d37c72eSJerome Brunet
68*4d37c72eSJerome BrunetunevaluatedProperties: false
69*4d37c72eSJerome Brunet
70*4d37c72eSJerome Brunetexamples:
71*4d37c72eSJerome Brunet  - |
72*4d37c72eSJerome Brunet    #include <dt-bindings/clock/axg-audio-clkc.h>
73*4d37c72eSJerome Brunet
74*4d37c72eSJerome Brunet    audio-controller@ff632000 {
75*4d37c72eSJerome Brunet        compatible = "amlogic,axg-pdm";
76*4d37c72eSJerome Brunet        reg = <0xff632000 0x34>;
77*4d37c72eSJerome Brunet        #sound-dai-cells = <0>;
78*4d37c72eSJerome Brunet        clocks = <&clkc_audio AUD_CLKID_PDM>,
79*4d37c72eSJerome Brunet                 <&clkc_audio AUD_CLKID_PDM_DCLK>,
80*4d37c72eSJerome Brunet                 <&clkc_audio AUD_CLKID_PDM_SYSCLK>;
81*4d37c72eSJerome Brunet        clock-names = "pclk", "dclk", "sysclk";
82*4d37c72eSJerome Brunet    };
83