1*47c3e074SFabio Estevam /* 2*47c3e074SFabio Estevam * Copyright (C) 2011 Freescale Semiconductor, Inc. 3*47c3e074SFabio Estevam * 4*47c3e074SFabio Estevam * Configuration settings for the MX53ARD Freescale board. 5*47c3e074SFabio Estevam * 6*47c3e074SFabio Estevam * This program is free software; you can redistribute it and/or 7*47c3e074SFabio Estevam * modify it under the terms of the GNU General Public License as 8*47c3e074SFabio Estevam * published by the Free Software Foundation; either version 2 of 9*47c3e074SFabio Estevam * the License, or (at your option) any later version. 10*47c3e074SFabio Estevam * 11*47c3e074SFabio Estevam * This program is distributed in the hope that it will be useful, 12*47c3e074SFabio Estevam * but WITHOUT ANY WARRANTY; without even the implied warranty of 13*47c3e074SFabio Estevam * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14*47c3e074SFabio Estevam * GNU General Public License for more details. 15*47c3e074SFabio Estevam * 16*47c3e074SFabio Estevam * You should have received a copy of the GNU General Public License 17*47c3e074SFabio Estevam * along with this program; if not, write to the Free Software 18*47c3e074SFabio Estevam * Foundation, Inc., 59 Temple Place, Suite 330, Boston, 19*47c3e074SFabio Estevam * MA 02111-1307 USA 20*47c3e074SFabio Estevam */ 21*47c3e074SFabio Estevam 22*47c3e074SFabio Estevam #ifndef __CONFIG_H 23*47c3e074SFabio Estevam #define __CONFIG_H 24*47c3e074SFabio Estevam 25*47c3e074SFabio Estevam #define CONFIG_MX53 26*47c3e074SFabio Estevam 27*47c3e074SFabio Estevam #define CONFIG_SYS_MX5_HCLK 24000000 28*47c3e074SFabio Estevam #define CONFIG_SYS_MX5_CLK32 32768 29*47c3e074SFabio Estevam #define CONFIG_DISPLAY_CPUINFO 30*47c3e074SFabio Estevam #define CONFIG_DISPLAY_BOARDINFO 31*47c3e074SFabio Estevam 32*47c3e074SFabio Estevam #define CONFIG_L2_OFF 33*47c3e074SFabio Estevam 34*47c3e074SFabio Estevam #include <asm/arch/imx-regs.h> 35*47c3e074SFabio Estevam 36*47c3e074SFabio Estevam #define CONFIG_CMDLINE_TAG /* enable passing of ATAGs */ 37*47c3e074SFabio Estevam #define CONFIG_REVISION_TAG 38*47c3e074SFabio Estevam #define CONFIG_SETUP_MEMORY_TAGS 39*47c3e074SFabio Estevam #define CONFIG_INITRD_TAG 40*47c3e074SFabio Estevam 41*47c3e074SFabio Estevam /* Size of malloc() pool */ 42*47c3e074SFabio Estevam #define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + 2 * 1024 * 1024) 43*47c3e074SFabio Estevam 44*47c3e074SFabio Estevam #define CONFIG_BOARD_EARLY_INIT_F 45*47c3e074SFabio Estevam #define CONFIG_MXC_GPIO 46*47c3e074SFabio Estevam 47*47c3e074SFabio Estevam #define CONFIG_MXC_UART 48*47c3e074SFabio Estevam #define CONFIG_SYS_MX53_UART1 49*47c3e074SFabio Estevam 50*47c3e074SFabio Estevam /* I2C Configs */ 51*47c3e074SFabio Estevam #define CONFIG_CMD_I2C 52*47c3e074SFabio Estevam #define CONFIG_HARD_I2C 53*47c3e074SFabio Estevam #define CONFIG_I2C_MXC 54*47c3e074SFabio Estevam #define CONFIG_SYS_I2C_MX53_PORT2 55*47c3e074SFabio Estevam #define CONFIG_SYS_I2C_SPEED 100000 56*47c3e074SFabio Estevam #define CONFIG_SYS_I2C_SLAVE 0xfe 57*47c3e074SFabio Estevam 58*47c3e074SFabio Estevam /* MMC Configs */ 59*47c3e074SFabio Estevam #define CONFIG_FSL_ESDHC 60*47c3e074SFabio Estevam #define CONFIG_SYS_FSL_ESDHC_ADDR 0 61*47c3e074SFabio Estevam #define CONFIG_SYS_FSL_ESDHC_NUM 2 62*47c3e074SFabio Estevam 63*47c3e074SFabio Estevam #define CONFIG_MMC 64*47c3e074SFabio Estevam #define CONFIG_CMD_MMC 65*47c3e074SFabio Estevam #define CONFIG_GENERIC_MMC 66*47c3e074SFabio Estevam #define CONFIG_CMD_FAT 67*47c3e074SFabio Estevam #define CONFIG_DOS_PARTITION 68*47c3e074SFabio Estevam 69*47c3e074SFabio Estevam /* Eth Configs */ 70*47c3e074SFabio Estevam #define CONFIG_HAS_ETH1 71*47c3e074SFabio Estevam #define CONFIG_NET_MULTI 72*47c3e074SFabio Estevam #define CONFIG_MII 73*47c3e074SFabio Estevam #define CONFIG_MII_GASKET 74*47c3e074SFabio Estevam #define CONFIG_DISCOVER_PHY 75*47c3e074SFabio Estevam 76*47c3e074SFabio Estevam #define CONFIG_CMD_PING 77*47c3e074SFabio Estevam #define CONFIG_CMD_DHCP 78*47c3e074SFabio Estevam #define CONFIG_CMD_MII 79*47c3e074SFabio Estevam #define CONFIG_CMD_NET 80*47c3e074SFabio Estevam 81*47c3e074SFabio Estevam /* allow to overwrite serial and ethaddr */ 82*47c3e074SFabio Estevam #define CONFIG_ENV_OVERWRITE 83*47c3e074SFabio Estevam #define CONFIG_CONS_INDEX 1 84*47c3e074SFabio Estevam #define CONFIG_BAUDRATE 115200 85*47c3e074SFabio Estevam #define CONFIG_SYS_BAUDRATE_TABLE {9600, 19200, 38400, 57600, 115200} 86*47c3e074SFabio Estevam 87*47c3e074SFabio Estevam /* Command definition */ 88*47c3e074SFabio Estevam #include <config_cmd_default.h> 89*47c3e074SFabio Estevam 90*47c3e074SFabio Estevam #undef CONFIG_CMD_IMLS 91*47c3e074SFabio Estevam 92*47c3e074SFabio Estevam #define CONFIG_BOOTDELAY 3 93*47c3e074SFabio Estevam 94*47c3e074SFabio Estevam #define CONFIG_PRIME "smc911x" 95*47c3e074SFabio Estevam 96*47c3e074SFabio Estevam /*Support LAN9217*/ 97*47c3e074SFabio Estevam #define CONFIG_SMC911X 98*47c3e074SFabio Estevam #define CONFIG_SMC911X_16_BIT 99*47c3e074SFabio Estevam #define CONFIG_SMC911X_BASE CS1_BASE_ADDR 100*47c3e074SFabio Estevam 101*47c3e074SFabio Estevam #define CONFIG_LOADADDR 0x70800000 /* loadaddr env var */ 102*47c3e074SFabio Estevam #define CONFIG_SYS_TEXT_BASE 0x77800000 103*47c3e074SFabio Estevam 104*47c3e074SFabio Estevam #define CONFIG_EXTRA_ENV_SETTINGS \ 105*47c3e074SFabio Estevam "script=boot.scr\0" \ 106*47c3e074SFabio Estevam "uimage=uImage\0" \ 107*47c3e074SFabio Estevam "mmcdev=0\0" \ 108*47c3e074SFabio Estevam "mmcpart=2\0" \ 109*47c3e074SFabio Estevam "mmcroot=/dev/mmcblk0p3 rw\0" \ 110*47c3e074SFabio Estevam "mmcrootfstype=ext3 rootwait\0" \ 111*47c3e074SFabio Estevam "mmcargs=setenv bootargs console=ttymxc0,${baudrate} " \ 112*47c3e074SFabio Estevam "root=${mmcroot} " \ 113*47c3e074SFabio Estevam "rootfstype=${mmcrootfstype}\0" \ 114*47c3e074SFabio Estevam "loadbootscript=" \ 115*47c3e074SFabio Estevam "fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \ 116*47c3e074SFabio Estevam "bootscript=echo Running bootscript from mmc ...; " \ 117*47c3e074SFabio Estevam "source\0" \ 118*47c3e074SFabio Estevam "loaduimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${uimage}\0" \ 119*47c3e074SFabio Estevam "mmcboot=echo Booting from mmc ...; " \ 120*47c3e074SFabio Estevam "run mmcargs; " \ 121*47c3e074SFabio Estevam "bootm\0" \ 122*47c3e074SFabio Estevam "netargs=setenv bootargs console=ttymxc0,${baudrate} " \ 123*47c3e074SFabio Estevam "root=/dev/nfs " \ 124*47c3e074SFabio Estevam "ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \ 125*47c3e074SFabio Estevam "netboot=echo Booting from net ...; " \ 126*47c3e074SFabio Estevam "run netargs; " \ 127*47c3e074SFabio Estevam "dhcp ${uimage}; bootm\0" \ 128*47c3e074SFabio Estevam 129*47c3e074SFabio Estevam #define CONFIG_BOOTCOMMAND \ 130*47c3e074SFabio Estevam "if mmc rescan ${mmcdev}; then " \ 131*47c3e074SFabio Estevam "if run loadbootscript; then " \ 132*47c3e074SFabio Estevam "run bootscript; " \ 133*47c3e074SFabio Estevam "else " \ 134*47c3e074SFabio Estevam "if run loaduimage; then " \ 135*47c3e074SFabio Estevam "run mmcboot; " \ 136*47c3e074SFabio Estevam "else run netboot; " \ 137*47c3e074SFabio Estevam "fi; " \ 138*47c3e074SFabio Estevam "fi; " \ 139*47c3e074SFabio Estevam "else run netboot; fi" 140*47c3e074SFabio Estevam #define CONFIG_ARP_TIMEOUT 200UL 141*47c3e074SFabio Estevam 142*47c3e074SFabio Estevam /* Miscellaneous configurable options */ 143*47c3e074SFabio Estevam #define CONFIG_SYS_LONGHELP /* undef to save memory */ 144*47c3e074SFabio Estevam #define CONFIG_SYS_HUSH_PARSER /* use "hush" command parser */ 145*47c3e074SFabio Estevam #define CONFIG_SYS_PROMPT_HUSH_PS2 "> " 146*47c3e074SFabio Estevam #define CONFIG_SYS_PROMPT "MX53ARD U-Boot > " 147*47c3e074SFabio Estevam #define CONFIG_AUTO_COMPLETE 148*47c3e074SFabio Estevam #define CONFIG_SYS_CBSIZE 256 /* Console I/O Buffer Size */ 149*47c3e074SFabio Estevam 150*47c3e074SFabio Estevam /* Print Buffer Size */ 151*47c3e074SFabio Estevam #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16) 152*47c3e074SFabio Estevam #define CONFIG_SYS_MAXARGS 16 /* max number of command args */ 153*47c3e074SFabio Estevam #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE /* Boot Argument Buffer Size */ 154*47c3e074SFabio Estevam 155*47c3e074SFabio Estevam #define CONFIG_SYS_MEMTEST_START 0x70000000 156*47c3e074SFabio Estevam #define CONFIG_SYS_MEMTEST_END 0x70010000 157*47c3e074SFabio Estevam 158*47c3e074SFabio Estevam #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR 159*47c3e074SFabio Estevam 160*47c3e074SFabio Estevam #define CONFIG_SYS_HZ 1000 161*47c3e074SFabio Estevam #define CONFIG_CMDLINE_EDITING 162*47c3e074SFabio Estevam 163*47c3e074SFabio Estevam /* Stack sizes */ 164*47c3e074SFabio Estevam #define CONFIG_STACKSIZE (128 * 1024) /* regular stack */ 165*47c3e074SFabio Estevam 166*47c3e074SFabio Estevam /* Physical Memory Map */ 167*47c3e074SFabio Estevam #define CONFIG_NR_DRAM_BANKS 2 168*47c3e074SFabio Estevam #define PHYS_SDRAM_1 CSD0_BASE_ADDR 169*47c3e074SFabio Estevam #define PHYS_SDRAM_1_SIZE (512 * 1024 * 1024) 170*47c3e074SFabio Estevam #define PHYS_SDRAM_2 CSD1_BASE_ADDR 171*47c3e074SFabio Estevam #define PHYS_SDRAM_2_SIZE (512 * 1024 * 1024) 172*47c3e074SFabio Estevam #define PHYS_SDRAM_SIZE (PHYS_SDRAM_1_SIZE + PHYS_SDRAM_2_SIZE) 173*47c3e074SFabio Estevam 174*47c3e074SFabio Estevam #define CONFIG_SYS_SDRAM_BASE (PHYS_SDRAM_1) 175*47c3e074SFabio Estevam #define CONFIG_SYS_INIT_RAM_ADDR (IRAM_BASE_ADDR) 176*47c3e074SFabio Estevam #define CONFIG_SYS_INIT_RAM_SIZE (IRAM_SIZE) 177*47c3e074SFabio Estevam 178*47c3e074SFabio Estevam #define CONFIG_SYS_INIT_SP_OFFSET \ 179*47c3e074SFabio Estevam (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) 180*47c3e074SFabio Estevam #define CONFIG_SYS_INIT_SP_ADDR \ 181*47c3e074SFabio Estevam (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET) 182*47c3e074SFabio Estevam 183*47c3e074SFabio Estevam /* FLASH and environment organization */ 184*47c3e074SFabio Estevam #define CONFIG_SYS_NO_FLASH 185*47c3e074SFabio Estevam 186*47c3e074SFabio Estevam #define CONFIG_ENV_OFFSET (6 * 64 * 1024) 187*47c3e074SFabio Estevam #define CONFIG_ENV_SIZE (8 * 1024) 188*47c3e074SFabio Estevam #define CONFIG_ENV_IS_IN_MMC 189*47c3e074SFabio Estevam #define CONFIG_SYS_MMC_ENV_DEV 0 190*47c3e074SFabio Estevam 191*47c3e074SFabio Estevam #define CONFIG_OF_LIBFDT 192*47c3e074SFabio Estevam 193*47c3e074SFabio Estevam #define MX53ARD_CS1GCR1 (CSEN | DSZ(2)) 194*47c3e074SFabio Estevam #define MX53ARD_CS1RCR1 (RCSN(2) | OEN (1) | RWSC(22)) 195*47c3e074SFabio Estevam #define MX53ARD_CS1RCR2 RBEN(2) 196*47c3e074SFabio Estevam #define MX53ARD_CS1WCR1 (WCSN(2) | WEN(2) | WBEN(2) | WWSC(22)) 197*47c3e074SFabio Estevam 198*47c3e074SFabio Estevam #endif /* __CONFIG_H */ 199