1*76d7f574SJason Liu /* 2*76d7f574SJason Liu * Copyright (C) 2010-2011 Freescale Semiconductor, Inc. 3*76d7f574SJason Liu * 4*76d7f574SJason Liu * Configuration settings for the Freescale i.MX6Q Armadillo2 board. 5*76d7f574SJason Liu * 6*76d7f574SJason Liu * This program is free software; you can redistribute it and/or 7*76d7f574SJason Liu * modify it under the terms of the GNU General Public License as 8*76d7f574SJason Liu * published by the Free Software Foundation; either version 2 of 9*76d7f574SJason Liu * the License, or (at your option) any later version. 10*76d7f574SJason Liu * 11*76d7f574SJason Liu * This program is distributed in the hope that it will be useful, 12*76d7f574SJason Liu * but WITHOUT ANY WARRANTY; without even the implied warranty of 13*76d7f574SJason Liu * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14*76d7f574SJason Liu * GNU General Public License for more details. 15*76d7f574SJason Liu * 16*76d7f574SJason Liu * You should have received a copy of the GNU General Public License 17*76d7f574SJason Liu * along with this program; if not, write to the Free Software 18*76d7f574SJason Liu * Foundation, Inc., 59 Temple Place, Suite 330, Boston, 19*76d7f574SJason Liu * MA 02111-1307 USA 20*76d7f574SJason Liu */ 21*76d7f574SJason Liu 22*76d7f574SJason Liu #ifndef __CONFIG_H 23*76d7f574SJason Liu #define __CONFIG_H 24*76d7f574SJason Liu 25*76d7f574SJason Liu #define CONFIG_MX6Q 26*76d7f574SJason Liu #define CONFIG_SYS_MX6_HCLK 24000000 27*76d7f574SJason Liu #define CONFIG_SYS_MX6_CLK32 32768 28*76d7f574SJason Liu #define CONFIG_DISPLAY_CPUINFO 29*76d7f574SJason Liu #define CONFIG_DISPLAY_BOARDINFO 30*76d7f574SJason Liu 31*76d7f574SJason Liu #include <asm/arch/imx-regs.h> 32*76d7f574SJason Liu 33*76d7f574SJason Liu #define CONFIG_CMDLINE_TAG 34*76d7f574SJason Liu #define CONFIG_SETUP_MEMORY_TAGS 35*76d7f574SJason Liu #define CONFIG_INITRD_TAG 36*76d7f574SJason Liu 37*76d7f574SJason Liu /* Size of malloc() pool */ 38*76d7f574SJason Liu #define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + 2 * 1024 * 1024) 39*76d7f574SJason Liu 40*76d7f574SJason Liu #define CONFIG_ARCH_CPU_INIT 41*76d7f574SJason Liu #define CONFIG_BOARD_EARLY_INIT_F 42*76d7f574SJason Liu #define CONFIG_MXC_GPIO 43*76d7f574SJason Liu 44*76d7f574SJason Liu #define CONFIG_MXC_UART 45*76d7f574SJason Liu #define CONFIG_MXC_UART_BASE UART4_BASE 46*76d7f574SJason Liu 47*76d7f574SJason Liu /* MMC Configs */ 48*76d7f574SJason Liu #define CONFIG_FSL_ESDHC 49*76d7f574SJason Liu #define CONFIG_FSL_USDHC 50*76d7f574SJason Liu #define CONFIG_SYS_FSL_ESDHC_ADDR 0 51*76d7f574SJason Liu #define CONFIG_SYS_FSL_USDHC_NUM 2 52*76d7f574SJason Liu 53*76d7f574SJason Liu #define CONFIG_MMC 54*76d7f574SJason Liu #define CONFIG_CMD_MMC 55*76d7f574SJason Liu #define CONFIG_GENERIC_MMC 56*76d7f574SJason Liu #define CONFIG_CMD_FAT 57*76d7f574SJason Liu #define CONFIG_DOS_PARTITION 58*76d7f574SJason Liu 59*76d7f574SJason Liu /* allow to overwrite serial and ethaddr */ 60*76d7f574SJason Liu #define CONFIG_ENV_OVERWRITE 61*76d7f574SJason Liu #define CONFIG_CONS_INDEX 1 62*76d7f574SJason Liu #define CONFIG_BAUDRATE 115200 63*76d7f574SJason Liu #define CONFIG_SYS_BAUDRATE_TABLE {9600, 19200, 38400, 57600, 115200} 64*76d7f574SJason Liu 65*76d7f574SJason Liu /* Command definition */ 66*76d7f574SJason Liu #include <config_cmd_default.h> 67*76d7f574SJason Liu 68*76d7f574SJason Liu #undef CONFIG_CMD_IMLS 69*76d7f574SJason Liu #undef CONFIG_CMD_NET 70*76d7f574SJason Liu #undef CONFIG_CMD_NFS 71*76d7f574SJason Liu 72*76d7f574SJason Liu #define CONFIG_BOOTDELAY 3 73*76d7f574SJason Liu 74*76d7f574SJason Liu #define CONFIG_LOADADDR 0x10800000 75*76d7f574SJason Liu #define CONFIG_SYS_TEXT_BASE 0x17800000 76*76d7f574SJason Liu 77*76d7f574SJason Liu #define CONFIG_EXTRA_ENV_SETTINGS \ 78*76d7f574SJason Liu "script=boot.scr\0" \ 79*76d7f574SJason Liu "uimage=uImage\0" \ 80*76d7f574SJason Liu "console=ttymxc3\0" \ 81*76d7f574SJason Liu "mmcdev=1\0" \ 82*76d7f574SJason Liu "mmcpart=2\0" \ 83*76d7f574SJason Liu "mmcroot=/dev/mmcblk0p3 rootwait rw\0" \ 84*76d7f574SJason Liu "mmcargs=setenv bootargs console=${console},${baudrate} " \ 85*76d7f574SJason Liu "root=${mmcroot}\0" \ 86*76d7f574SJason Liu "loadbootscript=" \ 87*76d7f574SJason Liu "fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \ 88*76d7f574SJason Liu "bootscript=echo Running bootscript from mmc ...; " \ 89*76d7f574SJason Liu "source\0" \ 90*76d7f574SJason Liu "loaduimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${uimage}\0" \ 91*76d7f574SJason Liu "mmcboot=echo Booting from mmc ...; " \ 92*76d7f574SJason Liu "run mmcargs; " \ 93*76d7f574SJason Liu "bootm\0" \ 94*76d7f574SJason Liu "netargs=setenv bootargs console=${console},${baudrate} " \ 95*76d7f574SJason Liu "root=/dev/nfs " \ 96*76d7f574SJason Liu "ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \ 97*76d7f574SJason Liu "netboot=echo Booting from net ...; " \ 98*76d7f574SJason Liu "run netargs; " \ 99*76d7f574SJason Liu "dhcp ${uimage}; bootm\0" \ 100*76d7f574SJason Liu 101*76d7f574SJason Liu #define CONFIG_BOOTCOMMAND \ 102*76d7f574SJason Liu "mmc dev ${mmcdev};" \ 103*76d7f574SJason Liu "if mmc rescan ${mmcdev}; then " \ 104*76d7f574SJason Liu "if run loadbootscript; then " \ 105*76d7f574SJason Liu "run bootscript; " \ 106*76d7f574SJason Liu "else " \ 107*76d7f574SJason Liu "if run loaduimage; then " \ 108*76d7f574SJason Liu "run mmcboot; " \ 109*76d7f574SJason Liu "else run netboot; " \ 110*76d7f574SJason Liu "fi; " \ 111*76d7f574SJason Liu "fi; " \ 112*76d7f574SJason Liu "else run netboot; fi" 113*76d7f574SJason Liu 114*76d7f574SJason Liu #define CONFIG_ARP_TIMEOUT 200UL 115*76d7f574SJason Liu 116*76d7f574SJason Liu /* Miscellaneous configurable options */ 117*76d7f574SJason Liu #define CONFIG_SYS_LONGHELP 118*76d7f574SJason Liu #define CONFIG_SYS_HUSH_PARSER 119*76d7f574SJason Liu #define CONFIG_SYS_PROMPT_HUSH_PS2 "> " 120*76d7f574SJason Liu #define CONFIG_SYS_PROMPT "MX6QARM2 U-Boot > " 121*76d7f574SJason Liu #define CONFIG_AUTO_COMPLETE 122*76d7f574SJason Liu #define CONFIG_SYS_CBSIZE 256 123*76d7f574SJason Liu 124*76d7f574SJason Liu /* Print Buffer Size */ 125*76d7f574SJason Liu #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16) 126*76d7f574SJason Liu #define CONFIG_SYS_MAXARGS 16 127*76d7f574SJason Liu #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE 128*76d7f574SJason Liu 129*76d7f574SJason Liu #define CONFIG_SYS_MEMTEST_START 0x10000000 130*76d7f574SJason Liu #define CONFIG_SYS_MEMTEST_END 0x10010000 131*76d7f574SJason Liu 132*76d7f574SJason Liu #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR 133*76d7f574SJason Liu #define CONFIG_SYS_HZ 1000 134*76d7f574SJason Liu 135*76d7f574SJason Liu #define CONFIG_CMDLINE_EDITING 136*76d7f574SJason Liu #define CONFIG_STACKSIZE (128 * 1024) 137*76d7f574SJason Liu 138*76d7f574SJason Liu /* Physical Memory Map */ 139*76d7f574SJason Liu #define CONFIG_NR_DRAM_BANKS 1 140*76d7f574SJason Liu #define PHYS_SDRAM MMDC0_ARB_BASE_ADDR 141*76d7f574SJason Liu #define PHYS_SDRAM_SIZE (2u * 1024 * 1024 * 1024) 142*76d7f574SJason Liu 143*76d7f574SJason Liu #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM 144*76d7f574SJason Liu #define CONFIG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR 145*76d7f574SJason Liu #define CONFIG_SYS_INIT_RAM_SIZE IRAM_SIZE 146*76d7f574SJason Liu 147*76d7f574SJason Liu #define CONFIG_SYS_INIT_SP_OFFSET \ 148*76d7f574SJason Liu (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) 149*76d7f574SJason Liu #define CONFIG_SYS_INIT_SP_ADDR \ 150*76d7f574SJason Liu (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET) 151*76d7f574SJason Liu 152*76d7f574SJason Liu /* FLASH and environment organization */ 153*76d7f574SJason Liu #define CONFIG_SYS_NO_FLASH 154*76d7f574SJason Liu 155*76d7f574SJason Liu #define CONFIG_ENV_OFFSET (6 * 64 * 1024) 156*76d7f574SJason Liu #define CONFIG_ENV_SIZE (8 * 1024) 157*76d7f574SJason Liu #define CONFIG_ENV_IS_IN_MMC 158*76d7f574SJason Liu #define CONFIG_SYS_MMC_ENV_DEV 1 159*76d7f574SJason Liu 160*76d7f574SJason Liu #define CONFIG_OF_LIBFDT 161*76d7f574SJason Liu 162*76d7f574SJason Liu #endif /* __CONFIG_H */ 163