blob: 361c8e5d80f17c1bce97cfcd0083225981c29639 [file] [log] [blame]
Patrice Chotard10563032018-12-06 11:59:42 +01001// SPDX-License-Identifier: GPL-2.0+
2
3#include <dt-bindings/memory/stm32-sdram.h>
4
Patrice Chotarda1e384b2017-09-13 18:00:11 +02005/{
6 clocks {
7 u-boot,dm-pre-reloc;
8 };
9
Patrice Chotard10563032018-12-06 11:59:42 +010010 aliases {
11 gpio0 = &gpioa;
12 gpio1 = &gpiob;
13 gpio2 = &gpioc;
14 gpio3 = &gpiod;
15 gpio4 = &gpioe;
16 gpio5 = &gpiof;
17 gpio6 = &gpiog;
18 gpio7 = &gpioh;
19 gpio8 = &gpioi;
20 gpio9 = &gpioj;
21 gpio10 = &gpiok;
22 mmc0 = &sdmmc1;
23 };
24
Patrice Chotarda1e384b2017-09-13 18:00:11 +020025 soc {
26 u-boot,dm-pre-reloc;
27 pin-controller {
28 u-boot,dm-pre-reloc;
29 };
Patrice Chotard10563032018-12-06 11:59:42 +010030
31 fmc: fmc@52004000 {
32 compatible = "st,stm32h7-fmc";
33 reg = <0x52004000 0x1000>;
34 clocks = <&rcc FMC_CK>;
35
36 pinctrl-0 = <&fmc_pins>;
37 pinctrl-names = "default";
38 status = "okay";
39
40 /*
41 * Memory configuration from sdram datasheet IS42S32800G-6BLI
42 * firsct bank is bank@0
43 * second bank is bank@1
44 */
45 bank1: bank@1 {
Patrice Chotard13ba6d02018-12-06 11:53:39 +010046 st,sdram-control = /bits/ 8 <NO_COL_9
47 NO_ROW_12
48 MWIDTH_32
49 BANKS_4
50 CAS_2
51 SDCLK_3
52 RD_BURST_EN
53 RD_PIPE_DL_0>;
54 st,sdram-timing = /bits/ 8 <TMRD_1
55 TXSR_1
56 TRAS_1
57 TRC_6
58 TRP_2
59 TWR_1
60 TRCD_1>;
Patrice Chotard10563032018-12-06 11:59:42 +010061 st,sdram-refcount = <1539>;
62 };
63 };
Patrice Chotarda1e384b2017-09-13 18:00:11 +020064 };
65};
66
67&clk_hse {
68 u-boot,dm-pre-reloc;
69};
70
Patrice Chotarda1e384b2017-09-13 18:00:11 +020071&clk_i2s {
72 u-boot,dm-pre-reloc;
73};
74
Patrice Chotard10563032018-12-06 11:59:42 +010075&clk_lse {
Patrice Chotarda1e384b2017-09-13 18:00:11 +020076 u-boot,dm-pre-reloc;
77};
78
Patrice Chotarda1e384b2017-09-13 18:00:11 +020079
80&fmc {
81 u-boot,dm-pre-reloc;
82};
83
Patrice Chotarda1e384b2017-09-13 18:00:11 +020084&gpioa {
85 u-boot,dm-pre-reloc;
Patrice Chotard13ba6d02018-12-06 11:53:39 +010086 compatible = "st,stm32-gpio";
Patrice Chotarda1e384b2017-09-13 18:00:11 +020087};
88
89&gpiob {
90 u-boot,dm-pre-reloc;
Patrice Chotard13ba6d02018-12-06 11:53:39 +010091 compatible = "st,stm32-gpio";
Patrice Chotarda1e384b2017-09-13 18:00:11 +020092};
93
94&gpioc {
95 u-boot,dm-pre-reloc;
Patrice Chotard13ba6d02018-12-06 11:53:39 +010096 compatible = "st,stm32-gpio";
Patrice Chotarda1e384b2017-09-13 18:00:11 +020097};
98
99&gpiod {
100 u-boot,dm-pre-reloc;
Patrice Chotard13ba6d02018-12-06 11:53:39 +0100101 compatible = "st,stm32-gpio";
Patrice Chotarda1e384b2017-09-13 18:00:11 +0200102};
103
104&gpioe {
105 u-boot,dm-pre-reloc;
Patrice Chotard13ba6d02018-12-06 11:53:39 +0100106 compatible = "st,stm32-gpio";
Patrice Chotarda1e384b2017-09-13 18:00:11 +0200107};
108
109&gpiof {
110 u-boot,dm-pre-reloc;
Patrice Chotard13ba6d02018-12-06 11:53:39 +0100111 compatible = "st,stm32-gpio";
Patrice Chotarda1e384b2017-09-13 18:00:11 +0200112};
113
114&gpiog {
115 u-boot,dm-pre-reloc;
Patrice Chotard13ba6d02018-12-06 11:53:39 +0100116 compatible = "st,stm32-gpio";
Patrice Chotarda1e384b2017-09-13 18:00:11 +0200117};
118
119&gpioh {
120 u-boot,dm-pre-reloc;
Patrice Chotard13ba6d02018-12-06 11:53:39 +0100121 compatible = "st,stm32-gpio";
Patrice Chotarda1e384b2017-09-13 18:00:11 +0200122};
123
124&gpioi {
125 u-boot,dm-pre-reloc;
Patrice Chotard13ba6d02018-12-06 11:53:39 +0100126 compatible = "st,stm32-gpio";
Patrice Chotarda1e384b2017-09-13 18:00:11 +0200127};
128
129&gpioj {
130 u-boot,dm-pre-reloc;
Patrice Chotard13ba6d02018-12-06 11:53:39 +0100131 compatible = "st,stm32-gpio";
Patrice Chotarda1e384b2017-09-13 18:00:11 +0200132};
133
134&gpiok {
135 u-boot,dm-pre-reloc;
Patrice Chotard13ba6d02018-12-06 11:53:39 +0100136 compatible = "st,stm32-gpio";
Patrice Chotarda1e384b2017-09-13 18:00:11 +0200137};
Patrice Chotard10563032018-12-06 11:59:42 +0100138
139&pinctrl {
140 fmc_pins: fmc@0 {
Patrice Chotard13ba6d02018-12-06 11:53:39 +0100141 pins {
142 pinmux = <STM32_PINMUX('D', 0, AF12)>,
143 <STM32_PINMUX('D', 1, AF12)>,
144 <STM32_PINMUX('D', 8, AF12)>,
145 <STM32_PINMUX('D', 9, AF12)>,
146 <STM32_PINMUX('D',10, AF12)>,
147 <STM32_PINMUX('D',14, AF12)>,
148 <STM32_PINMUX('D',15, AF12)>,
Patrice Chotard10563032018-12-06 11:59:42 +0100149
Patrice Chotard13ba6d02018-12-06 11:53:39 +0100150 <STM32_PINMUX('E', 0, AF12)>,
151 <STM32_PINMUX('E', 1, AF12)>,
152 <STM32_PINMUX('E', 7, AF12)>,
153 <STM32_PINMUX('E', 8, AF12)>,
154 <STM32_PINMUX('E', 9, AF12)>,
155 <STM32_PINMUX('E',10, AF12)>,
156 <STM32_PINMUX('E',11, AF12)>,
157 <STM32_PINMUX('E',12, AF12)>,
158 <STM32_PINMUX('E',13, AF12)>,
159 <STM32_PINMUX('E',14, AF12)>,
160 <STM32_PINMUX('E',15, AF12)>,
Patrice Chotard10563032018-12-06 11:59:42 +0100161
Patrice Chotard13ba6d02018-12-06 11:53:39 +0100162 <STM32_PINMUX('F', 0, AF12)>,
163 <STM32_PINMUX('F', 1, AF12)>,
164 <STM32_PINMUX('F', 2, AF12)>,
165 <STM32_PINMUX('F', 3, AF12)>,
166 <STM32_PINMUX('F', 4, AF12)>,
167 <STM32_PINMUX('F', 5, AF12)>,
168 <STM32_PINMUX('F',11, AF12)>,
169 <STM32_PINMUX('F',12, AF12)>,
170 <STM32_PINMUX('F',13, AF12)>,
171 <STM32_PINMUX('F',14, AF12)>,
172 <STM32_PINMUX('F',15, AF12)>,
Patrice Chotard10563032018-12-06 11:59:42 +0100173
Patrice Chotard13ba6d02018-12-06 11:53:39 +0100174 <STM32_PINMUX('G', 0, AF12)>,
175 <STM32_PINMUX('G', 1, AF12)>,
176 <STM32_PINMUX('G', 2, AF12)>,
177 <STM32_PINMUX('G', 4, AF12)>,
178 <STM32_PINMUX('G', 5, AF12)>,
179 <STM32_PINMUX('G', 8, AF12)>,
180 <STM32_PINMUX('G',15, AF12)>,
Patrice Chotard10563032018-12-06 11:59:42 +0100181
Patrice Chotard13ba6d02018-12-06 11:53:39 +0100182 <STM32_PINMUX('H', 5, AF12)>,
183 <STM32_PINMUX('H', 6, AF12)>,
184 <STM32_PINMUX('H', 7, AF12)>,
185 <STM32_PINMUX('H', 8, AF12)>,
186 <STM32_PINMUX('H', 9, AF12)>,
187 <STM32_PINMUX('H',10, AF12)>,
188 <STM32_PINMUX('H',11, AF12)>,
189 <STM32_PINMUX('H',12, AF12)>,
190 <STM32_PINMUX('H',13, AF12)>,
191 <STM32_PINMUX('H',14, AF12)>,
192 <STM32_PINMUX('H',15, AF12)>,
Patrice Chotard10563032018-12-06 11:59:42 +0100193
Patrice Chotard13ba6d02018-12-06 11:53:39 +0100194 <STM32_PINMUX('I', 0, AF12)>,
195 <STM32_PINMUX('I', 1, AF12)>,
196 <STM32_PINMUX('I', 2, AF12)>,
197 <STM32_PINMUX('I', 3, AF12)>,
198 <STM32_PINMUX('I', 4, AF12)>,
199 <STM32_PINMUX('I', 5, AF12)>,
200 <STM32_PINMUX('I', 6, AF12)>,
201 <STM32_PINMUX('I', 7, AF12)>,
202 <STM32_PINMUX('I', 9, AF12)>,
203 <STM32_PINMUX('I',10, AF12)>;
Patrice Chotard10563032018-12-06 11:59:42 +0100204
Patrice Chotard13ba6d02018-12-06 11:53:39 +0100205 slew-rate = <3>;
Patrice Chotard10563032018-12-06 11:59:42 +0100206 };
207 };
Patrice Chotard10563032018-12-06 11:59:42 +0100208};
209
210&pwrcfg {
211 u-boot,dm-pre-reloc;
212};
213
214&rcc {
215 u-boot,dm-pre-reloc;
216};
Patrick Delaunaye07a86b2019-11-06 16:16:32 +0100217
218&sdmmc1 {
219 compatible = "st,stm32-sdmmc2", "arm,pl18x", "arm,primecell";
220};