Commit 7beba4bebec05d10bfe314e6a47e34d42296a100
1 parent
57e535649c
Exists in
smarc_8mq_lf_v2020.04
and in
2 other branches
Correct U-Boot LPDDR4 4G config setting
Showing 1 changed file with 2 additions and 2 deletions Inline Diff
include/configs/smarcimx8mp.h
1 | /* SPDX-License-Identifier: GPL-2.0+ */ | 1 | /* SPDX-License-Identifier: GPL-2.0+ */ |
2 | /* | 2 | /* |
3 | * Copyright 2019 NXP | 3 | * Copyright 2019 NXP |
4 | */ | 4 | */ |
5 | 5 | ||
6 | #ifndef __SMARCIMX8MP_H | 6 | #ifndef __SMARCIMX8MP_H |
7 | #define __SMARCIMX8MP_H | 7 | #define __SMARCIMX8MP_H |
8 | 8 | ||
9 | #include <linux/sizes.h> | 9 | #include <linux/sizes.h> |
10 | #include <asm/arch/imx-regs.h> | 10 | #include <asm/arch/imx-regs.h> |
11 | 11 | ||
12 | #include "imx_env.h" | 12 | #include "imx_env.h" |
13 | 13 | ||
14 | 14 | ||
15 | #define CONFIG_SPL_MAX_SIZE (152 * 1024) | 15 | #define CONFIG_SPL_MAX_SIZE (152 * 1024) |
16 | #define CONFIG_SYS_MONITOR_LEN (512 * 1024) | 16 | #define CONFIG_SYS_MONITOR_LEN (512 * 1024) |
17 | #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR | 17 | #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR |
18 | #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x300 | 18 | #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x300 |
19 | #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 | 19 | #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 |
20 | #define CONFIG_SYS_UBOOT_BASE (QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512) | 20 | #define CONFIG_SYS_UBOOT_BASE (QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512) |
21 | 21 | ||
22 | #ifdef CONFIG_SPL_BUILD | 22 | #ifdef CONFIG_SPL_BUILD |
23 | #define CONFIG_SPL_STACK 0x187FF0 | 23 | #define CONFIG_SPL_STACK 0x187FF0 |
24 | #define CONFIG_SPL_BSS_START_ADDR 0x0095e000 | 24 | #define CONFIG_SPL_BSS_START_ADDR 0x0095e000 |
25 | #define CONFIG_SPL_BSS_MAX_SIZE 0x2000 /* 8 KB */ | 25 | #define CONFIG_SPL_BSS_MAX_SIZE 0x2000 /* 8 KB */ |
26 | #define CONFIG_SYS_SPL_MALLOC_START 0x42200000 | 26 | #define CONFIG_SYS_SPL_MALLOC_START 0x42200000 |
27 | #define CONFIG_SYS_SPL_MALLOC_SIZE SZ_512K /* 512 KB */ | 27 | #define CONFIG_SYS_SPL_MALLOC_SIZE SZ_512K /* 512 KB */ |
28 | 28 | ||
29 | #define CONFIG_MALLOC_F_ADDR 0x184000 /* malloc f used before GD_FLG_FULL_MALLOC_INIT set */ | 29 | #define CONFIG_MALLOC_F_ADDR 0x184000 /* malloc f used before GD_FLG_FULL_MALLOC_INIT set */ |
30 | 30 | ||
31 | #define CONFIG_SPL_ABORT_ON_RAW_IMAGE | 31 | #define CONFIG_SPL_ABORT_ON_RAW_IMAGE |
32 | 32 | ||
33 | #define CONFIG_POWER | 33 | #define CONFIG_POWER |
34 | #define CONFIG_POWER_I2C | 34 | #define CONFIG_POWER_I2C |
35 | #define CONFIG_POWER_PCA9450 | 35 | #define CONFIG_POWER_PCA9450 |
36 | 36 | ||
37 | #define CONFIG_SYS_I2C | 37 | #define CONFIG_SYS_I2C |
38 | 38 | ||
39 | #endif | 39 | #endif |
40 | 40 | ||
41 | #define CONFIG_CMD_READ | 41 | #define CONFIG_CMD_READ |
42 | #define CONFIG_SERIAL_TAG | 42 | #define CONFIG_SERIAL_TAG |
43 | #define CONFIG_FASTBOOT_USB_DEV 0 | 43 | #define CONFIG_FASTBOOT_USB_DEV 0 |
44 | 44 | ||
45 | #define CONFIG_REMAKE_ELF | 45 | #define CONFIG_REMAKE_ELF |
46 | /* ENET Config */ | 46 | /* ENET Config */ |
47 | /* ENET1 */ | 47 | /* ENET1 */ |
48 | #if defined(CONFIG_CMD_NET) | 48 | #if defined(CONFIG_CMD_NET) |
49 | #define CONFIG_ETHPRIME "eth1" /* Set eqos to primary since we use its MDIO */ | 49 | #define CONFIG_ETHPRIME "eth1" /* Set eqos to primary since we use its MDIO */ |
50 | 50 | ||
51 | #define CONFIG_FEC_XCV_TYPE RGMII | 51 | #define CONFIG_FEC_XCV_TYPE RGMII |
52 | #define CONFIG_FEC_MXC_PHYADDR 6 | 52 | #define CONFIG_FEC_MXC_PHYADDR 6 |
53 | #define FEC_QUIRK_ENET_MAC | 53 | #define FEC_QUIRK_ENET_MAC |
54 | 54 | ||
55 | #define DWC_NET_PHYADDR 6 | 55 | #define DWC_NET_PHYADDR 6 |
56 | #ifdef CONFIG_DWC_ETH_QOS | 56 | #ifdef CONFIG_DWC_ETH_QOS |
57 | #define CONFIG_SYS_NONCACHED_MEMORY (1 * SZ_1M) /* 1M */ | 57 | #define CONFIG_SYS_NONCACHED_MEMORY (1 * SZ_1M) /* 1M */ |
58 | #endif | 58 | #endif |
59 | 59 | ||
60 | #define PHY_ANEG_TIMEOUT 20000 | 60 | #define PHY_ANEG_TIMEOUT 20000 |
61 | 61 | ||
62 | #endif | 62 | #endif |
63 | 63 | ||
64 | #define JAILHOUSE_ENV \ | 64 | #define JAILHOUSE_ENV \ |
65 | "jh_clk= \0 " \ | 65 | "jh_clk= \0 " \ |
66 | "jh_mmcboot=setenv fdt_file imx8mp-smarc.dtb;" \ | 66 | "jh_mmcboot=setenv fdt_file imx8mp-smarc.dtb;" \ |
67 | "setenv jh_clk clk_ignore_unused; " \ | 67 | "setenv jh_clk clk_ignore_unused; " \ |
68 | "if run loadimage; then " \ | 68 | "if run loadimage; then " \ |
69 | "run mmcboot; " \ | 69 | "run mmcboot; " \ |
70 | "else run jh_netboot; fi; \0" \ | 70 | "else run jh_netboot; fi; \0" \ |
71 | "jh_netboot=setenv fdt_file imx8mp-smarc.dtb; setenv jh_clk clk_ignore_unused; run netboot; \0 " | 71 | "jh_netboot=setenv fdt_file imx8mp-smarc.dtb; setenv jh_clk clk_ignore_unused; run netboot; \0 " |
72 | 72 | ||
73 | #define CONFIG_MFG_ENV_SETTINGS \ | 73 | #define CONFIG_MFG_ENV_SETTINGS \ |
74 | CONFIG_MFG_ENV_SETTINGS_DEFAULT \ | 74 | CONFIG_MFG_ENV_SETTINGS_DEFAULT \ |
75 | "initrd_addr=0x43800000\0" \ | 75 | "initrd_addr=0x43800000\0" \ |
76 | "initrd_high=0xffffffffffffffff\0" \ | 76 | "initrd_high=0xffffffffffffffff\0" \ |
77 | "emmc_dev=2\0"\ | 77 | "emmc_dev=2\0"\ |
78 | "sd_dev=1\0" \ | 78 | "sd_dev=1\0" \ |
79 | 79 | ||
80 | 80 | ||
81 | #ifdef CONFIG_NAND_BOOT | 81 | #ifdef CONFIG_NAND_BOOT |
82 | #define MFG_NAND_PARTITION "mtdparts=gpmi-nand:64m(nandboot),16m(nandfit),32m(nandkernel),16m(nanddtb),8m(nandtee),-(nandrootfs)" | 82 | #define MFG_NAND_PARTITION "mtdparts=gpmi-nand:64m(nandboot),16m(nandfit),32m(nandkernel),16m(nanddtb),8m(nandtee),-(nandrootfs)" |
83 | #endif | 83 | #endif |
84 | 84 | ||
85 | /* Initial environment variables */ | 85 | /* Initial environment variables */ |
86 | #if defined(CONFIG_NAND_BOOT) | 86 | #if defined(CONFIG_NAND_BOOT) |
87 | #define CONFIG_EXTRA_ENV_SETTINGS \ | 87 | #define CONFIG_EXTRA_ENV_SETTINGS \ |
88 | CONFIG_MFG_ENV_SETTINGS \ | 88 | CONFIG_MFG_ENV_SETTINGS \ |
89 | "splashimage=0x50000000\0" \ | 89 | "splashimage=0x50000000\0" \ |
90 | "fdt_addr=0x43000000\0" \ | 90 | "fdt_addr=0x43000000\0" \ |
91 | "fdt_high=0xffffffffffffffff\0" \ | 91 | "fdt_high=0xffffffffffffffff\0" \ |
92 | "mtdparts=" MFG_NAND_PARTITION "\0" \ | 92 | "mtdparts=" MFG_NAND_PARTITION "\0" \ |
93 | "console=ttymxc1,115200 earlycon=ec_imx6q,0x30890000,115200\0" \ | 93 | "console=ttymxc1,115200 earlycon=ec_imx6q,0x30890000,115200\0" \ |
94 | "bootargs=console=ttymxc1,115200 earlycon=ec_imx6q,0x30890000,115200 ubi.mtd=nandrootfs " \ | 94 | "bootargs=console=ttymxc1,115200 earlycon=ec_imx6q,0x30890000,115200 ubi.mtd=nandrootfs " \ |
95 | "root=ubi0:nandrootfs rootfstype=ubifs " \ | 95 | "root=ubi0:nandrootfs rootfstype=ubifs " \ |
96 | MFG_NAND_PARTITION \ | 96 | MFG_NAND_PARTITION \ |
97 | "\0" \ | 97 | "\0" \ |
98 | "bootcmd=nand read ${loadaddr} 0x5000000 0x2000000;"\ | 98 | "bootcmd=nand read ${loadaddr} 0x5000000 0x2000000;"\ |
99 | "nand read ${fdt_addr} 0x7000000 0x100000;"\ | 99 | "nand read ${fdt_addr} 0x7000000 0x100000;"\ |
100 | "booti ${loadaddr} - ${fdt_addr}" | 100 | "booti ${loadaddr} - ${fdt_addr}" |
101 | 101 | ||
102 | #else | 102 | #else |
103 | #define CONFIG_EXTRA_ENV_SETTINGS \ | 103 | #define CONFIG_EXTRA_ENV_SETTINGS \ |
104 | CONFIG_MFG_ENV_SETTINGS \ | 104 | CONFIG_MFG_ENV_SETTINGS \ |
105 | JAILHOUSE_ENV \ | 105 | JAILHOUSE_ENV \ |
106 | "script=boot.scr\0" \ | 106 | "script=boot.scr\0" \ |
107 | "image=Image\0" \ | 107 | "image=Image\0" \ |
108 | "splashimage=0x50000000\0" \ | 108 | "splashimage=0x50000000\0" \ |
109 | "m4_bin=hello_world.bin\0" \ | 109 | "m4_bin=hello_world.bin\0" \ |
110 | "use_m4=no\0" \ | 110 | "use_m4=no\0" \ |
111 | "console=ttymxc1,115200\0" \ | 111 | "console=ttymxc1,115200\0" \ |
112 | "fdt_addr=0x43000000\0" \ | 112 | "fdt_addr=0x43000000\0" \ |
113 | "fdt_high=0xffffffffffffffff\0" \ | 113 | "fdt_high=0xffffffffffffffff\0" \ |
114 | "boot_fit=no\0" \ | 114 | "boot_fit=no\0" \ |
115 | "fdt_file=" CONFIG_DEFAULT_FDT_FILE "\0" \ | 115 | "fdt_file=" CONFIG_DEFAULT_FDT_FILE "\0" \ |
116 | "initrd_addr=0x43800000\0" \ | 116 | "initrd_addr=0x43800000\0" \ |
117 | "initrd_high=0xffffffffffffffff\0" \ | 117 | "initrd_high=0xffffffffffffffff\0" \ |
118 | "mmcdev="__stringify(CONFIG_SYS_MMC_ENV_DEV)"\0" \ | 118 | "mmcdev="__stringify(CONFIG_SYS_MMC_ENV_DEV)"\0" \ |
119 | "mmcpart=" __stringify(CONFIG_SYS_MMC_IMG_LOAD_PART) "\0" \ | 119 | "mmcpart=" __stringify(CONFIG_SYS_MMC_IMG_LOAD_PART) "\0" \ |
120 | "mmcroot=" CONFIG_MMCROOT " rootwait rw\0" \ | 120 | "mmcroot=" CONFIG_MMCROOT " rootwait rw\0" \ |
121 | "usbroot=/dev/sda2 rootwait ro\0" \ | 121 | "usbroot=/dev/sda2 rootwait ro\0" \ |
122 | "mmcrootfstype=ext4 rootwait\0" \ | 122 | "mmcrootfstype=ext4 rootwait\0" \ |
123 | "loadbootenv=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} uEnv.txt\0" \ | 123 | "loadbootenv=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} uEnv.txt\0" \ |
124 | "loadusbbootenv=fatload usb 0:1 ${loadaddr} uEnv.txt\0" \ | 124 | "loadusbbootenv=fatload usb 0:1 ${loadaddr} uEnv.txt\0" \ |
125 | "mmcautodetect=yes\0" \ | 125 | "mmcautodetect=yes\0" \ |
126 | "importbootenv=echo Importing environment from mmc (uEnv.txt)...; " \ | 126 | "importbootenv=echo Importing environment from mmc (uEnv.txt)...; " \ |
127 | "env import -t $loadaddr $filesize\0" \ | 127 | "env import -t $loadaddr $filesize\0" \ |
128 | "importusbbootenv=echo Importing environment from USB (uEnv.txt)...; " \ | 128 | "importusbbootenv=echo Importing environment from USB (uEnv.txt)...; " \ |
129 | "mmcargs=setenv bootargs ${jh_clk} console=${console} ${optargs} " \ | 129 | "mmcargs=setenv bootargs ${jh_clk} console=${console} ${optargs} " \ |
130 | "rootfstype=${mmcrootfstype} root=${mmcroot}\0 " \ | 130 | "rootfstype=${mmcrootfstype} root=${mmcroot}\0 " \ |
131 | "usbargs=setenv bootargs ${jh_clk} console=${console} ${optargs} " \ | 131 | "usbargs=setenv bootargs ${jh_clk} console=${console} ${optargs} " \ |
132 | "rootfsusbtype=${usbrootfstype} root=${usbroot}\0 " \ | 132 | "rootfsusbtype=${usbrootfstype} root=${usbroot}\0 " \ |
133 | "loadbootscript=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \ | 133 | "loadbootscript=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \ |
134 | "bootscript=echo Running bootscript from mmc ...; " \ | 134 | "bootscript=echo Running bootscript from mmc ...; " \ |
135 | "source\0" \ | 135 | "source\0" \ |
136 | "loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}\0" \ | 136 | "loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}\0" \ |
137 | "loadm4bin=load mmc ${mmcdev}:${mmcpart} ${m4_addr_tmp} ${m4_bin}\0" \ | 137 | "loadm4bin=load mmc ${mmcdev}:${mmcpart} ${m4_addr_tmp} ${m4_bin}\0" \ |
138 | "loadusbimage=fatload usb 0:1 ${loadaddr} ${image}\0" \ | 138 | "loadusbimage=fatload usb 0:1 ${loadaddr} ${image}\0" \ |
139 | "loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} /dtbs/${fdt_file}\0" \ | 139 | "loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} /dtbs/${fdt_file}\0" \ |
140 | "loadusbfdt=fatload usb 0:1 ${fdt_addr} /dtbs/${fdt_file}\0" \ | 140 | "loadusbfdt=fatload usb 0:1 ${fdt_addr} /dtbs/${fdt_file}\0" \ |
141 | "cpm4mem=cp.b ${m4_addr_tmp} ${m4_addr} 20000\0" \ | 141 | "cpm4mem=cp.b ${m4_addr_tmp} ${m4_addr} 20000\0" \ |
142 | "mmcboot=echo Booting from mmc ...; " \ | 142 | "mmcboot=echo Booting from mmc ...; " \ |
143 | "run mmcargs; " \ | 143 | "run mmcargs; " \ |
144 | "if test ${boot_fit} = yes || test ${boot_fit} = try; then " \ | 144 | "if test ${boot_fit} = yes || test ${boot_fit} = try; then " \ |
145 | "bootm ${loadaddr}; " \ | 145 | "bootm ${loadaddr}; " \ |
146 | "else " \ | 146 | "else " \ |
147 | "if run loadfdt; then " \ | 147 | "if run loadfdt; then " \ |
148 | "booti ${loadaddr} - ${fdt_addr}; " \ | 148 | "booti ${loadaddr} - ${fdt_addr}; " \ |
149 | "else " \ | 149 | "else " \ |
150 | "echo WARN: Cannot load the DT; " \ | 150 | "echo WARN: Cannot load the DT; " \ |
151 | "fi; " \ | 151 | "fi; " \ |
152 | "fi;\0" \ | 152 | "fi;\0" \ |
153 | "m4boot=" \ | 153 | "m4boot=" \ |
154 | "if test ${m4_addr} = 0x7e0000; then " \ | 154 | "if test ${m4_addr} = 0x7e0000; then " \ |
155 | "echo Booting M4 from TCM; " \ | 155 | "echo Booting M4 from TCM; " \ |
156 | "else " \ | 156 | "else " \ |
157 | "echo Booting M4 from DRAM; " \ | 157 | "echo Booting M4 from DRAM; " \ |
158 | "dcache flush; " \ | 158 | "dcache flush; " \ |
159 | "fi; " \ | 159 | "fi; " \ |
160 | "bootaux ${m4_addr};\0" \ | 160 | "bootaux ${m4_addr};\0" \ |
161 | "usbboot=echo Booting from USB ...; " \ | 161 | "usbboot=echo Booting from USB ...; " \ |
162 | "run usbargs; " \ | 162 | "run usbargs; " \ |
163 | "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \ | 163 | "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \ |
164 | "if run loadusbfdt; then " \ | 164 | "if run loadusbfdt; then " \ |
165 | "booti ${loadaddr} - ${fdt_addr}; " \ | 165 | "booti ${loadaddr} - ${fdt_addr}; " \ |
166 | "else " \ | 166 | "else " \ |
167 | "echo WARN: Cannot load the DT; " \ | 167 | "echo WARN: Cannot load the DT; " \ |
168 | "fi; " \ | 168 | "fi; " \ |
169 | "else " \ | 169 | "else " \ |
170 | "echo wait for boot; " \ | 170 | "echo wait for boot; " \ |
171 | "fi;\0" \ | 171 | "fi;\0" \ |
172 | "netargs=setenv bootargs ${jh_clk} console=${console} " \ | 172 | "netargs=setenv bootargs ${jh_clk} console=${console} " \ |
173 | "root=/dev/nfs " \ | 173 | "root=/dev/nfs " \ |
174 | "ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \ | 174 | "ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \ |
175 | "netboot=echo Booting from net ...; " \ | 175 | "netboot=echo Booting from net ...; " \ |
176 | "run netargs; " \ | 176 | "run netargs; " \ |
177 | "if test ${ip_dyn} = yes; then " \ | 177 | "if test ${ip_dyn} = yes; then " \ |
178 | "setenv get_cmd dhcp; " \ | 178 | "setenv get_cmd dhcp; " \ |
179 | "else " \ | 179 | "else " \ |
180 | "setenv get_cmd tftp; " \ | 180 | "setenv get_cmd tftp; " \ |
181 | "fi; " \ | 181 | "fi; " \ |
182 | "${get_cmd} ${loadaddr} ${image}; " \ | 182 | "${get_cmd} ${loadaddr} ${image}; " \ |
183 | "if test ${boot_fit} = yes || test ${boot_fit} = try; then " \ | 183 | "if test ${boot_fit} = yes || test ${boot_fit} = try; then " \ |
184 | "bootm ${loadaddr}; " \ | 184 | "bootm ${loadaddr}; " \ |
185 | "else " \ | 185 | "else " \ |
186 | "if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \ | 186 | "if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \ |
187 | "booti ${loadaddr} - ${fdt_addr}; " \ | 187 | "booti ${loadaddr} - ${fdt_addr}; " \ |
188 | "else " \ | 188 | "else " \ |
189 | "echo WARN: Cannot load the DT; " \ | 189 | "echo WARN: Cannot load the DT; " \ |
190 | "fi; " \ | 190 | "fi; " \ |
191 | "fi;\0" | 191 | "fi;\0" |
192 | 192 | ||
193 | #define CONFIG_BOOTCOMMAND \ | 193 | #define CONFIG_BOOTCOMMAND \ |
194 | "mmc dev ${mmcdev}; if mmc rescan; then " \ | 194 | "mmc dev ${mmcdev}; if mmc rescan; then " \ |
195 | "if test ${use_m4} = yes && run loadm4bin; then " \ | 195 | "if test ${use_m4} = yes && run loadm4bin; then " \ |
196 | "run cpm4mem; " \ | 196 | "run cpm4mem; " \ |
197 | "run m4boot; " \ | 197 | "run m4boot; " \ |
198 | "fi; " \ | 198 | "fi; " \ |
199 | "echo Checking for: uEnv.txt ...; " \ | 199 | "echo Checking for: uEnv.txt ...; " \ |
200 | "if test -e mmc ${bootpart} /uEnv.txt; then " \ | 200 | "if test -e mmc ${bootpart} /uEnv.txt; then " \ |
201 | "if run loadbootenv; then " \ | 201 | "if run loadbootenv; then " \ |
202 | "echo Loaded environment from uEnv.txt;" \ | 202 | "echo Loaded environment from uEnv.txt;" \ |
203 | "run importbootenv;" \ | 203 | "run importbootenv;" \ |
204 | "fi;" \ | 204 | "fi;" \ |
205 | "echo Checking if uenvcmd is set ...;" \ | 205 | "echo Checking if uenvcmd is set ...;" \ |
206 | "if test -n ${uenvcmd}; then " \ | 206 | "if test -n ${uenvcmd}; then " \ |
207 | "echo Running uenvcmd ...;" \ | 207 | "echo Running uenvcmd ...;" \ |
208 | "run uenvcmd;" \ | 208 | "run uenvcmd;" \ |
209 | "fi;" \ | 209 | "fi;" \ |
210 | "fi; " \ | 210 | "fi; " \ |
211 | "if run loadimage; then " \ | 211 | "if run loadimage; then " \ |
212 | "run mmcboot; " \ | 212 | "run mmcboot; " \ |
213 | "else run netboot; " \ | 213 | "else run netboot; " \ |
214 | "fi; " \ | 214 | "fi; " \ |
215 | "fi;" | 215 | "fi;" |
216 | #endif | 216 | #endif |
217 | 217 | ||
218 | /* Link Definitions */ | 218 | /* Link Definitions */ |
219 | #define CONFIG_LOADADDR 0x40480000 | 219 | #define CONFIG_LOADADDR 0x40480000 |
220 | 220 | ||
221 | #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR | 221 | #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR |
222 | 222 | ||
223 | #define CONFIG_SYS_INIT_RAM_ADDR 0x40000000 | 223 | #define CONFIG_SYS_INIT_RAM_ADDR 0x40000000 |
224 | #define CONFIG_SYS_INIT_RAM_SIZE 0x80000 | 224 | #define CONFIG_SYS_INIT_RAM_SIZE 0x80000 |
225 | #define CONFIG_SYS_INIT_SP_OFFSET \ | 225 | #define CONFIG_SYS_INIT_SP_OFFSET \ |
226 | (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) | 226 | (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) |
227 | #define CONFIG_SYS_INIT_SP_ADDR \ | 227 | #define CONFIG_SYS_INIT_SP_ADDR \ |
228 | (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET) | 228 | (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET) |
229 | 229 | ||
230 | #define CONFIG_ENV_OVERWRITE | 230 | #define CONFIG_ENV_OVERWRITE |
231 | #define CONFIG_ENV_SPI_BUS CONFIG_SF_DEFAULT_BUS | 231 | #define CONFIG_ENV_SPI_BUS CONFIG_SF_DEFAULT_BUS |
232 | #define CONFIG_ENV_SPI_CS CONFIG_SF_DEFAULT_CS | 232 | #define CONFIG_ENV_SPI_CS CONFIG_SF_DEFAULT_CS |
233 | #define CONFIG_ENV_SPI_MODE CONFIG_SF_DEFAULT_MODE | 233 | #define CONFIG_ENV_SPI_MODE CONFIG_SF_DEFAULT_MODE |
234 | #define CONFIG_ENV_SPI_MAX_HZ CONFIG_SF_DEFAULT_SPEED | 234 | #define CONFIG_ENV_SPI_MAX_HZ CONFIG_SF_DEFAULT_SPEED |
235 | 235 | ||
236 | #define CONFIG_SYS_MMC_ENV_DEV 1 /* USDHC2 */ | 236 | #define CONFIG_SYS_MMC_ENV_DEV 1 /* USDHC2 */ |
237 | #define CONFIG_MMCROOT "/dev/mmcblk1p2" /* USDHC2 */ | 237 | #define CONFIG_MMCROOT "/dev/mmcblk1p2" /* USDHC2 */ |
238 | 238 | ||
239 | /* Size of malloc() pool */ | 239 | /* Size of malloc() pool */ |
240 | #define CONFIG_SYS_MALLOC_LEN SZ_32M | 240 | #define CONFIG_SYS_MALLOC_LEN SZ_32M |
241 | 241 | ||
242 | /* Totally 4GB/6GB DDR (2+2/4+4) */ | 242 | /* Totally 4GB/6GB DDR (2+2/4+4) */ |
243 | #define CONFIG_SYS_SDRAM_BASE 0x40000000 | 243 | #define CONFIG_SYS_SDRAM_BASE 0x40000000 |
244 | #define PHYS_SDRAM 0x40000000 | 244 | #define PHYS_SDRAM 0x40000000 |
245 | #ifdef CONFIG_4GB_LPDDR4 | 245 | #ifdef CONFIG_4GB_LPDDR4 |
246 | #define PHYS_SDRAM_SIZE 0x80000000 /* 2 GB */ | 246 | #define PHYS_SDRAM_SIZE 0xc0000000 /* 3 GB */ |
247 | #else | 247 | #else |
248 | #define PHYS_SDRAM_SIZE 0xc0000000 /* 3 GB */ | 248 | #define PHYS_SDRAM_SIZE 0xc0000000 /* 3 GB */ |
249 | #endif | 249 | #endif |
250 | #define PHYS_SDRAM_2 0x100000000 | 250 | #define PHYS_SDRAM_2 0x100000000 |
251 | #ifdef CONFIG_TARGET_IMX8MP_DDR4_EVK | 251 | #ifdef CONFIG_TARGET_IMX8MP_DDR4_EVK |
252 | #define PHYS_SDRAM_2_SIZE 0x40000000 /* 1 GB */ | 252 | #define PHYS_SDRAM_2_SIZE 0x40000000 /* 1 GB */ |
253 | #else | 253 | #else |
254 | #ifdef CONFIG_4GB_LPDDR4 | 254 | #ifdef CONFIG_4GB_LPDDR4 |
255 | #define PHYS_SDRAM_2_SIZE 0x80000000 /* 2 GB */ | 255 | #define PHYS_SDRAM_2_SIZE 0x40000000 /* 1 GB */ |
256 | #else | 256 | #else |
257 | #define PHYS_SDRAM_2_SIZE 0xc0000000 /* 3 GB */ | 257 | #define PHYS_SDRAM_2_SIZE 0xc0000000 /* 3 GB */ |
258 | #endif | 258 | #endif |
259 | #endif | 259 | #endif |
260 | 260 | ||
261 | #define CONFIG_SYS_MEMTEST_START 0x60000000 | 261 | #define CONFIG_SYS_MEMTEST_START 0x60000000 |
262 | #define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_MEMTEST_START + \ | 262 | #define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_MEMTEST_START + \ |
263 | (PHYS_SDRAM_SIZE >> 1)) | 263 | (PHYS_SDRAM_SIZE >> 1)) |
264 | 264 | ||
265 | #ifdef CONFIG_CONSOLE_SER0 | 265 | #ifdef CONFIG_CONSOLE_SER0 |
266 | #define CONFIG_MXC_UART_BASE UART1_BASE_ADDR | 266 | #define CONFIG_MXC_UART_BASE UART1_BASE_ADDR |
267 | #define CONSOLE_DEV "ttymxc0" | 267 | #define CONSOLE_DEV "ttymxc0" |
268 | #endif | 268 | #endif |
269 | 269 | ||
270 | #ifdef CONFIG_CONSOLE_SER1 | 270 | #ifdef CONFIG_CONSOLE_SER1 |
271 | #define CONFIG_MXC_UART_BASE UART4_BASE_ADDR | 271 | #define CONFIG_MXC_UART_BASE UART4_BASE_ADDR |
272 | #define CONSOLE_DEV "ttymxc3" | 272 | #define CONSOLE_DEV "ttymxc3" |
273 | #endif | 273 | #endif |
274 | 274 | ||
275 | #ifdef CONFIG_CONSOLE_SER2 | 275 | #ifdef CONFIG_CONSOLE_SER2 |
276 | #define CONFIG_MXC_UART_BASE UART3_BASE_ADDR | 276 | #define CONFIG_MXC_UART_BASE UART3_BASE_ADDR |
277 | #define CONSOLE_DEV "ttymxc2" | 277 | #define CONSOLE_DEV "ttymxc2" |
278 | #endif | 278 | #endif |
279 | 279 | ||
280 | #ifdef CONFIG_CONSOLE_SER3 | 280 | #ifdef CONFIG_CONSOLE_SER3 |
281 | #define CONFIG_MXC_UART_BASE UART2_BASE_ADDR | 281 | #define CONFIG_MXC_UART_BASE UART2_BASE_ADDR |
282 | #define CONSOLE_DEV "ttymxc1" | 282 | #define CONSOLE_DEV "ttymxc1" |
283 | #endif | 283 | #endif |
284 | 284 | ||
285 | /* Monitor Command Prompt */ | 285 | /* Monitor Command Prompt */ |
286 | #define CONFIG_SYS_PROMPT_HUSH_PS2 "> " | 286 | #define CONFIG_SYS_PROMPT_HUSH_PS2 "> " |
287 | #define CONFIG_SYS_CBSIZE 2048 | 287 | #define CONFIG_SYS_CBSIZE 2048 |
288 | #define CONFIG_SYS_MAXARGS 64 | 288 | #define CONFIG_SYS_MAXARGS 64 |
289 | #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE | 289 | #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE |
290 | #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + \ | 290 | #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + \ |
291 | sizeof(CONFIG_SYS_PROMPT) + 16) | 291 | sizeof(CONFIG_SYS_PROMPT) + 16) |
292 | 292 | ||
293 | #define CONFIG_IMX_BOOTAUX | 293 | #define CONFIG_IMX_BOOTAUX |
294 | #define CONFIG_FSL_USDHC | 294 | #define CONFIG_FSL_USDHC |
295 | 295 | ||
296 | #ifdef CONFIG_TARGET_IMX8MP_DDR4_EVK | 296 | #ifdef CONFIG_TARGET_IMX8MP_DDR4_EVK |
297 | #define CONFIG_SYS_FSL_USDHC_NUM 1 | 297 | #define CONFIG_SYS_FSL_USDHC_NUM 1 |
298 | #else | 298 | #else |
299 | #define CONFIG_SYS_FSL_USDHC_NUM 2 | 299 | #define CONFIG_SYS_FSL_USDHC_NUM 2 |
300 | #endif | 300 | #endif |
301 | #define CONFIG_SYS_FSL_ESDHC_ADDR 0 | 301 | #define CONFIG_SYS_FSL_ESDHC_ADDR 0 |
302 | 302 | ||
303 | #define CONFIG_CMD_PART | 303 | #define CONFIG_CMD_PART |
304 | #define CONFIG_CMD_FS_GENERIC | 304 | #define CONFIG_CMD_FS_GENERIC |
305 | 305 | ||
306 | #define CONFIG_SYS_MMC_IMG_LOAD_PART 1 | 306 | #define CONFIG_SYS_MMC_IMG_LOAD_PART 1 |
307 | 307 | ||
308 | #ifdef CONFIG_FSL_FSPI | 308 | #ifdef CONFIG_FSL_FSPI |
309 | #define FSL_FSPI_FLASH_SIZE SZ_32M | 309 | #define FSL_FSPI_FLASH_SIZE SZ_32M |
310 | #define FSL_FSPI_FLASH_NUM 1 | 310 | #define FSL_FSPI_FLASH_NUM 1 |
311 | #define FSPI0_BASE_ADDR 0x30bb0000 | 311 | #define FSPI0_BASE_ADDR 0x30bb0000 |
312 | #define FSPI0_AMBA_BASE 0x0 | 312 | #define FSPI0_AMBA_BASE 0x0 |
313 | #define CONFIG_FSPI_QUAD_SUPPORT | 313 | #define CONFIG_FSPI_QUAD_SUPPORT |
314 | 314 | ||
315 | #define CONFIG_SYS_FSL_FSPI_AHB | 315 | #define CONFIG_SYS_FSL_FSPI_AHB |
316 | #endif | 316 | #endif |
317 | 317 | ||
318 | #ifdef CONFIG_NAND_MXS | 318 | #ifdef CONFIG_NAND_MXS |
319 | #define CONFIG_CMD_NAND_TRIMFFS | 319 | #define CONFIG_CMD_NAND_TRIMFFS |
320 | 320 | ||
321 | /* NAND stuff */ | 321 | /* NAND stuff */ |
322 | #define CONFIG_SYS_MAX_NAND_DEVICE 1 | 322 | #define CONFIG_SYS_MAX_NAND_DEVICE 1 |
323 | #define CONFIG_SYS_NAND_BASE 0x20000000 | 323 | #define CONFIG_SYS_NAND_BASE 0x20000000 |
324 | #define CONFIG_SYS_NAND_5_ADDR_CYCLE | 324 | #define CONFIG_SYS_NAND_5_ADDR_CYCLE |
325 | #define CONFIG_SYS_NAND_ONFI_DETECTION | 325 | #define CONFIG_SYS_NAND_ONFI_DETECTION |
326 | #define CONFIG_SYS_NAND_USE_FLASH_BBT | 326 | #define CONFIG_SYS_NAND_USE_FLASH_BBT |
327 | #endif /* CONFIG_NAND_MXS */ | 327 | #endif /* CONFIG_NAND_MXS */ |
328 | 328 | ||
329 | #define CONFIG_SYS_I2C_SPEED 100000 | 329 | #define CONFIG_SYS_I2C_SPEED 100000 |
330 | 330 | ||
331 | /* USB configs */ | 331 | /* USB configs */ |
332 | #ifndef CONFIG_SPL_BUILD | 332 | #ifndef CONFIG_SPL_BUILD |
333 | #define CONFIG_CMD_USB | 333 | #define CONFIG_CMD_USB |
334 | #define CONFIG_USB_STORAGE | 334 | #define CONFIG_USB_STORAGE |
335 | 335 | ||
336 | #define CONFIG_USBD_HS | 336 | #define CONFIG_USBD_HS |
337 | 337 | ||
338 | #define CONFIG_CMD_USB_MASS_STORAGE | 338 | #define CONFIG_CMD_USB_MASS_STORAGE |
339 | #define CONFIG_USB_GADGET_MASS_STORAGE | 339 | #define CONFIG_USB_GADGET_MASS_STORAGE |
340 | #define CONFIG_USB_FUNCTION_MASS_STORAGE | 340 | #define CONFIG_USB_FUNCTION_MASS_STORAGE |
341 | #endif | 341 | #endif |
342 | 342 | ||
343 | #define CONFIG_USB_MAX_CONTROLLER_COUNT 2 | 343 | #define CONFIG_USB_MAX_CONTROLLER_COUNT 2 |
344 | #define CONFIG_USBD_HS | 344 | #define CONFIG_USBD_HS |
345 | #define CONFIG_USB_GADGET_VBUS_DRAW 2 | 345 | #define CONFIG_USB_GADGET_VBUS_DRAW 2 |
346 | 346 | ||
347 | #ifdef CONFIG_DM_VIDEO | 347 | #ifdef CONFIG_DM_VIDEO |
348 | #define CONFIG_VIDEO_LOGO | 348 | #define CONFIG_VIDEO_LOGO |
349 | #define CONFIG_SPLASH_SCREEN | 349 | #define CONFIG_SPLASH_SCREEN |
350 | #define CONFIG_SPLASH_SCREEN_ALIGN | 350 | #define CONFIG_SPLASH_SCREEN_ALIGN |
351 | #define CONFIG_CMD_BMP | 351 | #define CONFIG_CMD_BMP |
352 | #define CONFIG_BMP_16BPP | 352 | #define CONFIG_BMP_16BPP |
353 | #define CONFIG_BMP_24BPP | 353 | #define CONFIG_BMP_24BPP |
354 | #define CONFIG_BMP_32BPP | 354 | #define CONFIG_BMP_32BPP |
355 | #define CONFIG_VIDEO_BMP_RLE8 | 355 | #define CONFIG_VIDEO_BMP_RLE8 |
356 | #define CONFIG_VIDEO_BMP_LOGO | 356 | #define CONFIG_VIDEO_BMP_LOGO |
357 | #endif | 357 | #endif |
358 | 358 | ||
359 | #ifdef CONFIG_ANDROID_SUPPORT | 359 | #ifdef CONFIG_ANDROID_SUPPORT |
360 | #include "smarcimx8mp_android.h" | 360 | #include "smarcimx8mp_android.h" |
361 | #endif | 361 | #endif |
362 | 362 | ||
363 | #endif | 363 | #endif |
364 | 364 |