xref: /linux/Documentation/devicetree/bindings/clock/marvell-armada-370-gating-clock.yaml (revision beaea9c4ba2d8ef1b10223dc3a75a7d7be3e5cd9)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2---
3$id: http://devicetree.org/schemas/clock/marvell-armada-370-gating-clock.yaml#
4$schema: http://devicetree.org/meta-schemas/core.yaml#
5
6title: Marvell EBU SoC gating-clock
7
8maintainers:
9  - Andrew Lunn <andrew@lunn.ch>
10  - Gregory Clement <gregory.clement@bootlin.com>
11
12description: >
13  Marvell Armada 370/375/380/385/39x/XP, Dove and Kirkwood allow some peripheral
14  clocks to be gated to save some power. The clock ID is directly mapped to the
15  corresponding clock gating control bit in HW to ease manual clock lookup in
16  datasheet.
17
18  The following is a list of provided IDs for Armada 370:
19
20    ID    Clock    Peripheral
21    -----------------------------------
22    0     Audio    AC97 Cntrl
23    1     pex0_en  PCIe 0 Clock out
24    2     pex1_en  PCIe 1 Clock out
25    3     ge1      Gigabit Ethernet 1
26    4     ge0      Gigabit Ethernet 0
27    5     pex0     PCIe Cntrl 0
28    9     pex1     PCIe Cntrl 1
29    15    sata0    SATA Host 0
30    17    sdio     SDHCI Host
31    23    crypto   CESA (crypto engine)
32    25    tdm      Time Division Mplx
33    28    ddr      DDR Cntrl
34    30    sata1   SATA Host 0
35
36  The following is a list of provided IDs for Armada 375:
37
38    ID    Clock           Peripheral
39    -----------------------------------
40    2     mu              Management Unit
41    3     pp              Packet Processor
42    4     ptp             PTP
43    5     pex0            PCIe 0 Clock out
44    6     pex1            PCIe 1 Clock out
45    8     audio           Audio Cntrl
46    11    nd_clk          Nand Flash Cntrl
47    14    sata0_link      SATA 0 Link
48    15    sata0_core      SATA 0 Core
49    16    usb3            USB3 Host
50    17    sdio            SDHCI Host
51    18    usb             USB Host
52    19    gop             Gigabit Ethernet MAC
53    20    sata1_link      SATA 1 Link
54    21    sata1_core      SATA 1 Core
55    22    xor0            XOR DMA 0
56    23    xor1            XOR DMA 0
57    24    copro           Coprocessor
58    25    tdm             Time Division Mplx
59    28    crypto0_enc     Cryptographic Unit Port 0 Encryption
60    29    crypto0_core    Cryptographic Unit Port 0 Core
61    30    crypto1_enc     Cryptographic Unit Port 1 Encryption
62    31    crypto1_core    Cryptographic Unit Port 1 Core
63
64  The following is a list of provided IDs for Armada 380/385:
65
66    ID    Clock           Peripheral
67    -----------------------------------
68    0     audio           Audio
69    2     ge2             Gigabit Ethernet 2
70    3     ge1             Gigabit Ethernet 1
71    4     ge0             Gigabit Ethernet 0
72    5     pex1            PCIe 1
73    6     pex2            PCIe 2
74    7     pex3            PCIe 3
75    8     pex0            PCIe 0
76    9     usb3h0          USB3 Host 0
77    10    usb3h1          USB3 Host 1
78    11    usb3d           USB3 Device
79    13    bm              Buffer Management
80    14    crypto0z        Cryptographic 0 Z
81    15    sata0           SATA 0
82    16    crypto1z        Cryptographic 1 Z
83    17    sdio            SDIO
84    18    usb2            USB 2
85    21    crypto1         Cryptographic 1
86    22    xor0            XOR 0
87    23    crypto0         Cryptographic 0
88    25    tdm             Time Division Multiplexing
89    28    xor1            XOR 1
90    30    sata1           SATA 1
91
92  The following is a list of provided IDs for Armada 39x:
93
94    ID    Clock           Peripheral
95    -----------------------------------
96    5     pex1            PCIe 1
97    6     pex2            PCIe 2
98    7     pex3            PCIe 3
99    8     pex0            PCIe 0
100    9     usb3h0          USB3 Host 0
101    10    usb3h1          USB3 Host 1
102    15    sata0           SATA 0
103    17    sdio            SDIO
104    22    xor0            XOR 0
105    28    xor1            XOR 1
106
107  The following is a list of provided IDs for Armada XP:
108
109    ID    Clock           Peripheral
110    -----------------------------------
111    0     audio           Audio Cntrl
112    1     ge3             Gigabit Ethernet 3
113    2     ge2             Gigabit Ethernet 2
114    3     ge1             Gigabit Ethernet 1
115    4     ge0             Gigabit Ethernet 0
116    5     pex0            PCIe Cntrl 0
117    6     pex1            PCIe Cntrl 1
118    7     pex2            PCIe Cntrl 2
119    8     pex3            PCIe Cntrl 3
120    13    bp
121    14    sata0lnk
122    15    sata0           SATA Host 0
123    16    lcd             LCD Cntrl
124    17    sdio            SDHCI Host
125    18    usb0            USB Host 0
126    19    usb1            USB Host 1
127    20    usb2            USB Host 2
128    22    xor0            XOR DMA 0
129    23    crypto          CESA engine
130    25    tdm             Time Division Mplx
131    28    xor1            XOR DMA 1
132    29    sata1lnk
133    30    sata1           SATA Host 1
134
135  The following is a list of provided IDs for 98dx3236:
136
137    ID    Clock           Peripheral
138    -----------------------------------
139    3     ge1             Gigabit Ethernet 1
140    4     ge0             Gigabit Ethernet 0
141    5     pex0            PCIe Cntrl 0
142    17    sdio            SDHCI Host
143    18    usb0            USB Host 0
144    22    xor0            XOR DMA 0
145
146  The following is a list of provided IDs for Dove:
147
148  ID    Clock           Peripheral
149  -----------------------------------
150    0     usb0            USB Host 0
151    1     usb1            USB Host 1
152    2     ge              Gigabit Ethernet
153    3     sata            SATA Host
154    4     pex0            PCIe Cntrl 0
155    5     pex1            PCIe Cntrl 1
156    8     sdio0           SDHCI Host 0
157    9     sdio1           SDHCI Host 1
158    10    nand            NAND Cntrl
159    11    camera          Camera Cntrl
160    12    i2s0            I2S Cntrl 0
161    13    i2s1            I2S Cntrl 1
162    15    crypto          CESA engine
163    21    ac97            AC97 Cntrl
164    22    pdma            Peripheral DMA
165    23    xor0            XOR DMA 0
166    24    xor1            XOR DMA 1
167    30    gephy           Gigabit Ethernet PHY
168    Note: gephy(30) is implemented as a parent clock of ge(2)
169
170  The following is a list of provided IDs for Kirkwood:
171
172    ID    Clock           Peripheral
173    -----------------------------------
174    0     ge0             Gigabit Ethernet 0
175    2     pex0            PCIe Cntrl 0
176    3     usb0            USB Host 0
177    4     sdio            SDIO Cntrl
178    5     tsu             Transp. Stream Unit
179    6     dunit           SDRAM Cntrl
180    7     runit           Runit
181    8     xor0            XOR DMA 0
182    9     audio           I2S Cntrl 0
183    14    sata0           SATA Host 0
184    15    sata1           SATA Host 1
185    16    xor1            XOR DMA 1
186    17    crypto          CESA engine
187    18    pex1            PCIe Cntrl 1
188    19    ge1             Gigabit Ethernet 1
189    20    tdm             Time Division Mplx
190
191properties:
192  compatible:
193    enum:
194      - marvell,armada-370-gating-clock
195      - marvell,armada-375-gating-clock
196      - marvell,armada-380-gating-clock
197      - marvell,armada-390-gating-clock
198      - marvell,armada-xp-gating-clock
199      - marvell,mv98dx3236-gating-clock
200      - marvell,dove-gating-clock
201      - marvell,kirkwood-gating-clock
202
203  reg:
204    maxItems: 1
205
206  clocks:
207    maxItems: 1
208
209  '#clock-cells':
210    const: 1
211
212required:
213  - compatible
214  - reg
215  - '#clock-cells'
216
217additionalProperties: false
218
219examples:
220  - |
221    clock-controller@d0038 {
222        compatible = "marvell,dove-gating-clock";
223        reg = <0xd0038 0x4>;
224        /* default parent clock is tclk */
225        clocks = <&core_clk 0>;
226        #clock-cells = <1>;
227    };
228