"Das U-Boot" Source Tree
1// SPDX-License-Identifier: GPL-2.0+ OR BSD-3-Clause
2/*
3 * Copyright : STMicroelectronics 2018
4 */
5#include <linux/stringify.h>
6
7#ifdef CONFIG_SPL
8&ddr {
9 clocks = <&rcc AXIDCG>,
10 <&rcc DDRC1>,
11 <&rcc DDRC2>,
12 <&rcc DDRPHYC>,
13 <&rcc DDRCAPB>,
14 <&rcc DDRPHYCAPB>;
15
16 clock-names = "axidcg",
17 "ddrc1",
18 "ddrc2",
19 "ddrphyc",
20 "ddrcapb",
21 "ddrphycapb";
22
23 config-DDR_MEM_COMPATIBLE {
24 bootph-all;
25
26 compatible = __stringify(st,DDR_MEM_COMPATIBLE);
27
28 st,mem-name = DDR_MEM_NAME;
29 st,mem-speed = <DDR_MEM_SPEED>;
30 st,mem-size = <DDR_MEM_SIZE>;
31
32 st,ctl-reg = <
33 DDR_MSTR
34 DDR_MRCTRL0
35 DDR_MRCTRL1
36 DDR_DERATEEN
37 DDR_DERATEINT
38 DDR_PWRCTL
39 DDR_PWRTMG
40 DDR_HWLPCTL
41 DDR_RFSHCTL0
42 DDR_RFSHCTL3
43 DDR_CRCPARCTL0
44 DDR_ZQCTL0
45 DDR_DFITMG0
46 DDR_DFITMG1
47 DDR_DFILPCFG0
48 DDR_DFIUPD0
49 DDR_DFIUPD1
50 DDR_DFIUPD2
51 DDR_DFIPHYMSTR
52 DDR_ODTMAP
53 DDR_DBG0
54 DDR_DBG1
55 DDR_DBGCMD
56 DDR_POISONCFG
57 DDR_PCCFG
58 >;
59
60 st,ctl-timing = <
61 DDR_RFSHTMG
62 DDR_DRAMTMG0
63 DDR_DRAMTMG1
64 DDR_DRAMTMG2
65 DDR_DRAMTMG3
66 DDR_DRAMTMG4
67 DDR_DRAMTMG5
68 DDR_DRAMTMG6
69 DDR_DRAMTMG7
70 DDR_DRAMTMG8
71 DDR_DRAMTMG14
72 DDR_ODTCFG
73 >;
74
75 st,ctl-map = <
76 DDR_ADDRMAP1
77 DDR_ADDRMAP2
78 DDR_ADDRMAP3
79 DDR_ADDRMAP4
80 DDR_ADDRMAP5
81 DDR_ADDRMAP6
82 DDR_ADDRMAP9
83 DDR_ADDRMAP10
84 DDR_ADDRMAP11
85 >;
86
87 st,ctl-perf = <
88 DDR_SCHED
89 DDR_SCHED1
90 DDR_PERFHPR1
91 DDR_PERFLPR1
92 DDR_PERFWR1
93 DDR_PCFGR_0
94 DDR_PCFGW_0
95 DDR_PCFGQOS0_0
96 DDR_PCFGQOS1_0
97 DDR_PCFGWQOS0_0
98 DDR_PCFGWQOS1_0
99 DDR_PCFGR_1
100 DDR_PCFGW_1
101 DDR_PCFGQOS0_1
102 DDR_PCFGQOS1_1
103 DDR_PCFGWQOS0_1
104 DDR_PCFGWQOS1_1
105 >;
106
107 st,phy-reg = <
108 DDR_PGCR
109 DDR_ACIOCR
110 DDR_DXCCR
111 DDR_DSGCR
112 DDR_DCR
113 DDR_ODTCR
114 DDR_ZQ0CR1
115 DDR_DX0GCR
116 DDR_DX1GCR
117 DDR_DX2GCR
118 DDR_DX3GCR
119 >;
120
121 st,phy-timing = <
122 DDR_PTR0
123 DDR_PTR1
124 DDR_PTR2
125 DDR_DTPR0
126 DDR_DTPR1
127 DDR_DTPR2
128 DDR_MR0
129 DDR_MR1
130 DDR_MR2
131 DDR_MR3
132 >;
133
134 status = "okay";
135 };
136};
137#endif
138
139#undef DDR_MEM_COMPATIBLE
140#undef DDR_MEM_NAME
141#undef DDR_MEM_SPEED
142#undef DDR_MEM_SIZE
143
144#undef DDR_MSTR
145#undef DDR_MRCTRL0
146#undef DDR_MRCTRL1
147#undef DDR_DERATEEN
148#undef DDR_DERATEINT
149#undef DDR_PWRCTL
150#undef DDR_PWRTMG
151#undef DDR_HWLPCTL
152#undef DDR_RFSHCTL0
153#undef DDR_RFSHCTL3
154#undef DDR_RFSHTMG
155#undef DDR_CRCPARCTL0
156#undef DDR_DRAMTMG0
157#undef DDR_DRAMTMG1
158#undef DDR_DRAMTMG2
159#undef DDR_DRAMTMG3
160#undef DDR_DRAMTMG4
161#undef DDR_DRAMTMG5
162#undef DDR_DRAMTMG6
163#undef DDR_DRAMTMG7
164#undef DDR_DRAMTMG8
165#undef DDR_DRAMTMG14
166#undef DDR_ZQCTL0
167#undef DDR_DFITMG0
168#undef DDR_DFITMG1
169#undef DDR_DFILPCFG0
170#undef DDR_DFIUPD0
171#undef DDR_DFIUPD1
172#undef DDR_DFIUPD2
173#undef DDR_DFIPHYMSTR
174#undef DDR_ADDRMAP1
175#undef DDR_ADDRMAP2
176#undef DDR_ADDRMAP3
177#undef DDR_ADDRMAP4
178#undef DDR_ADDRMAP5
179#undef DDR_ADDRMAP6
180#undef DDR_ADDRMAP9
181#undef DDR_ADDRMAP10
182#undef DDR_ADDRMAP11
183#undef DDR_ODTCFG
184#undef DDR_ODTMAP
185#undef DDR_SCHED
186#undef DDR_SCHED1
187#undef DDR_PERFHPR1
188#undef DDR_PERFLPR1
189#undef DDR_PERFWR1
190#undef DDR_DBG0
191#undef DDR_DBG1
192#undef DDR_DBGCMD
193#undef DDR_POISONCFG
194#undef DDR_PCCFG
195#undef DDR_PCFGR_0
196#undef DDR_PCFGW_0
197#undef DDR_PCFGQOS0_0
198#undef DDR_PCFGQOS1_0
199#undef DDR_PCFGWQOS0_0
200#undef DDR_PCFGWQOS1_0
201#undef DDR_PCFGR_1
202#undef DDR_PCFGW_1
203#undef DDR_PCFGQOS0_1
204#undef DDR_PCFGQOS1_1
205#undef DDR_PCFGWQOS0_1
206#undef DDR_PCFGWQOS1_1
207#undef DDR_PGCR
208#undef DDR_PTR0
209#undef DDR_PTR1
210#undef DDR_PTR2
211#undef DDR_ACIOCR
212#undef DDR_DXCCR
213#undef DDR_DSGCR
214#undef DDR_DCR
215#undef DDR_DTPR0
216#undef DDR_DTPR1
217#undef DDR_DTPR2
218#undef DDR_MR0
219#undef DDR_MR1
220#undef DDR_MR2
221#undef DDR_MR3
222#undef DDR_ODTCR
223#undef DDR_ZQ0CR1
224#undef DDR_DX0GCR
225#undef DDR_DX1GCR
226#undef DDR_DX2GCR
227#undef DDR_DX3GCR