1bbe31092SHeiko Schocher /* 2bbe31092SHeiko Schocher * Copyright (C) 2010 Heiko Schocher <hs@denx.de> 3bbe31092SHeiko Schocher * 4bbe31092SHeiko Schocher * based on: 5bbe31092SHeiko Schocher * Copyright (C) 2009 Ilya Yanok <yanok@emcraft.com> 6bbe31092SHeiko Schocher * 7bbe31092SHeiko Schocher * This program is free software; you can redistribute it and/or 8bbe31092SHeiko Schocher * modify it under the terms of the GNU General Public License as 9bbe31092SHeiko Schocher * published by the Free Software Foundation; either version 2 of 10bbe31092SHeiko Schocher * the License, or (at your option) any later version. 11bbe31092SHeiko Schocher * 12bbe31092SHeiko Schocher * This program is distributed in the hope that it will be useful, 13bbe31092SHeiko Schocher * but WITHOUT ANY WARRANTY; without even the implied warranty of 14bbe31092SHeiko Schocher * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15bbe31092SHeiko Schocher * GNU General Public License for more details. 16bbe31092SHeiko Schocher * 17bbe31092SHeiko Schocher * You should have received a copy of the GNU General Public License 18bbe31092SHeiko Schocher * along with this program; if not, write to the Free Software 19bbe31092SHeiko Schocher * Foundation, Inc., 59 Temple Place, Suite 330, Boston, 20bbe31092SHeiko Schocher * MA 02111-1307 USA 21bbe31092SHeiko Schocher */ 22bbe31092SHeiko Schocher 23bbe31092SHeiko Schocher #ifndef __IMX27LITE_COMMON_CONFIG_H 24bbe31092SHeiko Schocher #define __IMX27LITE_COMMON_CONFIG_H 25bbe31092SHeiko Schocher 26bbe31092SHeiko Schocher /* 27bbe31092SHeiko Schocher * SoC Configuration 28bbe31092SHeiko Schocher */ 29bbe31092SHeiko Schocher #define CONFIG_ARM926EJS /* arm926ejs CPU core */ 30bbe31092SHeiko Schocher #define CONFIG_MX27 31bbe31092SHeiko Schocher #define CONFIG_MX27_CLK32 32768 /* OSC32K frequency */ 32bbe31092SHeiko Schocher #define CONFIG_SYS_HZ 1000 33bbe31092SHeiko Schocher 34bbe31092SHeiko Schocher #define CONFIG_DISPLAY_BOARDINFO 35bbe31092SHeiko Schocher #define CONFIG_DISPLAY_CPUINFO 36bbe31092SHeiko Schocher 3743f13e4aSFabio Estevam #define CONFIG_SYS_TEXT_BASE 0xc0000000 3843f13e4aSFabio Estevam 39bbe31092SHeiko Schocher #define CONFIG_CMDLINE_TAG 1 /* enable passing of ATAGs */ 40bbe31092SHeiko Schocher #define CONFIG_SETUP_MEMORY_TAGS 1 41bbe31092SHeiko Schocher #define CONFIG_INITRD_TAG 1 42bbe31092SHeiko Schocher 43bbe31092SHeiko Schocher /* 44bbe31092SHeiko Schocher * Lowlevel configuration 45bbe31092SHeiko Schocher */ 46bbe31092SHeiko Schocher #define SDRAM_ESDCFG_REGISTER_VAL(cas) \ 47bbe31092SHeiko Schocher (ESDCFG_TRC(10) | \ 48bbe31092SHeiko Schocher ESDCFG_TRCD(3) | \ 49bbe31092SHeiko Schocher ESDCFG_TCAS(cas) | \ 50bbe31092SHeiko Schocher ESDCFG_TRRD(1) | \ 51bbe31092SHeiko Schocher ESDCFG_TRAS(5) | \ 52bbe31092SHeiko Schocher ESDCFG_TWR | \ 53bbe31092SHeiko Schocher ESDCFG_TMRD(2) | \ 54bbe31092SHeiko Schocher ESDCFG_TRP(2) | \ 55bbe31092SHeiko Schocher ESDCFG_TXP(3)) 56bbe31092SHeiko Schocher 57bbe31092SHeiko Schocher #define SDRAM_ESDCTL_REGISTER_VAL \ 58bbe31092SHeiko Schocher (ESDCTL_PRCT(0) | \ 59bbe31092SHeiko Schocher ESDCTL_BL | \ 60bbe31092SHeiko Schocher ESDCTL_PWDT(0) | \ 61bbe31092SHeiko Schocher ESDCTL_SREFR(3) | \ 62bbe31092SHeiko Schocher ESDCTL_DSIZ_32 | \ 63bbe31092SHeiko Schocher ESDCTL_COL10 | \ 64bbe31092SHeiko Schocher ESDCTL_ROW13 | \ 65bbe31092SHeiko Schocher ESDCTL_SDE) 66bbe31092SHeiko Schocher 67bbe31092SHeiko Schocher #define SDRAM_ALL_VAL 0xf00 68bbe31092SHeiko Schocher 69bbe31092SHeiko Schocher #define SDRAM_MODE_REGISTER_VAL 0x33 /* BL: 8, CAS: 3 */ 70bbe31092SHeiko Schocher #define SDRAM_EXT_MODE_REGISTER_VAL 0x1000000 71bbe31092SHeiko Schocher 72bbe31092SHeiko Schocher #define MPCTL0_VAL 0x1ef15d5 73bbe31092SHeiko Schocher 74bbe31092SHeiko Schocher #define SPCTL0_VAL 0x043a1c09 75bbe31092SHeiko Schocher 76bbe31092SHeiko Schocher #define CSCR_VAL 0x33f08107 77bbe31092SHeiko Schocher 78bbe31092SHeiko Schocher #define PCDR0_VAL 0x120470c3 79bbe31092SHeiko Schocher #define PCDR1_VAL 0x03030303 80bbe31092SHeiko Schocher #define PCCR0_VAL 0xffffffff 81bbe31092SHeiko Schocher #define PCCR1_VAL 0xfffffffc 82bbe31092SHeiko Schocher 83bbe31092SHeiko Schocher #define AIPI1_PSR0_VAL 0x20040304 84bbe31092SHeiko Schocher #define AIPI1_PSR1_VAL 0xdffbfcfb 85bbe31092SHeiko Schocher #define AIPI2_PSR0_VAL 0x07ffc200 86bbe31092SHeiko Schocher #define AIPI2_PSR1_VAL 0xffffffff 87bbe31092SHeiko Schocher 88bbe31092SHeiko Schocher /* 89bbe31092SHeiko Schocher * Memory Info 90bbe31092SHeiko Schocher */ 91bbe31092SHeiko Schocher /* malloc() len */ 92bbe31092SHeiko Schocher #define CONFIG_SYS_MALLOC_LEN (0x10000 + 512 * 1024) 93bbe31092SHeiko Schocher /* memtest start address */ 94bbe31092SHeiko Schocher #define CONFIG_SYS_MEMTEST_START 0xA0000000 95bbe31092SHeiko Schocher #define CONFIG_SYS_MEMTEST_END 0xA1000000 /* 16MB RAM test */ 96bbe31092SHeiko Schocher #define CONFIG_NR_DRAM_BANKS 1 /* we have 1 bank of DRAM */ 97bbe31092SHeiko Schocher #define PHYS_SDRAM_1 0xA0000000 /* DDR Start */ 98bbe31092SHeiko Schocher #define PHYS_SDRAM_1_SIZE 0x08000000 /* DDR size 128MB */ 99bbe31092SHeiko Schocher 100bbe31092SHeiko Schocher /* 101bbe31092SHeiko Schocher * Serial Driver info 102bbe31092SHeiko Schocher */ 103bbe31092SHeiko Schocher #define CONFIG_MXC_UART 10440f6fffeSStefano Babic #define CONFIG_MXC_UART_BASE UART1_BASE 105bbe31092SHeiko Schocher #define CONFIG_CONS_INDEX 1 /* use UART0 for console */ 106bbe31092SHeiko Schocher #define CONFIG_BAUDRATE 115200 /* Default baud rate */ 107bbe31092SHeiko Schocher 108bbe31092SHeiko Schocher /* 109bbe31092SHeiko Schocher * Flash & Environment 110bbe31092SHeiko Schocher */ 111bbe31092SHeiko Schocher #define CONFIG_ENV_IS_IN_FLASH 112bbe31092SHeiko Schocher #define CONFIG_FLASH_CFI_DRIVER 113bbe31092SHeiko Schocher #define CONFIG_SYS_FLASH_CFI 114bbe31092SHeiko Schocher /* Use buffered writes (~10x faster) */ 115bbe31092SHeiko Schocher #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE 1 116bbe31092SHeiko Schocher /* Use hardware sector protection */ 117bbe31092SHeiko Schocher #define CONFIG_SYS_FLASH_PROTECTION 1 118bbe31092SHeiko Schocher #define CONFIG_SYS_MAX_FLASH_BANKS 1 /* max number of flash banks */ 119bbe31092SHeiko Schocher /* CS2 Base address */ 120bbe31092SHeiko Schocher #define PHYS_FLASH_1 0xc0000000 121bbe31092SHeiko Schocher /* Flash Base for U-Boot */ 122bbe31092SHeiko Schocher #define CONFIG_SYS_FLASH_BASE PHYS_FLASH_1 123bbe31092SHeiko Schocher #define CONFIG_SYS_MAX_FLASH_SECT (PHYS_FLASH_SIZE / \ 124bbe31092SHeiko Schocher CONFIG_SYS_FLASH_SECT_SZ) 125bbe31092SHeiko Schocher #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_FLASH_BASE 126bbe31092SHeiko Schocher #define CONFIG_SYS_MONITOR_LEN 0x40000 /* Reserve 256KiB */ 127bbe31092SHeiko Schocher #define CONFIG_ENV_SIZE CONFIG_ENV_SECT_SIZE 128bbe31092SHeiko Schocher /* Address and size of Redundant Environment Sector */ 129bbe31092SHeiko Schocher #define CONFIG_ENV_OFFSET_REDUND (CONFIG_ENV_OFFSET + CONFIG_ENV_SIZE) 130bbe31092SHeiko Schocher #define CONFIG_ENV_SIZE_REDUND CONFIG_ENV_SIZE 131bbe31092SHeiko Schocher 132bbe31092SHeiko Schocher /* 133bbe31092SHeiko Schocher * Ethernet 134bbe31092SHeiko Schocher */ 135bbe31092SHeiko Schocher #define CONFIG_FEC_MXC 136bbe31092SHeiko Schocher #define CONFIG_FEC_MXC_PHYADDR 0x1f 137bbe31092SHeiko Schocher #define CONFIG_MII 138bbe31092SHeiko Schocher 139bbe31092SHeiko Schocher /* 140bbe31092SHeiko Schocher * MTD 141bbe31092SHeiko Schocher */ 142bbe31092SHeiko Schocher #define CONFIG_FLASH_CFI_MTD 143bbe31092SHeiko Schocher #define CONFIG_MTD_DEVICE 144bbe31092SHeiko Schocher 145bbe31092SHeiko Schocher /* 146bbe31092SHeiko Schocher * NAND 147bbe31092SHeiko Schocher */ 148bbe31092SHeiko Schocher #define CONFIG_NAND_MXC 149bbe31092SHeiko Schocher #define CONFIG_MXC_NAND_REGS_BASE 0xd8000000 150bbe31092SHeiko Schocher #define CONFIG_SYS_MAX_NAND_DEVICE 1 151bbe31092SHeiko Schocher #define CONFIG_SYS_NAND_BASE 0xd8000000 152bbe31092SHeiko Schocher #define CONFIG_JFFS2_NAND 153bbe31092SHeiko Schocher #define CONFIG_MXC_NAND_HWECC 154bbe31092SHeiko Schocher 155bbe31092SHeiko Schocher /* 156bbe31092SHeiko Schocher * SD/MMC 157bbe31092SHeiko Schocher */ 158bbe31092SHeiko Schocher #define CONFIG_MMC 159bbe31092SHeiko Schocher #define CONFIG_GENERIC_MMC 160bbe31092SHeiko Schocher #define CONFIG_MXC_MMC 161bbe31092SHeiko Schocher #define CONFIG_DOS_PARTITION 162bbe31092SHeiko Schocher 163bbe31092SHeiko Schocher /* 164953884c3Strem * GPIO 165953884c3Strem */ 166953884c3Strem #define CONFIG_MXC_GPIO 167953884c3Strem 168953884c3Strem /* 169bbe31092SHeiko Schocher * MTD partitions 170bbe31092SHeiko Schocher */ 171bbe31092SHeiko Schocher #define CONFIG_CMD_MTDPARTS 172bbe31092SHeiko Schocher 173bbe31092SHeiko Schocher /* 174bbe31092SHeiko Schocher * U-Boot general configuration 175bbe31092SHeiko Schocher */ 176bbe31092SHeiko Schocher #define CONFIG_SYS_PROMPT "=> " /* Monitor Command Prompt */ 177bbe31092SHeiko Schocher #define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buffer Size */ 178bbe31092SHeiko Schocher /* Print buffer sz */ 179bbe31092SHeiko Schocher #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + \ 180bbe31092SHeiko Schocher sizeof(CONFIG_SYS_PROMPT) + 16) 181bbe31092SHeiko Schocher #define CONFIG_SYS_MAXARGS 16 /* max number of command args */ 182bbe31092SHeiko Schocher /* Boot Argument Buffer Size */ 183bbe31092SHeiko Schocher #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE 184bbe31092SHeiko Schocher #define CONFIG_CMDLINE_EDITING 185bbe31092SHeiko Schocher #define CONFIG_SYS_LONGHELP 186bbe31092SHeiko Schocher 187bbe31092SHeiko Schocher /* 188bbe31092SHeiko Schocher * U-Boot commands 189bbe31092SHeiko Schocher */ 190bbe31092SHeiko Schocher #include <config_cmd_default.h> 191bbe31092SHeiko Schocher #define CONFIG_CMD_ASKENV 192c3330e9dSHeiko Schocher #define CONFIG_CMD_CACHE 193bbe31092SHeiko Schocher #define CONFIG_CMD_DHCP 194bbe31092SHeiko Schocher #define CONFIG_CMD_DIAG 195bbe31092SHeiko Schocher #define CONFIG_CMD_FAT 196bbe31092SHeiko Schocher #define CONFIG_CMD_JFFS2 197bbe31092SHeiko Schocher #define CONFIG_CMD_MII 198bbe31092SHeiko Schocher #define CONFIG_CMD_MMC 199bbe31092SHeiko Schocher #define CONFIG_CMD_NAND 200bbe31092SHeiko Schocher #define CONFIG_CMD_PING 201bbe31092SHeiko Schocher 202bbe31092SHeiko Schocher #define CONFIG_BOOTDELAY 5 203bbe31092SHeiko Schocher 204bbe31092SHeiko Schocher #define CONFIG_LOADADDR 0xa0800000 /* loadaddr env var */ 205bbe31092SHeiko Schocher #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR 206bbe31092SHeiko Schocher 207bbe31092SHeiko Schocher #define CONFIG_EXTRA_ENV_SETTINGS \ 208bbe31092SHeiko Schocher "netdev=eth0\0" \ 209bbe31092SHeiko Schocher "nfsargs=setenv bootargs root=/dev/nfs rw " \ 210bbe31092SHeiko Schocher "nfsroot=${serverip}:${rootpath}\0" \ 211bbe31092SHeiko Schocher "ramargs=setenv bootargs root=/dev/ram rw\0" \ 212bbe31092SHeiko Schocher "addip=setenv bootargs ${bootargs} " \ 213bbe31092SHeiko Schocher "ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}" \ 214bbe31092SHeiko Schocher ":${hostname}:${netdev}:off panic=1\0" \ 215bbe31092SHeiko Schocher "addtty=setenv bootargs ${bootargs}" \ 216bbe31092SHeiko Schocher " console=ttymxc0,${baudrate}\0" \ 217bbe31092SHeiko Schocher "addmtd=setenv bootargs ${bootargs} ${mtdparts}\0" \ 218bbe31092SHeiko Schocher "addmisc=setenv bootargs ${bootargs}\0" \ 219*93ea89f0SMarek Vasut "u-boot=" __stringify(CONFIG_HOSTNAME) "/u-boot.bin\0" \ 220bbe31092SHeiko Schocher "kernel_addr_r=a0800000\0" \ 221*93ea89f0SMarek Vasut "bootfile=" __stringify(CONFIG_HOSTNAME) "/uImage\0" \ 222bbe31092SHeiko Schocher "rootpath=/opt/eldk-4.2-arm/arm\0" \ 223bbe31092SHeiko Schocher "net_nfs=tftp ${kernel_addr_r} ${bootfile};" \ 224bbe31092SHeiko Schocher "run nfsargs addip addtty addmtd addmisc;" \ 225bbe31092SHeiko Schocher "bootm\0" \ 226bbe31092SHeiko Schocher "bootcmd=run net_nfs\0" \ 227bbe31092SHeiko Schocher "load=tftp ${loadaddr} ${u-boot}\0" \ 228*93ea89f0SMarek Vasut "update=protect off " __stringify(CONFIG_SYS_MONITOR_BASE) \ 229*93ea89f0SMarek Vasut " +${filesize};era " __stringify(CONFIG_SYS_MONITOR_BASE)\ 230bbe31092SHeiko Schocher " +${filesize};cp.b ${fileaddr} " \ 231*93ea89f0SMarek Vasut __stringify(CONFIG_SYS_MONITOR_BASE) " ${filesize}\0" \ 232bbe31092SHeiko Schocher "upd=run load update\0" \ 233bbe31092SHeiko Schocher "mtdids=" MTDIDS_DEFAULT "\0" \ 234bbe31092SHeiko Schocher "mtdparts=" MTDPARTS_DEFAULT "\0" \ 235bbe31092SHeiko Schocher 236a784c01aSHeiko Schocher /* additions for new relocation code, must be added to all boards */ 237ab86f72cSHeiko Schocher #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM_1 238ab86f72cSHeiko Schocher #define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_SDRAM_BASE + 0x1000 - /* Fix this */ \ 23925ddd1fbSWolfgang Denk GENERATED_GBL_DATA_SIZE) 240bbe31092SHeiko Schocher #endif /* __IMX27LITE_COMMON_CONFIG_H */ 241