Skip to content

Commit 722dc8a

Browse files
Gabriel-Fernandzbebarino
authored andcommitted
dt-bindings: rcc: stm32: add new compatible for STM32MP13 SoC
New compatible to manage clock and reset of STM32MP13 SoC. Reviewed-by: Krzysztof Kozlowski <[email protected]> Signed-off-by: Gabriel Fernandez <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Stephen Boyd <[email protected]>
1 parent 3123109 commit 722dc8a

File tree

3 files changed

+331
-0
lines changed

3 files changed

+331
-0
lines changed

Documentation/devicetree/bindings/clock/st,stm32mp1-rcc.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ description: |
4141
4242
The list of valid indices for STM32MP1 is available in:
4343
include/dt-bindings/reset-controller/stm32mp1-resets.h
44+
include/dt-bindings/reset-controller/stm32mp13-resets.h
4445
4546
This file implements defines like:
4647
#define LTDC_R 3072
@@ -57,6 +58,7 @@ properties:
5758
- enum:
5859
- st,stm32mp1-rcc-secure
5960
- st,stm32mp1-rcc
61+
- st,stm32mp13-rcc
6062
- const: syscon
6163

6264
reg:
Lines changed: 229 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,229 @@
1+
/* SPDX-License-Identifier: GPL-2.0+ or BSD-3-Clause */
2+
/*
3+
* Copyright (C) STMicroelectronics 2020 - All Rights Reserved
4+
* Author: Gabriel Fernandez <[email protected]> for STMicroelectronics.
5+
*/
6+
7+
#ifndef _DT_BINDINGS_STM32MP13_CLKS_H_
8+
#define _DT_BINDINGS_STM32MP13_CLKS_H_
9+
10+
/* OSCILLATOR clocks */
11+
#define CK_HSE 0
12+
#define CK_CSI 1
13+
#define CK_LSI 2
14+
#define CK_LSE 3
15+
#define CK_HSI 4
16+
#define CK_HSE_DIV2 5
17+
18+
/* PLL */
19+
#define PLL1 6
20+
#define PLL2 7
21+
#define PLL3 8
22+
#define PLL4 9
23+
24+
/* ODF */
25+
#define PLL1_P 10
26+
#define PLL1_Q 11
27+
#define PLL1_R 12
28+
#define PLL2_P 13
29+
#define PLL2_Q 14
30+
#define PLL2_R 15
31+
#define PLL3_P 16
32+
#define PLL3_Q 17
33+
#define PLL3_R 18
34+
#define PLL4_P 19
35+
#define PLL4_Q 20
36+
#define PLL4_R 21
37+
38+
#define PCLK1 22
39+
#define PCLK2 23
40+
#define PCLK3 24
41+
#define PCLK4 25
42+
#define PCLK5 26
43+
#define PCLK6 27
44+
45+
/* SYSTEM CLOCK */
46+
#define CK_PER 28
47+
#define CK_MPU 29
48+
#define CK_AXI 30
49+
#define CK_MLAHB 31
50+
51+
/* BASE TIMER */
52+
#define CK_TIMG1 32
53+
#define CK_TIMG2 33
54+
#define CK_TIMG3 34
55+
56+
/* AUX */
57+
#define RTC 35
58+
59+
/* TRACE & DEBUG clocks */
60+
#define CK_DBG 36
61+
#define CK_TRACE 37
62+
63+
/* MCO clocks */
64+
#define CK_MCO1 38
65+
#define CK_MCO2 39
66+
67+
/* IP clocks */
68+
#define SYSCFG 40
69+
#define VREF 41
70+
#define DTS 42
71+
#define PMBCTRL 43
72+
#define HDP 44
73+
#define IWDG2 45
74+
#define STGENRO 46
75+
#define USART1 47
76+
#define RTCAPB 48
77+
#define TZC 49
78+
#define TZPC 50
79+
#define IWDG1 51
80+
#define BSEC 52
81+
#define DMA1 53
82+
#define DMA2 54
83+
#define DMAMUX1 55
84+
#define DMAMUX2 56
85+
#define GPIOA 57
86+
#define GPIOB 58
87+
#define GPIOC 59
88+
#define GPIOD 60
89+
#define GPIOE 61
90+
#define GPIOF 62
91+
#define GPIOG 63
92+
#define GPIOH 64
93+
#define GPIOI 65
94+
#define CRYP1 66
95+
#define HASH1 67
96+
#define BKPSRAM 68
97+
#define MDMA 69
98+
#define CRC1 70
99+
#define USBH 71
100+
#define DMA3 72
101+
#define TSC 73
102+
#define PKA 74
103+
#define AXIMC 75
104+
#define MCE 76
105+
#define ETH1TX 77
106+
#define ETH2TX 78
107+
#define ETH1RX 79
108+
#define ETH2RX 80
109+
#define ETH1MAC 81
110+
#define ETH2MAC 82
111+
#define ETH1STP 83
112+
#define ETH2STP 84
113+
114+
/* IP clocks with parents */
115+
#define SDMMC1_K 85
116+
#define SDMMC2_K 86
117+
#define ADC1_K 87
118+
#define ADC2_K 88
119+
#define FMC_K 89
120+
#define QSPI_K 90
121+
#define RNG1_K 91
122+
#define USBPHY_K 92
123+
#define STGEN_K 93
124+
#define SPDIF_K 94
125+
#define SPI1_K 95
126+
#define SPI2_K 96
127+
#define SPI3_K 97
128+
#define SPI4_K 98
129+
#define SPI5_K 99
130+
#define I2C1_K 100
131+
#define I2C2_K 101
132+
#define I2C3_K 102
133+
#define I2C4_K 103
134+
#define I2C5_K 104
135+
#define TIM2_K 105
136+
#define TIM3_K 106
137+
#define TIM4_K 107
138+
#define TIM5_K 108
139+
#define TIM6_K 109
140+
#define TIM7_K 110
141+
#define TIM12_K 111
142+
#define TIM13_K 112
143+
#define TIM14_K 113
144+
#define TIM1_K 114
145+
#define TIM8_K 115
146+
#define TIM15_K 116
147+
#define TIM16_K 117
148+
#define TIM17_K 118
149+
#define LPTIM1_K 119
150+
#define LPTIM2_K 120
151+
#define LPTIM3_K 121
152+
#define LPTIM4_K 122
153+
#define LPTIM5_K 123
154+
#define USART1_K 124
155+
#define USART2_K 125
156+
#define USART3_K 126
157+
#define UART4_K 127
158+
#define UART5_K 128
159+
#define USART6_K 129
160+
#define UART7_K 130
161+
#define UART8_K 131
162+
#define DFSDM_K 132
163+
#define FDCAN_K 133
164+
#define SAI1_K 134
165+
#define SAI2_K 135
166+
#define ADFSDM_K 136
167+
#define USBO_K 137
168+
#define LTDC_PX 138
169+
#define ETH1CK_K 139
170+
#define ETH1PTP_K 140
171+
#define ETH2CK_K 141
172+
#define ETH2PTP_K 142
173+
#define DCMIPP_K 143
174+
#define SAES_K 144
175+
#define DTS_K 145
176+
177+
/* DDR */
178+
#define DDRC1 146
179+
#define DDRC1LP 147
180+
#define DDRC2 148
181+
#define DDRC2LP 149
182+
#define DDRPHYC 150
183+
#define DDRPHYCLP 151
184+
#define DDRCAPB 152
185+
#define DDRCAPBLP 153
186+
#define AXIDCG 154
187+
#define DDRPHYCAPB 155
188+
#define DDRPHYCAPBLP 156
189+
#define DDRPERFM 157
190+
191+
#define ADC1 158
192+
#define ADC2 159
193+
#define SAI1 160
194+
#define SAI2 161
195+
196+
#define STM32MP1_LAST_CLK 162
197+
198+
/* SCMI clock identifiers */
199+
#define CK_SCMI_HSE 0
200+
#define CK_SCMI_HSI 1
201+
#define CK_SCMI_CSI 2
202+
#define CK_SCMI_LSE 3
203+
#define CK_SCMI_LSI 4
204+
#define CK_SCMI_HSE_DIV2 5
205+
#define CK_SCMI_PLL2_Q 6
206+
#define CK_SCMI_PLL2_R 7
207+
#define CK_SCMI_PLL3_P 8
208+
#define CK_SCMI_PLL3_Q 9
209+
#define CK_SCMI_PLL3_R 10
210+
#define CK_SCMI_PLL4_P 11
211+
#define CK_SCMI_PLL4_Q 12
212+
#define CK_SCMI_PLL4_R 13
213+
#define CK_SCMI_MPU 14
214+
#define CK_SCMI_AXI 15
215+
#define CK_SCMI_MLAHB 16
216+
#define CK_SCMI_CKPER 17
217+
#define CK_SCMI_PCLK1 18
218+
#define CK_SCMI_PCLK2 19
219+
#define CK_SCMI_PCLK3 20
220+
#define CK_SCMI_PCLK4 21
221+
#define CK_SCMI_PCLK5 22
222+
#define CK_SCMI_PCLK6 23
223+
#define CK_SCMI_CKTIMG1 24
224+
#define CK_SCMI_CKTIMG2 25
225+
#define CK_SCMI_CKTIMG3 26
226+
#define CK_SCMI_RTC 27
227+
#define CK_SCMI_RTCAPB 28
228+
229+
#endif /* _DT_BINDINGS_STM32MP13_CLKS_H_ */
Lines changed: 100 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,100 @@
1+
/* SPDX-License-Identifier: GPL-2.0 or BSD-3-Clause */
2+
/*
3+
* Copyright (C) STMicroelectronics 2018 - All Rights Reserved
4+
* Author: Gabriel Fernandez <[email protected]> for STMicroelectronics.
5+
*/
6+
7+
#ifndef _DT_BINDINGS_STM32MP13_RESET_H_
8+
#define _DT_BINDINGS_STM32MP13_RESET_H_
9+
10+
#define TIM2_R 13568
11+
#define TIM3_R 13569
12+
#define TIM4_R 13570
13+
#define TIM5_R 13571
14+
#define TIM6_R 13572
15+
#define TIM7_R 13573
16+
#define LPTIM1_R 13577
17+
#define SPI2_R 13579
18+
#define SPI3_R 13580
19+
#define USART3_R 13583
20+
#define UART4_R 13584
21+
#define UART5_R 13585
22+
#define UART7_R 13586
23+
#define UART8_R 13587
24+
#define I2C1_R 13589
25+
#define I2C2_R 13590
26+
#define SPDIF_R 13594
27+
#define TIM1_R 13632
28+
#define TIM8_R 13633
29+
#define SPI1_R 13640
30+
#define USART6_R 13645
31+
#define SAI1_R 13648
32+
#define SAI2_R 13649
33+
#define DFSDM_R 13652
34+
#define FDCAN_R 13656
35+
#define LPTIM2_R 13696
36+
#define LPTIM3_R 13697
37+
#define LPTIM4_R 13698
38+
#define LPTIM5_R 13699
39+
#define SYSCFG_R 13707
40+
#define VREF_R 13709
41+
#define DTS_R 13712
42+
#define PMBCTRL_R 13713
43+
#define LTDC_R 13760
44+
#define DCMIPP_R 13761
45+
#define DDRPERFM_R 13768
46+
#define USBPHY_R 13776
47+
#define STGEN_R 13844
48+
#define USART1_R 13888
49+
#define USART2_R 13889
50+
#define SPI4_R 13890
51+
#define SPI5_R 13891
52+
#define I2C3_R 13892
53+
#define I2C4_R 13893
54+
#define I2C5_R 13894
55+
#define TIM12_R 13895
56+
#define TIM13_R 13896
57+
#define TIM14_R 13897
58+
#define TIM15_R 13898
59+
#define TIM16_R 13899
60+
#define TIM17_R 13900
61+
#define DMA1_R 13952
62+
#define DMA2_R 13953
63+
#define DMAMUX1_R 13954
64+
#define DMA3_R 13955
65+
#define DMAMUX2_R 13956
66+
#define ADC1_R 13957
67+
#define ADC2_R 13958
68+
#define USBO_R 13960
69+
#define GPIOA_R 14080
70+
#define GPIOB_R 14081
71+
#define GPIOC_R 14082
72+
#define GPIOD_R 14083
73+
#define GPIOE_R 14084
74+
#define GPIOF_R 14085
75+
#define GPIOG_R 14086
76+
#define GPIOH_R 14087
77+
#define GPIOI_R 14088
78+
#define TSC_R 14095
79+
#define PKA_R 14146
80+
#define SAES_R 14147
81+
#define CRYP1_R 14148
82+
#define HASH1_R 14149
83+
#define RNG1_R 14150
84+
#define AXIMC_R 14160
85+
#define MDMA_R 14208
86+
#define MCE_R 14209
87+
#define ETH1MAC_R 14218
88+
#define FMC_R 14220
89+
#define QSPI_R 14222
90+
#define SDMMC1_R 14224
91+
#define SDMMC2_R 14225
92+
#define CRC1_R 14228
93+
#define USBH_R 14232
94+
#define ETH2MAC_R 14238
95+
96+
/* SCMI reset domain identifiers */
97+
#define RST_SCMI_LTDC 0
98+
#define RST_SCMI_MDMA 1
99+
100+
#endif /* _DT_BINDINGS_STM32MP13_RESET_H_ */

0 commit comments

Comments
 (0)