1*57ca432fSFabio Estevam /* 2*57ca432fSFabio Estevam * Copyright 2013 Freescale Semiconductor, Inc. 3*57ca432fSFabio Estevam * 4*57ca432fSFabio Estevam * Configuration settings for the Freescale i.MX6SL EVK board. 5*57ca432fSFabio Estevam * 6*57ca432fSFabio Estevam * This program is free software; you can redistribute it and/or 7*57ca432fSFabio Estevam * modify it under the terms of the GNU General Public License as 8*57ca432fSFabio Estevam * published by the Free Software Foundation; either version 2 of 9*57ca432fSFabio Estevam * the License, or (at your option) any later version. 10*57ca432fSFabio Estevam */ 11*57ca432fSFabio Estevam 12*57ca432fSFabio Estevam #ifndef __CONFIG_H 13*57ca432fSFabio Estevam #define __CONFIG_H 14*57ca432fSFabio Estevam 15*57ca432fSFabio Estevam #include <asm/arch/imx-regs.h> 16*57ca432fSFabio Estevam #include <asm/sizes.h> 17*57ca432fSFabio Estevam 18*57ca432fSFabio Estevam #define CONFIG_MX6 19*57ca432fSFabio Estevam #define CONFIG_DISPLAY_CPUINFO 20*57ca432fSFabio Estevam #define CONFIG_DISPLAY_BOARDINFO 21*57ca432fSFabio Estevam 22*57ca432fSFabio Estevam #define MACH_TYPE_MX6SLEVK 4307 23*57ca432fSFabio Estevam #define CONFIG_MACH_TYPE MACH_TYPE_MX6SLEVK 24*57ca432fSFabio Estevam 25*57ca432fSFabio Estevam #define CONFIG_CMDLINE_TAG 26*57ca432fSFabio Estevam #define CONFIG_SETUP_MEMORY_TAGS 27*57ca432fSFabio Estevam #define CONFIG_INITRD_TAG 28*57ca432fSFabio Estevam #define CONFIG_REVISION_TAG 29*57ca432fSFabio Estevam 30*57ca432fSFabio Estevam /* Size of malloc() pool */ 31*57ca432fSFabio Estevam #define CONFIG_SYS_MALLOC_LEN (3 * SZ_1M) 32*57ca432fSFabio Estevam 33*57ca432fSFabio Estevam #define CONFIG_BOARD_EARLY_INIT_F 34*57ca432fSFabio Estevam #define CONFIG_MXC_GPIO 35*57ca432fSFabio Estevam 36*57ca432fSFabio Estevam #define CONFIG_MXC_UART 37*57ca432fSFabio Estevam #define CONFIG_MXC_UART_BASE UART1_IPS_BASE_ADDR 38*57ca432fSFabio Estevam 39*57ca432fSFabio Estevam /* MMC Configs */ 40*57ca432fSFabio Estevam #define CONFIG_FSL_ESDHC 41*57ca432fSFabio Estevam #define CONFIG_FSL_USDHC 42*57ca432fSFabio Estevam #define CONFIG_SYS_FSL_ESDHC_ADDR 0 43*57ca432fSFabio Estevam 44*57ca432fSFabio Estevam #define CONFIG_MMC 45*57ca432fSFabio Estevam #define CONFIG_CMD_MMC 46*57ca432fSFabio Estevam #define CONFIG_GENERIC_MMC 47*57ca432fSFabio Estevam #define CONFIG_CMD_FAT 48*57ca432fSFabio Estevam #define CONFIG_DOS_PARTITION 49*57ca432fSFabio Estevam 50*57ca432fSFabio Estevam /* allow to overwrite serial and ethaddr */ 51*57ca432fSFabio Estevam #define CONFIG_ENV_OVERWRITE 52*57ca432fSFabio Estevam #define CONFIG_CONS_INDEX 1 53*57ca432fSFabio Estevam #define CONFIG_BAUDRATE 115200 54*57ca432fSFabio Estevam 55*57ca432fSFabio Estevam /* Command definition */ 56*57ca432fSFabio Estevam #include <config_cmd_default.h> 57*57ca432fSFabio Estevam 58*57ca432fSFabio Estevam #undef CONFIG_CMD_IMLS 59*57ca432fSFabio Estevam 60*57ca432fSFabio Estevam #define CONFIG_BOOTDELAY 3 61*57ca432fSFabio Estevam 62*57ca432fSFabio Estevam #define CONFIG_LOADADDR 0x80800000 63*57ca432fSFabio Estevam #define CONFIG_SYS_TEXT_BASE 0x87800000 64*57ca432fSFabio Estevam 65*57ca432fSFabio Estevam #define CONFIG_EXTRA_ENV_SETTINGS \ 66*57ca432fSFabio Estevam "script=boot.scr\0" \ 67*57ca432fSFabio Estevam "uimage=uImage\0" \ 68*57ca432fSFabio Estevam "console=ttymxc0\0" \ 69*57ca432fSFabio Estevam "fdt_high=0xffffffff\0" \ 70*57ca432fSFabio Estevam "initrd_high=0xffffffff\0" \ 71*57ca432fSFabio Estevam "fdt_file=imx6sl-evk.dtb\0" \ 72*57ca432fSFabio Estevam "fdt_addr=0x81000000\0" \ 73*57ca432fSFabio Estevam "boot_fdt=try\0" \ 74*57ca432fSFabio Estevam "ip_dyn=yes\0" \ 75*57ca432fSFabio Estevam "mmcdev=0\0" \ 76*57ca432fSFabio Estevam "mmcpart=2\0" \ 77*57ca432fSFabio Estevam "mmcroot=/dev/mmcblk0p3 rootwait rw\0" \ 78*57ca432fSFabio Estevam "mmcargs=setenv bootargs console=${console},${baudrate} " \ 79*57ca432fSFabio Estevam "root=${mmcroot}\0" \ 80*57ca432fSFabio Estevam "loadbootscript=" \ 81*57ca432fSFabio Estevam "fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \ 82*57ca432fSFabio Estevam "bootscript=echo Running bootscript from mmc ...; " \ 83*57ca432fSFabio Estevam "source\0" \ 84*57ca432fSFabio Estevam "loaduimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${uimage}\0" \ 85*57ca432fSFabio Estevam "loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \ 86*57ca432fSFabio Estevam "mmcboot=echo Booting from mmc ...; " \ 87*57ca432fSFabio Estevam "run mmcargs; " \ 88*57ca432fSFabio Estevam "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \ 89*57ca432fSFabio Estevam "if run loadfdt; then " \ 90*57ca432fSFabio Estevam "bootm ${loadaddr} - ${fdt_addr}; " \ 91*57ca432fSFabio Estevam "else " \ 92*57ca432fSFabio Estevam "if test ${boot_fdt} = try; then " \ 93*57ca432fSFabio Estevam "bootm; " \ 94*57ca432fSFabio Estevam "else " \ 95*57ca432fSFabio Estevam "echo WARN: Cannot load the DT; " \ 96*57ca432fSFabio Estevam "fi; " \ 97*57ca432fSFabio Estevam "fi; " \ 98*57ca432fSFabio Estevam "else " \ 99*57ca432fSFabio Estevam "bootm; " \ 100*57ca432fSFabio Estevam "fi;\0" \ 101*57ca432fSFabio Estevam "netargs=setenv bootargs console=${console},${baudrate} " \ 102*57ca432fSFabio Estevam "root=/dev/nfs " \ 103*57ca432fSFabio Estevam "ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \ 104*57ca432fSFabio Estevam "netboot=echo Booting from net ...; " \ 105*57ca432fSFabio Estevam "run netargs; " \ 106*57ca432fSFabio Estevam "if test ${ip_dyn} = yes; then " \ 107*57ca432fSFabio Estevam "setenv get_cmd dhcp; " \ 108*57ca432fSFabio Estevam "else " \ 109*57ca432fSFabio Estevam "setenv get_cmd tftp; " \ 110*57ca432fSFabio Estevam "fi; " \ 111*57ca432fSFabio Estevam "${get_cmd} ${uimage}; " \ 112*57ca432fSFabio Estevam "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \ 113*57ca432fSFabio Estevam "if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \ 114*57ca432fSFabio Estevam "bootm ${loadaddr} - ${fdt_addr}; " \ 115*57ca432fSFabio Estevam "else " \ 116*57ca432fSFabio Estevam "if test ${boot_fdt} = try; then " \ 117*57ca432fSFabio Estevam "bootm; " \ 118*57ca432fSFabio Estevam "else " \ 119*57ca432fSFabio Estevam "echo WARN: Cannot load the DT; " \ 120*57ca432fSFabio Estevam "fi; " \ 121*57ca432fSFabio Estevam "fi; " \ 122*57ca432fSFabio Estevam "else " \ 123*57ca432fSFabio Estevam "bootm; " \ 124*57ca432fSFabio Estevam "fi;\0" 125*57ca432fSFabio Estevam 126*57ca432fSFabio Estevam #define CONFIG_BOOTCOMMAND \ 127*57ca432fSFabio Estevam "mmc dev ${mmcdev};" \ 128*57ca432fSFabio Estevam "mmc dev ${mmcdev}; if mmc rescan; then " \ 129*57ca432fSFabio Estevam "if run loadbootscript; then " \ 130*57ca432fSFabio Estevam "run bootscript; " \ 131*57ca432fSFabio Estevam "else " \ 132*57ca432fSFabio Estevam "if run loaduimage; then " \ 133*57ca432fSFabio Estevam "run mmcboot; " \ 134*57ca432fSFabio Estevam "else run netboot; " \ 135*57ca432fSFabio Estevam "fi; " \ 136*57ca432fSFabio Estevam "fi; " \ 137*57ca432fSFabio Estevam "else run netboot; fi" 138*57ca432fSFabio Estevam 139*57ca432fSFabio Estevam /* Miscellaneous configurable options */ 140*57ca432fSFabio Estevam #define CONFIG_SYS_LONGHELP 141*57ca432fSFabio Estevam #define CONFIG_SYS_HUSH_PARSER 142*57ca432fSFabio Estevam #define CONFIG_SYS_PROMPT "=> " 143*57ca432fSFabio Estevam #define CONFIG_AUTO_COMPLETE 144*57ca432fSFabio Estevam #define CONFIG_SYS_CBSIZE 256 145*57ca432fSFabio Estevam 146*57ca432fSFabio Estevam /* Print Buffer Size */ 147*57ca432fSFabio Estevam #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16) 148*57ca432fSFabio Estevam #define CONFIG_SYS_MAXARGS 16 149*57ca432fSFabio Estevam #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE 150*57ca432fSFabio Estevam 151*57ca432fSFabio Estevam #define CONFIG_SYS_MEMTEST_START 0x80000000 152*57ca432fSFabio Estevam #define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_MEMTEST_START + SZ_512M) 153*57ca432fSFabio Estevam 154*57ca432fSFabio Estevam #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR 155*57ca432fSFabio Estevam #define CONFIG_SYS_HZ 1000 156*57ca432fSFabio Estevam 157*57ca432fSFabio Estevam #define CONFIG_CMDLINE_EDITING 158*57ca432fSFabio Estevam #define CONFIG_STACKSIZE SZ_128K 159*57ca432fSFabio Estevam 160*57ca432fSFabio Estevam /* Physical Memory Map */ 161*57ca432fSFabio Estevam #define CONFIG_NR_DRAM_BANKS 1 162*57ca432fSFabio Estevam #define PHYS_SDRAM MMDC0_ARB_BASE_ADDR 163*57ca432fSFabio Estevam #define PHYS_SDRAM_SIZE SZ_1G 164*57ca432fSFabio Estevam 165*57ca432fSFabio Estevam #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM 166*57ca432fSFabio Estevam #define CONFIG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR 167*57ca432fSFabio Estevam #define CONFIG_SYS_INIT_RAM_SIZE IRAM_SIZE 168*57ca432fSFabio Estevam 169*57ca432fSFabio Estevam #define CONFIG_SYS_INIT_SP_OFFSET \ 170*57ca432fSFabio Estevam (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) 171*57ca432fSFabio Estevam #define CONFIG_SYS_INIT_SP_ADDR \ 172*57ca432fSFabio Estevam (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET) 173*57ca432fSFabio Estevam 174*57ca432fSFabio Estevam /* FLASH and environment organization */ 175*57ca432fSFabio Estevam #define CONFIG_SYS_NO_FLASH 176*57ca432fSFabio Estevam 177*57ca432fSFabio Estevam #define CONFIG_ENV_OFFSET (6 * SZ_64K) 178*57ca432fSFabio Estevam #define CONFIG_ENV_SIZE SZ_8K 179*57ca432fSFabio Estevam #define CONFIG_ENV_IS_IN_MMC 180*57ca432fSFabio Estevam #define CONFIG_SYS_MMC_ENV_DEV 0 181*57ca432fSFabio Estevam 182*57ca432fSFabio Estevam #define CONFIG_OF_LIBFDT 183*57ca432fSFabio Estevam #define CONFIG_CMD_BOOTZ 184*57ca432fSFabio Estevam 185*57ca432fSFabio Estevam #ifndef CONFIG_SYS_DCACHE_OFF 186*57ca432fSFabio Estevam #define CONFIG_CMD_CACHE 187*57ca432fSFabio Estevam #endif 188*57ca432fSFabio Estevam 189*57ca432fSFabio Estevam #endif /* __CONFIG_H */ 190