2 * Copyright (C) 2013 Boundary Devices
3 * Copyright (C) 2014-2016, Toradex AG
5 * SPDX-License-Identifier: GPL-2.0+
8 DATA 4, MX6_MMDC_P0_MDPDC, 0x0002002D
9 DATA 4, MX6_MMDC_P0_MDCFG0, 0x2C305503
10 DATA 4, MX6_MMDC_P0_MDCFG1, 0xB66D8D63
11 DATA 4, MX6_MMDC_P0_MDCFG2, 0x01FF00DB
12 DATA 4, MX6_MMDC_P0_MDRWD, 0x000026D2
13 DATA 4, MX6_MMDC_P0_MDOR, 0x00301023
14 DATA 4, MX6_MMDC_P0_MDOTC, 0x00333030
15 DATA 4, MX6_MMDC_P0_MDPDC, 0x0002556D
16 /* CS0 End: 7MSB of ((0x10000000 + 512M) -1) >> 25 */
17 DATA 4, MX6_MMDC_P0_MDASP, 0x00000017
18 /* DDR3 DATA BUS SIZE: 64BIT */
19 /* DATA 4, MX6_MMDC_P0_MDCTL, 0x821A0000 */
20 /* DDR3 DATA BUS SIZE: 32BIT */
21 DATA 4, MX6_MMDC_P0_MDCTL, 0x82190000
23 /* Write commands to DDR */
24 /* Load Mode Registers */
25 /* TODO Use Auto Self-Refresh mode (Extended Temperature)*/
26 /* DATA 4, MX6_MMDC_P0_MDSCR, 0x04408032 */
27 DATA 4, MX6_MMDC_P0_MDSCR, 0x04008032
28 DATA 4, MX6_MMDC_P0_MDSCR, 0x00008033
29 DATA 4, MX6_MMDC_P0_MDSCR, 0x00048031
30 DATA 4, MX6_MMDC_P0_MDSCR, 0x13208030
32 DATA 4, MX6_MMDC_P0_MDSCR, 0x04008040
34 DATA 4, MX6_MMDC_P0_MPZQHWCTRL, 0xA1390003
35 DATA 4, MX6_MMDC_P1_MPZQHWCTRL, 0xA1390003
36 DATA 4, MX6_MMDC_P0_MDREF, 0x00005800
38 DATA 4, MX6_MMDC_P0_MPODTCTRL, 0x00000000
39 DATA 4, MX6_MMDC_P1_MPODTCTRL, 0x00000000
41 DATA 4, MX6_MMDC_P0_MPDGCTRL0, 0x42360232
42 DATA 4, MX6_MMDC_P0_MPDGCTRL1, 0x021F022A
43 DATA 4, MX6_MMDC_P1_MPDGCTRL0, 0x421E0224
44 DATA 4, MX6_MMDC_P1_MPDGCTRL1, 0x02110218
46 DATA 4, MX6_MMDC_P0_MPRDDLCTL, 0x41434344
47 DATA 4, MX6_MMDC_P1_MPRDDLCTL, 0x4345423E
48 DATA 4, MX6_MMDC_P0_MPWRDLCTL, 0x39383339
49 DATA 4, MX6_MMDC_P1_MPWRDLCTL, 0x3E363930
51 DATA 4, MX6_MMDC_P0_MPWLDECTRL0, 0x00340039
52 DATA 4, MX6_MMDC_P0_MPWLDECTRL1, 0x002C002D
53 DATA 4, MX6_MMDC_P1_MPWLDECTRL0, 0x00120019
54 DATA 4, MX6_MMDC_P1_MPWLDECTRL1, 0x0012002D
56 DATA 4, MX6_MMDC_P0_MPMUR0, 0x00000800
57 DATA 4, MX6_MMDC_P1_MPMUR0, 0x00000800
58 DATA 4, MX6_MMDC_P0_MDSCR, 0x00000000
59 DATA 4, MX6_MMDC_P0_MAPSR, 0x00011006