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