1*4882a593Smuzhiyun# SPDX-License-Identifier: (GPL-2.0)
2*4882a593Smuzhiyun%YAML 1.2
3*4882a593Smuzhiyun---
4*4882a593Smuzhiyun$id: http://devicetree.org/schemas/memory-controllers/nvidia,tegra30-emc.yaml#
5*4882a593Smuzhiyun$schema: http://devicetree.org/meta-schemas/core.yaml#
6*4882a593Smuzhiyun
7*4882a593Smuzhiyuntitle: NVIDIA Tegra30 SoC External Memory Controller
8*4882a593Smuzhiyun
9*4882a593Smuzhiyunmaintainers:
10*4882a593Smuzhiyun  - Dmitry Osipenko <digetx@gmail.com>
11*4882a593Smuzhiyun  - Jon Hunter <jonathanh@nvidia.com>
12*4882a593Smuzhiyun  - Thierry Reding <thierry.reding@gmail.com>
13*4882a593Smuzhiyun
14*4882a593Smuzhiyundescription: |
15*4882a593Smuzhiyun  The EMC interfaces with the off-chip SDRAM to service the request stream
16*4882a593Smuzhiyun  sent from Memory Controller. The EMC also has various performance-affecting
17*4882a593Smuzhiyun  settings beyond the obvious SDRAM configuration parameters and initialization
18*4882a593Smuzhiyun  settings. Tegra30 EMC supports multiple JEDEC standard protocols: LPDDR2,
19*4882a593Smuzhiyun  LPDDR3, and DDR3.
20*4882a593Smuzhiyun
21*4882a593Smuzhiyunproperties:
22*4882a593Smuzhiyun  compatible:
23*4882a593Smuzhiyun    const: nvidia,tegra30-emc
24*4882a593Smuzhiyun
25*4882a593Smuzhiyun  reg:
26*4882a593Smuzhiyun    maxItems: 1
27*4882a593Smuzhiyun
28*4882a593Smuzhiyun  clocks:
29*4882a593Smuzhiyun    maxItems: 1
30*4882a593Smuzhiyun
31*4882a593Smuzhiyun  interrupts:
32*4882a593Smuzhiyun    maxItems: 1
33*4882a593Smuzhiyun
34*4882a593Smuzhiyun  nvidia,memory-controller:
35*4882a593Smuzhiyun    $ref: /schemas/types.yaml#/definitions/phandle
36*4882a593Smuzhiyun    description:
37*4882a593Smuzhiyun      Phandle of the Memory Controller node.
38*4882a593Smuzhiyun
39*4882a593SmuzhiyunpatternProperties:
40*4882a593Smuzhiyun  "^emc-timings-[0-9]+$":
41*4882a593Smuzhiyun    type: object
42*4882a593Smuzhiyun    properties:
43*4882a593Smuzhiyun      nvidia,ram-code:
44*4882a593Smuzhiyun        $ref: /schemas/types.yaml#/definitions/uint32
45*4882a593Smuzhiyun        description:
46*4882a593Smuzhiyun          Value of RAM_CODE this timing set is used for.
47*4882a593Smuzhiyun
48*4882a593Smuzhiyun    patternProperties:
49*4882a593Smuzhiyun      "^timing-[0-9]+$":
50*4882a593Smuzhiyun        type: object
51*4882a593Smuzhiyun        properties:
52*4882a593Smuzhiyun          clock-frequency:
53*4882a593Smuzhiyun            description:
54*4882a593Smuzhiyun              Memory clock rate in Hz.
55*4882a593Smuzhiyun            minimum: 1000000
56*4882a593Smuzhiyun            maximum: 900000000
57*4882a593Smuzhiyun
58*4882a593Smuzhiyun          nvidia,emc-auto-cal-interval:
59*4882a593Smuzhiyun            description:
60*4882a593Smuzhiyun              Pad calibration interval in microseconds.
61*4882a593Smuzhiyun            $ref: /schemas/types.yaml#/definitions/uint32
62*4882a593Smuzhiyun            minimum: 0
63*4882a593Smuzhiyun            maximum: 2097151
64*4882a593Smuzhiyun
65*4882a593Smuzhiyun          nvidia,emc-mode-1:
66*4882a593Smuzhiyun            $ref: /schemas/types.yaml#/definitions/uint32
67*4882a593Smuzhiyun            description:
68*4882a593Smuzhiyun              Mode Register 1.
69*4882a593Smuzhiyun
70*4882a593Smuzhiyun          nvidia,emc-mode-2:
71*4882a593Smuzhiyun            $ref: /schemas/types.yaml#/definitions/uint32
72*4882a593Smuzhiyun            description:
73*4882a593Smuzhiyun              Mode Register 2.
74*4882a593Smuzhiyun
75*4882a593Smuzhiyun          nvidia,emc-mode-reset:
76*4882a593Smuzhiyun            $ref: /schemas/types.yaml#/definitions/uint32
77*4882a593Smuzhiyun            description:
78*4882a593Smuzhiyun              Mode Register 0.
79*4882a593Smuzhiyun
80*4882a593Smuzhiyun          nvidia,emc-zcal-cnt-long:
81*4882a593Smuzhiyun            description:
82*4882a593Smuzhiyun              Number of EMC clocks to wait before issuing any commands after
83*4882a593Smuzhiyun              sending ZCAL_MRW_CMD.
84*4882a593Smuzhiyun            $ref: /schemas/types.yaml#/definitions/uint32
85*4882a593Smuzhiyun            minimum: 0
86*4882a593Smuzhiyun            maximum: 1023
87*4882a593Smuzhiyun
88*4882a593Smuzhiyun          nvidia,emc-cfg-dyn-self-ref:
89*4882a593Smuzhiyun            type: boolean
90*4882a593Smuzhiyun            description:
91*4882a593Smuzhiyun              Dynamic self-refresh enabled.
92*4882a593Smuzhiyun
93*4882a593Smuzhiyun          nvidia,emc-cfg-periodic-qrst:
94*4882a593Smuzhiyun            type: boolean
95*4882a593Smuzhiyun            description:
96*4882a593Smuzhiyun              FBIO "read" FIFO periodic resetting enabled.
97*4882a593Smuzhiyun
98*4882a593Smuzhiyun          nvidia,emc-configuration:
99*4882a593Smuzhiyun            description:
100*4882a593Smuzhiyun              EMC timing characterization data. These are the registers
101*4882a593Smuzhiyun              (see section "18.13.2 EMC Registers" in the TRM) whose values
102*4882a593Smuzhiyun              need to be specified, according to the board documentation.
103*4882a593Smuzhiyun            $ref: /schemas/types.yaml#/definitions/uint32-array
104*4882a593Smuzhiyun            items:
105*4882a593Smuzhiyun              - description: EMC_RC
106*4882a593Smuzhiyun              - description: EMC_RFC
107*4882a593Smuzhiyun              - description: EMC_RAS
108*4882a593Smuzhiyun              - description: EMC_RP
109*4882a593Smuzhiyun              - description: EMC_R2W
110*4882a593Smuzhiyun              - description: EMC_W2R
111*4882a593Smuzhiyun              - description: EMC_R2P
112*4882a593Smuzhiyun              - description: EMC_W2P
113*4882a593Smuzhiyun              - description: EMC_RD_RCD
114*4882a593Smuzhiyun              - description: EMC_WR_RCD
115*4882a593Smuzhiyun              - description: EMC_RRD
116*4882a593Smuzhiyun              - description: EMC_REXT
117*4882a593Smuzhiyun              - description: EMC_WEXT
118*4882a593Smuzhiyun              - description: EMC_WDV
119*4882a593Smuzhiyun              - description: EMC_QUSE
120*4882a593Smuzhiyun              - description: EMC_QRST
121*4882a593Smuzhiyun              - description: EMC_QSAFE
122*4882a593Smuzhiyun              - description: EMC_RDV
123*4882a593Smuzhiyun              - description: EMC_REFRESH
124*4882a593Smuzhiyun              - description: EMC_BURST_REFRESH_NUM
125*4882a593Smuzhiyun              - description: EMC_PRE_REFRESH_REQ_CNT
126*4882a593Smuzhiyun              - description: EMC_PDEX2WR
127*4882a593Smuzhiyun              - description: EMC_PDEX2RD
128*4882a593Smuzhiyun              - description: EMC_PCHG2PDEN
129*4882a593Smuzhiyun              - description: EMC_ACT2PDEN
130*4882a593Smuzhiyun              - description: EMC_AR2PDEN
131*4882a593Smuzhiyun              - description: EMC_RW2PDEN
132*4882a593Smuzhiyun              - description: EMC_TXSR
133*4882a593Smuzhiyun              - description: EMC_TXSRDLL
134*4882a593Smuzhiyun              - description: EMC_TCKE
135*4882a593Smuzhiyun              - description: EMC_TFAW
136*4882a593Smuzhiyun              - description: EMC_TRPAB
137*4882a593Smuzhiyun              - description: EMC_TCLKSTABLE
138*4882a593Smuzhiyun              - description: EMC_TCLKSTOP
139*4882a593Smuzhiyun              - description: EMC_TREFBW
140*4882a593Smuzhiyun              - description: EMC_QUSE_EXTRA
141*4882a593Smuzhiyun              - description: EMC_FBIO_CFG6
142*4882a593Smuzhiyun              - description: EMC_ODT_WRITE
143*4882a593Smuzhiyun              - description: EMC_ODT_READ
144*4882a593Smuzhiyun              - description: EMC_FBIO_CFG5
145*4882a593Smuzhiyun              - description: EMC_CFG_DIG_DLL
146*4882a593Smuzhiyun              - description: EMC_CFG_DIG_DLL_PERIOD
147*4882a593Smuzhiyun              - description: EMC_DLL_XFORM_DQS0
148*4882a593Smuzhiyun              - description: EMC_DLL_XFORM_DQS1
149*4882a593Smuzhiyun              - description: EMC_DLL_XFORM_DQS2
150*4882a593Smuzhiyun              - description: EMC_DLL_XFORM_DQS3
151*4882a593Smuzhiyun              - description: EMC_DLL_XFORM_DQS4
152*4882a593Smuzhiyun              - description: EMC_DLL_XFORM_DQS5
153*4882a593Smuzhiyun              - description: EMC_DLL_XFORM_DQS6
154*4882a593Smuzhiyun              - description: EMC_DLL_XFORM_DQS7
155*4882a593Smuzhiyun              - description: EMC_DLL_XFORM_QUSE0
156*4882a593Smuzhiyun              - description: EMC_DLL_XFORM_QUSE1
157*4882a593Smuzhiyun              - description: EMC_DLL_XFORM_QUSE2
158*4882a593Smuzhiyun              - description: EMC_DLL_XFORM_QUSE3
159*4882a593Smuzhiyun              - description: EMC_DLL_XFORM_QUSE4
160*4882a593Smuzhiyun              - description: EMC_DLL_XFORM_QUSE5
161*4882a593Smuzhiyun              - description: EMC_DLL_XFORM_QUSE6
162*4882a593Smuzhiyun              - description: EMC_DLL_XFORM_QUSE7
163*4882a593Smuzhiyun              - description: EMC_DLI_TRIM_TXDQS0
164*4882a593Smuzhiyun              - description: EMC_DLI_TRIM_TXDQS1
165*4882a593Smuzhiyun              - description: EMC_DLI_TRIM_TXDQS2
166*4882a593Smuzhiyun              - description: EMC_DLI_TRIM_TXDQS3
167*4882a593Smuzhiyun              - description: EMC_DLI_TRIM_TXDQS4
168*4882a593Smuzhiyun              - description: EMC_DLI_TRIM_TXDQS5
169*4882a593Smuzhiyun              - description: EMC_DLI_TRIM_TXDQS6
170*4882a593Smuzhiyun              - description: EMC_DLI_TRIM_TXDQS7
171*4882a593Smuzhiyun              - description: EMC_DLL_XFORM_DQ0
172*4882a593Smuzhiyun              - description: EMC_DLL_XFORM_DQ1
173*4882a593Smuzhiyun              - description: EMC_DLL_XFORM_DQ2
174*4882a593Smuzhiyun              - description: EMC_DLL_XFORM_DQ3
175*4882a593Smuzhiyun              - description: EMC_XM2CMDPADCTRL
176*4882a593Smuzhiyun              - description: EMC_XM2DQSPADCTRL2
177*4882a593Smuzhiyun              - description: EMC_XM2DQPADCTRL2
178*4882a593Smuzhiyun              - description: EMC_XM2CLKPADCTRL
179*4882a593Smuzhiyun              - description: EMC_XM2COMPPADCTRL
180*4882a593Smuzhiyun              - description: EMC_XM2VTTGENPADCTRL
181*4882a593Smuzhiyun              - description: EMC_XM2VTTGENPADCTRL2
182*4882a593Smuzhiyun              - description: EMC_XM2QUSEPADCTRL
183*4882a593Smuzhiyun              - description: EMC_XM2DQSPADCTRL3
184*4882a593Smuzhiyun              - description: EMC_CTT_TERM_CTRL
185*4882a593Smuzhiyun              - description: EMC_ZCAL_INTERVAL
186*4882a593Smuzhiyun              - description: EMC_ZCAL_WAIT_CNT
187*4882a593Smuzhiyun              - description: EMC_MRS_WAIT_CNT
188*4882a593Smuzhiyun              - description: EMC_AUTO_CAL_CONFIG
189*4882a593Smuzhiyun              - description: EMC_CTT
190*4882a593Smuzhiyun              - description: EMC_CTT_DURATION
191*4882a593Smuzhiyun              - description: EMC_DYN_SELF_REF_CONTROL
192*4882a593Smuzhiyun              - description: EMC_FBIO_SPARE
193*4882a593Smuzhiyun              - description: EMC_CFG_RSV
194*4882a593Smuzhiyun
195*4882a593Smuzhiyun        required:
196*4882a593Smuzhiyun          - clock-frequency
197*4882a593Smuzhiyun          - nvidia,emc-auto-cal-interval
198*4882a593Smuzhiyun          - nvidia,emc-mode-1
199*4882a593Smuzhiyun          - nvidia,emc-mode-2
200*4882a593Smuzhiyun          - nvidia,emc-mode-reset
201*4882a593Smuzhiyun          - nvidia,emc-zcal-cnt-long
202*4882a593Smuzhiyun          - nvidia,emc-configuration
203*4882a593Smuzhiyun
204*4882a593Smuzhiyun        additionalProperties: false
205*4882a593Smuzhiyun
206*4882a593Smuzhiyun    required:
207*4882a593Smuzhiyun      - nvidia,ram-code
208*4882a593Smuzhiyun
209*4882a593Smuzhiyun    additionalProperties: false
210*4882a593Smuzhiyun
211*4882a593Smuzhiyunrequired:
212*4882a593Smuzhiyun  - compatible
213*4882a593Smuzhiyun  - reg
214*4882a593Smuzhiyun  - interrupts
215*4882a593Smuzhiyun  - clocks
216*4882a593Smuzhiyun  - nvidia,memory-controller
217*4882a593Smuzhiyun
218*4882a593SmuzhiyunadditionalProperties: false
219*4882a593Smuzhiyun
220*4882a593Smuzhiyunexamples:
221*4882a593Smuzhiyun  - |
222*4882a593Smuzhiyun    external-memory-controller@7000f400 {
223*4882a593Smuzhiyun        compatible = "nvidia,tegra30-emc";
224*4882a593Smuzhiyun        reg = <0x7000f400 0x400>;
225*4882a593Smuzhiyun        interrupts = <0 78 4>;
226*4882a593Smuzhiyun        clocks = <&tegra_car 57>;
227*4882a593Smuzhiyun
228*4882a593Smuzhiyun        nvidia,memory-controller = <&mc>;
229*4882a593Smuzhiyun
230*4882a593Smuzhiyun        emc-timings-1 {
231*4882a593Smuzhiyun            nvidia,ram-code = <1>;
232*4882a593Smuzhiyun
233*4882a593Smuzhiyun            timing-667000000 {
234*4882a593Smuzhiyun                clock-frequency = <667000000>;
235*4882a593Smuzhiyun
236*4882a593Smuzhiyun                nvidia,emc-auto-cal-interval = <0x001fffff>;
237*4882a593Smuzhiyun                nvidia,emc-mode-1 = <0x80100002>;
238*4882a593Smuzhiyun                nvidia,emc-mode-2 = <0x80200018>;
239*4882a593Smuzhiyun                nvidia,emc-mode-reset = <0x80000b71>;
240*4882a593Smuzhiyun                nvidia,emc-zcal-cnt-long = <0x00000040>;
241*4882a593Smuzhiyun                nvidia,emc-cfg-periodic-qrst;
242*4882a593Smuzhiyun
243*4882a593Smuzhiyun                nvidia,emc-configuration = <
244*4882a593Smuzhiyun                    0x00000020 /* EMC_RC */
245*4882a593Smuzhiyun                    0x0000006a /* EMC_RFC */
246*4882a593Smuzhiyun                    0x00000017 /* EMC_RAS */
247*4882a593Smuzhiyun                    0x00000007 /* EMC_RP */
248*4882a593Smuzhiyun                    0x00000005 /* EMC_R2W */
249*4882a593Smuzhiyun                    0x0000000c /* EMC_W2R */
250*4882a593Smuzhiyun                    0x00000003 /* EMC_R2P */
251*4882a593Smuzhiyun                    0x00000011 /* EMC_W2P */
252*4882a593Smuzhiyun                    0x00000007 /* EMC_RD_RCD */
253*4882a593Smuzhiyun                    0x00000007 /* EMC_WR_RCD */
254*4882a593Smuzhiyun                    0x00000002 /* EMC_RRD */
255*4882a593Smuzhiyun                    0x00000001 /* EMC_REXT */
256*4882a593Smuzhiyun                    0x00000000 /* EMC_WEXT */
257*4882a593Smuzhiyun                    0x00000007 /* EMC_WDV */
258*4882a593Smuzhiyun                    0x0000000a /* EMC_QUSE */
259*4882a593Smuzhiyun                    0x00000009 /* EMC_QRST */
260*4882a593Smuzhiyun                    0x0000000b /* EMC_QSAFE */
261*4882a593Smuzhiyun                    0x00000011 /* EMC_RDV */
262*4882a593Smuzhiyun                    0x00001412 /* EMC_REFRESH */
263*4882a593Smuzhiyun                    0x00000000 /* EMC_BURST_REFRESH_NUM */
264*4882a593Smuzhiyun                    0x00000504 /* EMC_PRE_REFRESH_REQ_CNT */
265*4882a593Smuzhiyun                    0x00000002 /* EMC_PDEX2WR */
266*4882a593Smuzhiyun                    0x0000000e /* EMC_PDEX2RD */
267*4882a593Smuzhiyun                    0x00000001 /* EMC_PCHG2PDEN */
268*4882a593Smuzhiyun                    0x00000000 /* EMC_ACT2PDEN */
269*4882a593Smuzhiyun                    0x0000000c /* EMC_AR2PDEN */
270*4882a593Smuzhiyun                    0x00000016 /* EMC_RW2PDEN */
271*4882a593Smuzhiyun                    0x00000072 /* EMC_TXSR */
272*4882a593Smuzhiyun                    0x00000200 /* EMC_TXSRDLL */
273*4882a593Smuzhiyun                    0x00000005 /* EMC_TCKE */
274*4882a593Smuzhiyun                    0x00000015 /* EMC_TFAW */
275*4882a593Smuzhiyun                    0x00000000 /* EMC_TRPAB */
276*4882a593Smuzhiyun                    0x00000006 /* EMC_TCLKSTABLE */
277*4882a593Smuzhiyun                    0x00000007 /* EMC_TCLKSTOP */
278*4882a593Smuzhiyun                    0x00001453 /* EMC_TREFBW */
279*4882a593Smuzhiyun                    0x0000000b /* EMC_QUSE_EXTRA */
280*4882a593Smuzhiyun                    0x00000006 /* EMC_FBIO_CFG6 */
281*4882a593Smuzhiyun                    0x00000000 /* EMC_ODT_WRITE */
282*4882a593Smuzhiyun                    0x00000000 /* EMC_ODT_READ */
283*4882a593Smuzhiyun                    0x00005088 /* EMC_FBIO_CFG5 */
284*4882a593Smuzhiyun                    0xf00b0191 /* EMC_CFG_DIG_DLL */
285*4882a593Smuzhiyun                    0x00008000 /* EMC_CFG_DIG_DLL_PERIOD */
286*4882a593Smuzhiyun                    0x00000008 /* EMC_DLL_XFORM_DQS0 */
287*4882a593Smuzhiyun                    0x00000008 /* EMC_DLL_XFORM_DQS1 */
288*4882a593Smuzhiyun                    0x00000008 /* EMC_DLL_XFORM_DQS2 */
289*4882a593Smuzhiyun                    0x00000008 /* EMC_DLL_XFORM_DQS3 */
290*4882a593Smuzhiyun                    0x0000000a /* EMC_DLL_XFORM_DQS4 */
291*4882a593Smuzhiyun                    0x0000000a /* EMC_DLL_XFORM_DQS5 */
292*4882a593Smuzhiyun                    0x0000000a /* EMC_DLL_XFORM_DQS6 */
293*4882a593Smuzhiyun                    0x0000000a /* EMC_DLL_XFORM_DQS7 */
294*4882a593Smuzhiyun                    0x00018000 /* EMC_DLL_XFORM_QUSE0 */
295*4882a593Smuzhiyun                    0x00018000 /* EMC_DLL_XFORM_QUSE1 */
296*4882a593Smuzhiyun                    0x00018000 /* EMC_DLL_XFORM_QUSE2 */
297*4882a593Smuzhiyun                    0x00018000 /* EMC_DLL_XFORM_QUSE3 */
298*4882a593Smuzhiyun                    0x00000000 /* EMC_DLL_XFORM_QUSE4 */
299*4882a593Smuzhiyun                    0x00000000 /* EMC_DLL_XFORM_QUSE5 */
300*4882a593Smuzhiyun                    0x00000000 /* EMC_DLL_XFORM_QUSE6 */
301*4882a593Smuzhiyun                    0x00000000 /* EMC_DLL_XFORM_QUSE7 */
302*4882a593Smuzhiyun                    0x00000000 /* EMC_DLI_TRIM_TXDQS0 */
303*4882a593Smuzhiyun                    0x00000000 /* EMC_DLI_TRIM_TXDQS1 */
304*4882a593Smuzhiyun                    0x00000000 /* EMC_DLI_TRIM_TXDQS2 */
305*4882a593Smuzhiyun                    0x00000000 /* EMC_DLI_TRIM_TXDQS3 */
306*4882a593Smuzhiyun                    0x00000000 /* EMC_DLI_TRIM_TXDQS4 */
307*4882a593Smuzhiyun                    0x00000000 /* EMC_DLI_TRIM_TXDQS5 */
308*4882a593Smuzhiyun                    0x00000000 /* EMC_DLI_TRIM_TXDQS6 */
309*4882a593Smuzhiyun                    0x00000000 /* EMC_DLI_TRIM_TXDQS7 */
310*4882a593Smuzhiyun                    0x0000000a /* EMC_DLL_XFORM_DQ0 */
311*4882a593Smuzhiyun                    0x0000000a /* EMC_DLL_XFORM_DQ1 */
312*4882a593Smuzhiyun                    0x0000000a /* EMC_DLL_XFORM_DQ2 */
313*4882a593Smuzhiyun                    0x0000000a /* EMC_DLL_XFORM_DQ3 */
314*4882a593Smuzhiyun                    0x000002a0 /* EMC_XM2CMDPADCTRL */
315*4882a593Smuzhiyun                    0x0800013d /* EMC_XM2DQSPADCTRL2 */
316*4882a593Smuzhiyun                    0x22220000 /* EMC_XM2DQPADCTRL2 */
317*4882a593Smuzhiyun                    0x77fff884 /* EMC_XM2CLKPADCTRL */
318*4882a593Smuzhiyun                    0x01f1f501 /* EMC_XM2COMPPADCTRL */
319*4882a593Smuzhiyun                    0x07077404 /* EMC_XM2VTTGENPADCTRL */
320*4882a593Smuzhiyun                    0x54000000 /* EMC_XM2VTTGENPADCTRL2 */
321*4882a593Smuzhiyun                    0x080001e8 /* EMC_XM2QUSEPADCTRL */
322*4882a593Smuzhiyun                    0x0c000021 /* EMC_XM2DQSPADCTRL3 */
323*4882a593Smuzhiyun                    0x00000802 /* EMC_CTT_TERM_CTRL */
324*4882a593Smuzhiyun                    0x00020000 /* EMC_ZCAL_INTERVAL */
325*4882a593Smuzhiyun                    0x00000100 /* EMC_ZCAL_WAIT_CNT */
326*4882a593Smuzhiyun                    0x0155000c /* EMC_MRS_WAIT_CNT */
327*4882a593Smuzhiyun                    0xa0f10000 /* EMC_AUTO_CAL_CONFIG */
328*4882a593Smuzhiyun                    0x00000000 /* EMC_CTT */
329*4882a593Smuzhiyun                    0x00000000 /* EMC_CTT_DURATION */
330*4882a593Smuzhiyun                    0x800028a5 /* EMC_DYN_SELF_REF_CONTROL */
331*4882a593Smuzhiyun                    0xe8000000 /* EMC_FBIO_SPARE */
332*4882a593Smuzhiyun                    0xff00ff49 /* EMC_CFG_RSV */
333*4882a593Smuzhiyun                >;
334*4882a593Smuzhiyun            };
335*4882a593Smuzhiyun        };
336*4882a593Smuzhiyun    };
337