Blame view
include/configs/mx28evk.h
8.27 KB
29f75a5ce mx28evk: Add init... |
1 2 3 4 5 6 7 8 |
/* * (C) Copyright 2011 Freescale Semiconductor, Inc. * Author: Fabio Estevam <fabio.estevam@freescale.com> * * Based on m28evk.h: * Copyright (C) 2011 Marek Vasut <marek.vasut@gmail.com> * on behalf of DENX Software Engineering GmbH * |
1a4596601 Add GPL-2.0+ SPDX... |
9 |
* SPDX-License-Identifier: GPL-2.0+ |
29f75a5ce mx28evk: Add init... |
10 |
*/ |
5434caf5b ARM: mxs: Consoli... |
11 12 |
#ifndef __CONFIGS_MX28EVK_H__ #define __CONFIGS_MX28EVK_H__ |
29f75a5ce mx28evk: Add init... |
13 |
|
5434caf5b ARM: mxs: Consoli... |
14 |
/* System configurations */ |
29f75a5ce mx28evk: Add init... |
15 |
#define CONFIG_MACH_TYPE MACH_TYPE_MX28EVK |
29f75a5ce mx28evk: Add init... |
16 |
|
5434caf5b ARM: mxs: Consoli... |
17 |
/* Memory configuration */ |
29f75a5ce mx28evk: Add init... |
18 19 20 |
#define CONFIG_NR_DRAM_BANKS 1 /* 1 bank of DRAM */ #define PHYS_SDRAM_1 0x40000000 /* Base address */ #define PHYS_SDRAM_1_SIZE 0x40000000 /* Max 1 GB RAM */ |
29f75a5ce mx28evk: Add init... |
21 |
#define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM_1 |
29f75a5ce mx28evk: Add init... |
22 |
|
5434caf5b ARM: mxs: Consoli... |
23 |
/* Environment */ |
3aa890525 mx28evk: Fix warn... |
24 |
#ifndef CONFIG_ENV_IS_IN_SPI_FLASH |
5434caf5b ARM: mxs: Consoli... |
25 |
#define CONFIG_ENV_SIZE (16 * 1024) |
3aa890525 mx28evk: Fix warn... |
26 27 28 |
#else #define CONFIG_ENV_SIZE (4 * 1024) #endif |
29f75a5ce mx28evk: Add init... |
29 |
#define CONFIG_ENV_OVERWRITE |
29f75a5ce mx28evk: Add init... |
30 |
|
5434caf5b ARM: mxs: Consoli... |
31 32 33 34 |
/* Environment is in MMC */ #if defined(CONFIG_CMD_MMC) && defined(CONFIG_ENV_IS_IN_MMC) #define CONFIG_ENV_OFFSET (256 * 1024) #define CONFIG_SYS_MMC_ENV_DEV 0 |
29f75a5ce mx28evk: Add init... |
35 |
#endif |
ab461be65 mx28evk: Introduc... |
36 |
/* Environment is in NAND */ |
5434caf5b ARM: mxs: Consoli... |
37 |
#if defined(CONFIG_CMD_NAND) && defined(CONFIG_ENV_IS_IN_NAND) |
ab461be65 mx28evk: Introduc... |
38 39 40 |
#define CONFIG_ENV_SIZE_REDUND CONFIG_ENV_SIZE #define CONFIG_ENV_SECT_SIZE (128 * 1024) #define CONFIG_ENV_RANGE (512 * 1024) |
ab461be65 mx28evk: Introduc... |
41 |
#define CONFIG_ENV_OFFSET 0x300000 |
ab461be65 mx28evk: Introduc... |
42 43 |
#define CONFIG_ENV_OFFSET_REDUND \ (CONFIG_ENV_OFFSET + CONFIG_ENV_RANGE) |
da85c9c81 mx28evk: Guard NA... |
44 |
#endif |
ab461be65 mx28evk: Introduc... |
45 |
|
5434caf5b ARM: mxs: Consoli... |
46 47 48 |
/* Environemnt is in SPI flash */ #if defined(CONFIG_CMD_SF) && defined(CONFIG_ENV_IS_IN_SPI_FLASH) #define CONFIG_SYS_REDUNDAND_ENVIRONMENT |
5434caf5b ARM: mxs: Consoli... |
49 50 51 52 53 54 55 56 57 58 59 |
#define CONFIG_ENV_OFFSET 0x40000 /* 256K */ #define CONFIG_ENV_OFFSET_REDUND (CONFIG_ENV_OFFSET + CONFIG_ENV_SIZE) #define CONFIG_ENV_SECT_SIZE 0x1000 #define CONFIG_ENV_SPI_CS 0 #define CONFIG_ENV_SPI_BUS 2 #define CONFIG_ENV_SPI_MAX_HZ 24000000 #define CONFIG_ENV_SPI_MODE SPI_MODE_0 #endif /* UBI and NAND partitioning */ #ifdef CONFIG_CMD_NAND |
ab461be65 mx28evk: Introduc... |
60 61 |
#define CONFIG_MTD_DEVICE #define CONFIG_MTD_PARTITIONS |
ecb7be298 mx28evk: add NAND... |
62 |
#endif |
5434caf5b ARM: mxs: Consoli... |
63 |
/* FEC Ethernet on SoC */ |
29f75a5ce mx28evk: Add init... |
64 |
#ifdef CONFIG_CMD_NET |
29f75a5ce mx28evk: Add init... |
65 |
#define CONFIG_FEC_MXC |
e9503232e net: fec: sharing... |
66 |
#define CONFIG_FEC_MXC_MDIO_BASE MXS_ENET0_BASE |
29f75a5ce mx28evk: Add init... |
67 68 |
#define CONFIG_MX28_FEC_MAC_IN_OCOTP #endif |
40f1daa0b configs: mx28evk:... |
69 |
/* RTC */ |
9588d9421 mx28evk: add RTC ... |
70 71 72 |
#ifdef CONFIG_CMD_DATE #define CONFIG_RTC_MXS #endif |
40f1daa0b configs: mx28evk:... |
73 |
/* USB */ |
598aa2bbf mx28evk: add USB ... |
74 |
#ifdef CONFIG_CMD_USB |
afa872109 mxs: Make ehci-mx... |
75 76 |
#define CONFIG_EHCI_MXS_PORT1 #define CONFIG_USB_MAX_CONTROLLER_COUNT 1 |
598aa2bbf mx28evk: add USB ... |
77 |
#endif |
40f1daa0b configs: mx28evk:... |
78 |
/* SPI */ |
ed97abed2 mx28evk: add SPI ... |
79 |
#ifdef CONFIG_CMD_SPI |
ed97abed2 mx28evk: add SPI ... |
80 81 82 83 84 |
#define CONFIG_DEFAULT_SPI_BUS 2 #define CONFIG_DEFAULT_SPI_MODE SPI_MODE_0 /* SPI Flash */ #ifdef CONFIG_CMD_SF |
5434caf5b ARM: mxs: Consoli... |
85 86 |
#define CONFIG_SF_DEFAULT_BUS 2 #define CONFIG_SF_DEFAULT_CS 0 |
ed97abed2 mx28evk: add SPI ... |
87 |
/* this may vary and depends on the installed chip */ |
ed97abed2 mx28evk: add SPI ... |
88 89 |
#define CONFIG_SF_DEFAULT_MODE SPI_MODE_0 #define CONFIG_SF_DEFAULT_SPEED 24000000 |
ed97abed2 mx28evk: add SPI ... |
90 |
#endif |
5434caf5b ARM: mxs: Consoli... |
91 |
|
ed97abed2 mx28evk: add SPI ... |
92 |
#endif |
68661db2d mx28evk: Add spla... |
93 94 |
/* Framebuffer support */ #ifdef CONFIG_VIDEO |
68661db2d mx28evk: Add spla... |
95 |
#define CONFIG_VIDEO_LOGO |
68661db2d mx28evk: Add spla... |
96 |
#define CONFIG_SPLASH_SCREEN |
68661db2d mx28evk: Add spla... |
97 98 99 100 101 |
#define CONFIG_BMP_16BPP #define CONFIG_VIDEO_BMP_RLE8 #define CONFIG_VIDEO_BMP_GZIP #define CONFIG_SYS_VIDEO_LOGO_MAX_SIZE (512 << 10) #endif |
40f1daa0b configs: mx28evk:... |
102 |
/* Boot Linux */ |
5434caf5b ARM: mxs: Consoli... |
103 104 |
#define CONFIG_BOOTFILE "uImage" #define CONFIG_LOADADDR 0x42000000 |
29f75a5ce mx28evk: Add init... |
105 |
#define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR |
5434caf5b ARM: mxs: Consoli... |
106 |
/* Extra Environment */ |
29f75a5ce mx28evk: Add init... |
107 |
#define CONFIG_EXTRA_ENV_SETTINGS \ |
8ae269d41 mx28evk: Extend e... |
108 |
"ubifs_file=filesystem.ubifs\0" \ |
f994dc5ec mx28evk: extend d... |
109 110 |
"update_nand_full_filename=u-boot.nand\0" \ "update_nand_firmware_filename=u-boot.sb\0" \ |
f994dc5ec mx28evk: extend d... |
111 112 113 114 115 116 117 118 |
"update_nand_firmware_maxsz=0x100000\0" \ "update_nand_stride=0x40\0" /* MX28 datasheet ch. 12.12 */ \ "update_nand_count=0x4\0" /* MX28 datasheet ch. 12.12 */ \ "update_nand_get_fcb_size=" /* Get size of FCB blocks */ \ "nand device 0 ; " \ "nand info ; " \ "setexpr fcb_sz ${update_nand_stride} * ${update_nand_count};" \ "setexpr update_nand_fcb ${fcb_sz} * ${nand_writesize}\0" \ |
8ae269d41 mx28evk: Extend e... |
119 |
"update_nand_firmware_full=" /* Update FCB, DBBT and FW */ \ |
f994dc5ec mx28evk: extend d... |
120 121 122 |
"if tftp ${update_nand_full_filename} ; then " \ "run update_nand_get_fcb_size ; " \ "nand scrub -y 0x0 ${filesize} ; " \ |
71779d5b8 m28evk/mx28evk: f... |
123 |
"nand write.raw ${loadaddr} 0x0 ${fcb_sz} ; " \ |
f994dc5ec mx28evk: extend d... |
124 125 126 127 128 129 130 131 132 133 134 135 136 137 |
"setexpr update_off ${loadaddr} + ${update_nand_fcb} ; " \ "setexpr update_sz ${filesize} - ${update_nand_fcb} ; " \ "nand write ${update_off} ${update_nand_fcb} ${update_sz} ; " \ "fi\0" \ "update_nand_firmware=" /* Update only firmware */ \ "if tftp ${update_nand_firmware_filename} ; then " \ "run update_nand_get_fcb_size ; " \ "setexpr fcb_sz ${update_nand_fcb} * 2 ; " /* FCB + DBBT */ \ "setexpr fw_sz ${update_nand_firmware_maxsz} * 2 ; " \ "setexpr fw_off ${fcb_sz} + ${update_nand_firmware_maxsz};" \ "nand erase ${fcb_sz} ${fw_sz} ; " \ "nand write ${loadaddr} ${fcb_sz} ${filesize} ; " \ "nand write ${loadaddr} ${fw_off} ${filesize} ; " \ "fi\0" \ |
8ae269d41 mx28evk: Extend e... |
138 139 140 141 142 143 144 145 |
"update_nand_kernel=" /* Update kernel */ \ "mtdparts default; " \ "nand erase.part kernel; " \ "if test ${ip_dyn} = yes; then " \ "setenv get_cmd dhcp; " \ "else " \ "setenv get_cmd tftp; " \ "fi; " \ |
fb3f91702 mx28evk: Set defa... |
146 |
"${get_cmd} ${image}; " \ |
8ae269d41 mx28evk: Extend e... |
147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 |
"nand write ${loadaddr} kernel ${filesize}\0" \ "update_nand_fdt=" /* Update fdt */ \ "mtdparts default; " \ "nand erase.part fdt; " \ "if test ${ip_dyn} = yes; then " \ "setenv get_cmd dhcp; " \ "else " \ "setenv get_cmd tftp; " \ "fi; " \ "${get_cmd} ${fdt_file}; " \ "nand write ${loadaddr} fdt ${filesize}\0" \ "update_nand_filesystem=" /* Update filesystem */ \ "mtdparts default; " \ "nand erase.part filesystem; " \ "if test ${ip_dyn} = yes; then " \ "setenv get_cmd dhcp; " \ "else " \ "setenv get_cmd tftp; " \ "fi; " \ "${get_cmd} ${ubifs_file}; " \ "ubi part filesystem; " \ "ubi create filesystem; " \ "ubi write ${loadaddr} filesystem ${filesize}\0" \ |
09308e8e4 mx28evk: Add 'nan... |
170 171 172 173 174 175 176 177 |
"nandargs=setenv bootargs console=${console_mainline},${baudrate} " \ "rootfstype=ubifs ubi.mtd=6 root=ubi0_0 ${mtdparts}\0" \ "nandboot=" /* Boot from NAND */ \ "mtdparts default; " \ "run nandargs; " \ "nand read ${loadaddr} kernel 0x00400000; " \ "if test ${boot_fdt} = yes; then " \ "nand read ${fdt_addr} fdt 0x00080000; " \ |
fb3f91702 mx28evk: Set defa... |
178 |
"bootz ${loadaddr} - ${fdt_addr}; " \ |
09308e8e4 mx28evk: Add 'nan... |
179 180 |
"else " \ "if test ${boot_fdt} = no; then " \ |
fb3f91702 mx28evk: Set defa... |
181 |
"bootz; " \ |
09308e8e4 mx28evk: Add 'nan... |
182 183 184 185 186 |
"else " \ "echo \"ERROR: Set boot_fdt to yes or no.\"; " \ "fi; " \ "fi\0" \ "update_sd_firmware_filename=u-boot.sd\0" \ |
f994dc5ec mx28evk: extend d... |
187 188 189 190 191 192 193 194 195 |
"update_sd_firmware=" /* Update the SD firmware partition */ \ "if mmc rescan ; then " \ "if tftp ${update_sd_firmware_filename} ; then " \ "setexpr fw_sz ${filesize} / 0x200 ; " /* SD block size */ \ "setexpr fw_sz ${fw_sz} + 1 ; " \ "mmc write ${loadaddr} 0x800 ${fw_sz} ; " \ "fi ; " \ "fi\0" \ "script=boot.scr\0" \ |
fb3f91702 mx28evk: Set defa... |
196 |
"image=zImage\0" \ |
f994dc5ec mx28evk: extend d... |
197 198 |
"console_fsl=ttyAM0\0" \ "console_mainline=ttyAMA0\0" \ |
4c6b23505 mx28evk: Add supp... |
199 200 201 202 |
"fdt_file=imx28-evk.dtb\0" \ "fdt_addr=0x41000000\0" \ "boot_fdt=try\0" \ "ip_dyn=yes\0" \ |
f994dc5ec mx28evk: extend d... |
203 204 |
"mmcdev=0\0" \ "mmcpart=2\0" \ |
3c41e9011 mx28evk: We shoul... |
205 |
"mmcroot=/dev/mmcblk0p3 rw rootwait\0" \ |
f994dc5ec mx28evk: extend d... |
206 |
"mmcargs=setenv bootargs console=${console_mainline},${baudrate} " \ |
3c41e9011 mx28evk: We shoul... |
207 |
"root=${mmcroot}\0" \ |
f994dc5ec mx28evk: extend d... |
208 209 210 211 |
"loadbootscript=" \ "fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \ "bootscript=echo Running bootscript from mmc ...; " \ "source\0" \ |
fb3f91702 mx28evk: Set defa... |
212 |
"loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}\0" \ |
4c6b23505 mx28evk: Add supp... |
213 |
"loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \ |
f994dc5ec mx28evk: extend d... |
214 |
"mmcboot=echo Booting from mmc ...; " \ |
4c6b23505 mx28evk: Add supp... |
215 216 217 |
"run mmcargs; " \ "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \ "if run loadfdt; then " \ |
fb3f91702 mx28evk: Set defa... |
218 |
"bootz ${loadaddr} - ${fdt_addr}; " \ |
4c6b23505 mx28evk: Add supp... |
219 220 |
"else " \ "if test ${boot_fdt} = try; then " \ |
fb3f91702 mx28evk: Set defa... |
221 |
"bootz; " \ |
4c6b23505 mx28evk: Add supp... |
222 223 224 225 226 |
"else " \ "echo WARN: Cannot load the DT; " \ "fi; " \ "fi; " \ "else " \ |
fb3f91702 mx28evk: Set defa... |
227 |
"bootz; " \ |
4c6b23505 mx28evk: Add supp... |
228 |
"fi;\0" \ |
f994dc5ec mx28evk: extend d... |
229 |
"netargs=setenv bootargs console=${console_mainline},${baudrate} " \ |
29f75a5ce mx28evk: Add init... |
230 |
"root=/dev/nfs " \ |
f994dc5ec mx28evk: extend d... |
231 232 233 |
"ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \ "netboot=echo Booting from net ...; " \ "run netargs; " \ |
4c6b23505 mx28evk: Add supp... |
234 235 236 237 238 |
"if test ${ip_dyn} = yes; then " \ "setenv get_cmd dhcp; " \ "else " \ "setenv get_cmd tftp; " \ "fi; " \ |
fb3f91702 mx28evk: Set defa... |
239 |
"${get_cmd} ${image}; " \ |
4c6b23505 mx28evk: Add supp... |
240 241 |
"if test ${boot_fdt} = yes; then " \ "if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \ |
fb3f91702 mx28evk: Set defa... |
242 |
"bootz ${loadaddr} - ${fdt_addr}; " \ |
4c6b23505 mx28evk: Add supp... |
243 244 |
"else " \ "if test ${boot_fdt} = try; then " \ |
fb3f91702 mx28evk: Set defa... |
245 |
"bootz; " \ |
4c6b23505 mx28evk: Add supp... |
246 247 248 249 250 |
"else " \ "echo WARN: Cannot load the DT; " \ "fi;" \ "fi; " \ "else " \ |
fb3f91702 mx28evk: Set defa... |
251 |
"bootz; " \ |
4c6b23505 mx28evk: Add supp... |
252 |
"fi;\0" |
f994dc5ec mx28evk: extend d... |
253 254 |
#define CONFIG_BOOTCOMMAND \ |
669681104 configs: Fix usag... |
255 |
"mmc dev ${mmcdev}; if mmc rescan; then " \ |
f994dc5ec mx28evk: extend d... |
256 257 258 |
"if run loadbootscript; then " \ "run bootscript; " \ "else " \ |
fb3f91702 mx28evk: Set defa... |
259 |
"if run loadimage; then " \ |
f994dc5ec mx28evk: extend d... |
260 261 262 263 264 |
"run mmcboot; " \ "else run netboot; " \ "fi; " \ "fi; " \ "else run netboot; fi" |
29f75a5ce mx28evk: Add init... |
265 |
|
5434caf5b ARM: mxs: Consoli... |
266 267 268 269 |
/* The rest of the configuration is shared */ #include <configs/mxs.h> #endif /* __CONFIGS_MX28EVK_H__ */ |