1a96c08f5SLadislav Michl /* 2a96c08f5SLadislav Michl * Copyright (C) 2013, ISEE 2007 SL - http://www.isee.biz/ 3a96c08f5SLadislav Michl * 4a96c08f5SLadislav Michl * This program is free software; you can redistribute it and/or 5a96c08f5SLadislav Michl * modify it under the terms of the GNU General Public License as 6a96c08f5SLadislav Michl * published by the Free Software Foundation version 2. 7a96c08f5SLadislav Michl * 8a96c08f5SLadislav Michl * This program is distributed "as is" WITHOUT ANY WARRANTY of any 9a96c08f5SLadislav Michl * kind, whether express or implied; without even the implied warranty 10a96c08f5SLadislav Michl * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11a96c08f5SLadislav Michl * GNU General Public License for more details. 12a96c08f5SLadislav Michl */ 13a96c08f5SLadislav Michl 14a96c08f5SLadislav Michl #ifndef __CONFIG_IGEP003X_H 15a96c08f5SLadislav Michl #define __CONFIG_IGEP003X_H 16a96c08f5SLadislav Michl 17a96c08f5SLadislav Michl #include <configs/ti_am335x_common.h> 18a96c08f5SLadislav Michl 19a96c08f5SLadislav Michl /* Clock defines */ 20a96c08f5SLadislav Michl #define V_OSCK 24000000 /* Clock output from T2 */ 21a96c08f5SLadislav Michl #define V_SCLK (V_OSCK) 22a96c08f5SLadislav Michl 233607e0f8SLadislav Michl #define CONFIG_ENV_SIZE (96 << 10) /* 96 KiB */ 24a96c08f5SLadislav Michl 25a96c08f5SLadislav Michl #define CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG 26a96c08f5SLadislav Michl 27a96c08f5SLadislav Michl #ifndef CONFIG_SPL_BUILD 28a96c08f5SLadislav Michl #define CONFIG_EXTRA_ENV_SETTINGS \ 29a96c08f5SLadislav Michl DEFAULT_LINUX_BOOT_ENV \ 30a96c08f5SLadislav Michl "bootdir=/boot\0" \ 31a96c08f5SLadislav Michl "bootfile=zImage\0" \ 32a96c08f5SLadislav Michl "console=ttyO0,115200n8\0" \ 33a96c08f5SLadislav Michl "mmcdev=0\0" \ 34a96c08f5SLadislav Michl "mmcroot=/dev/mmcblk0p2 rw\0" \ 35a96c08f5SLadislav Michl "mmcrootfstype=ext4 rootwait\0" \ 36a96c08f5SLadislav Michl "mmcargs=setenv bootargs console=${console} " \ 37a96c08f5SLadislav Michl "${optargs} " \ 38a96c08f5SLadislav Michl "root=${mmcroot} " \ 39a96c08f5SLadislav Michl "rootfstype=${mmcrootfstype}\0" \ 40a96c08f5SLadislav Michl "bootenv=uEnv.txt\0" \ 41a96c08f5SLadislav Michl "loadbootenv=load mmc ${mmcdev} ${loadaddr} ${bootenv}\0" \ 42a96c08f5SLadislav Michl "importbootenv=echo Importing environment from mmc ...; " \ 43a96c08f5SLadislav Michl "env import -t ${loadaddr} ${filesize}\0" \ 44a96c08f5SLadislav Michl "mmcload=load mmc ${mmcdev}:2 ${loadaddr} ${bootdir}/${bootfile}; " \ 4509533e5dSPau Pajuelo "load mmc ${mmcdev}:2 ${fdtaddr} ${bootdir}/${fdtfile}\0" \ 46a96c08f5SLadislav Michl "mmcboot=mmc dev ${mmcdev}; " \ 47a96c08f5SLadislav Michl "if mmc rescan; then " \ 48a96c08f5SLadislav Michl "echo SD/MMC found on device ${mmcdev};" \ 49a96c08f5SLadislav Michl "if run loadbootenv; then " \ 50a96c08f5SLadislav Michl "echo Loaded environment from ${bootenv};" \ 51a96c08f5SLadislav Michl "run importbootenv;" \ 52a96c08f5SLadislav Michl "fi;" \ 53a96c08f5SLadislav Michl "if test -n $uenvcmd; then " \ 54a96c08f5SLadislav Michl "echo Running uenvcmd ...;" \ 55a96c08f5SLadislav Michl "run uenvcmd;" \ 56a96c08f5SLadislav Michl "fi;" \ 57a96c08f5SLadislav Michl "if run mmcload; then " \ 58a96c08f5SLadislav Michl "run mmcargs; " \ 59a96c08f5SLadislav Michl "bootz ${loadaddr} - ${fdtaddr};" \ 60a96c08f5SLadislav Michl "fi;" \ 61a96c08f5SLadislav Michl "fi;\0" \ 62a96c08f5SLadislav Michl "mtdids=" MTDIDS_DEFAULT "\0" \ 63a96c08f5SLadislav Michl "mtdparts=" MTDPARTS_DEFAULT "\0" \ 643607e0f8SLadislav Michl "nandroot=ubi0:rootfs rw ubi.mtd=1\0" \ 65a96c08f5SLadislav Michl "nandrootfstype=ubifs rootwait\0" \ 663607e0f8SLadislav Michl "nandload=ubi part UBI; " \ 673607e0f8SLadislav Michl "ubi read ${loadaddr} kernel; " \ 683607e0f8SLadislav Michl "ubi read ${fdtaddr} dtb \0" \ 69a96c08f5SLadislav Michl "nandargs=setenv bootargs console=${console} " \ 70a96c08f5SLadislav Michl "${optargs} " \ 71a96c08f5SLadislav Michl "root=${nandroot} " \ 72a96c08f5SLadislav Michl "rootfstype=${nandrootfstype} \0" \ 73a96c08f5SLadislav Michl "nandboot=echo Booting from nand ...; " \ 74a96c08f5SLadislav Michl "run nandargs; " \ 75a96c08f5SLadislav Michl "run nandload; " \ 7609533e5dSPau Pajuelo "bootz ${loadaddr} - ${fdtaddr} \0" \ 77*2e0c6f38SPau Pajuelo "netload=tftpboot ${loadaddr} ${bootfile}; " \ 78*2e0c6f38SPau Pajuelo "tftpboot ${fdtaddr} ${fdtfile} \0" \ 79*2e0c6f38SPau Pajuelo "netargs=setenv bootargs console=${console} " \ 80*2e0c6f38SPau Pajuelo "${optargs} " \ 81*2e0c6f38SPau Pajuelo "root=/dev/nfs " \ 82*2e0c6f38SPau Pajuelo "ip=${ipaddr} nfsroot=${serverip}:${rootnfs},v3,tcp \0" \ 83*2e0c6f38SPau Pajuelo "netboot=echo Booting from net ...; " \ 84*2e0c6f38SPau Pajuelo "run netargs; " \ 85*2e0c6f38SPau Pajuelo "run netload; " \ 86*2e0c6f38SPau Pajuelo "bootz ${loadaddr} - ${fdtaddr} \0" \ 8709533e5dSPau Pajuelo "findfdt="\ 8809533e5dSPau Pajuelo "if test ${board_name} = igep0033; then " \ 8909533e5dSPau Pajuelo "setenv fdtfile am335x-igep-base0033.dtb; fi; " \ 9009533e5dSPau Pajuelo "if test ${board_name} = igep0034; then " \ 9109533e5dSPau Pajuelo "setenv fdtfile am335x-igep-base0040.dtb; fi; " \ 9209533e5dSPau Pajuelo "if test ${board_name} = igep0034-lite; then " \ 9309533e5dSPau Pajuelo "setenv fdtfile am335x-igep-base0040-lite.dtb; fi; " \ 9409533e5dSPau Pajuelo "if test ${fdtfile} = ''; then " \ 9509533e5dSPau Pajuelo "echo WARNING: Could not determine device tree to use; fi; \0" 96a96c08f5SLadislav Michl #endif 97a96c08f5SLadislav Michl 98a96c08f5SLadislav Michl #define CONFIG_BOOTCOMMAND \ 9909533e5dSPau Pajuelo "run findfdt;" \ 100a96c08f5SLadislav Michl "run mmcboot;" \ 101*2e0c6f38SPau Pajuelo "run nandboot;" \ 102*2e0c6f38SPau Pajuelo "run netboot;" 103a96c08f5SLadislav Michl 104a96c08f5SLadislav Michl /* NS16550 Configuration */ 105a96c08f5SLadislav Michl #define CONFIG_SYS_NS16550_COM1 0x44e09000 /* UART0 */ 106a96c08f5SLadislav Michl #define CONFIG_CONS_INDEX 1 107a96c08f5SLadislav Michl 108a96c08f5SLadislav Michl /* Ethernet support */ 109a96c08f5SLadislav Michl #define CONFIG_PHY_SMSC 110a96c08f5SLadislav Michl 111a96c08f5SLadislav Michl /* NAND support */ 112a96c08f5SLadislav Michl #define CONFIG_SYS_NAND_ONFI_DETECTION 1 113a96c08f5SLadislav Michl 114a96c08f5SLadislav Michl /* SPL */ 115a96c08f5SLadislav Michl 1163607e0f8SLadislav Michl /* UBI configuration */ 1173607e0f8SLadislav Michl #define CONFIG_SPL_UBI 1 1183607e0f8SLadislav Michl #define CONFIG_SPL_UBI_MAX_VOL_LEBS 256 1193607e0f8SLadislav Michl #define CONFIG_SPL_UBI_MAX_PEB_SIZE (256*1024) 1203607e0f8SLadislav Michl #define CONFIG_SPL_UBI_MAX_PEBS 4096 1213607e0f8SLadislav Michl #define CONFIG_SPL_UBI_VOL_IDS 8 1223607e0f8SLadislav Michl #define CONFIG_SPL_UBI_LOAD_MONITOR_ID 0 1233607e0f8SLadislav Michl #define CONFIG_SPL_UBI_LOAD_KERNEL_ID 3 1243607e0f8SLadislav Michl #define CONFIG_SPL_UBI_LOAD_ARGS_ID 4 1253607e0f8SLadislav Michl #define CONFIG_SPL_UBI_PEB_OFFSET 4 1263607e0f8SLadislav Michl #define CONFIG_SPL_UBI_VID_OFFSET 512 1273607e0f8SLadislav Michl #define CONFIG_SPL_UBI_LEB_START 2048 1283607e0f8SLadislav Michl #define CONFIG_SPL_UBI_INFO_ADDR 0x88080000 1293607e0f8SLadislav Michl 1303607e0f8SLadislav Michl /* environment organization */ 1313607e0f8SLadislav Michl #define CONFIG_ENV_UBI_PART "UBI" 1323607e0f8SLadislav Michl #define CONFIG_ENV_UBI_VOLUME "config" 1333607e0f8SLadislav Michl #define CONFIG_ENV_UBI_VOLUME_REDUND "config_r" 1343607e0f8SLadislav Michl 1353607e0f8SLadislav Michl /* NAND config */ 136a96c08f5SLadislav Michl #define CONFIG_SYS_NAND_5_ADDR_CYCLE 137a96c08f5SLadislav Michl #define CONFIG_SYS_NAND_PAGE_COUNT (CONFIG_SYS_NAND_BLOCK_SIZE / \ 138a96c08f5SLadislav Michl CONFIG_SYS_NAND_PAGE_SIZE) 139a96c08f5SLadislav Michl #define CONFIG_SYS_NAND_PAGE_SIZE 2048 140a96c08f5SLadislav Michl #define CONFIG_SYS_NAND_OOBSIZE 64 141a96c08f5SLadislav Michl #define CONFIG_SYS_NAND_BLOCK_SIZE (128*1024) 142a96c08f5SLadislav Michl #define CONFIG_SYS_NAND_BAD_BLOCK_POS NAND_LARGE_BADBLOCK_POS 143a96c08f5SLadislav Michl #define CONFIG_SYS_NAND_ECCPOS { 2, 3, 4, 5, 6, 7, 8, 9, \ 144a96c08f5SLadislav Michl 10, 11, 12, 13, 14, 15, 16, 17, \ 145a96c08f5SLadislav Michl 18, 19, 20, 21, 22, 23, 24, 25, \ 146a96c08f5SLadislav Michl 26, 27, 28, 29, 30, 31, 32, 33, \ 147a96c08f5SLadislav Michl 34, 35, 36, 37, 38, 39, 40, 41, \ 148a96c08f5SLadislav Michl 42, 43, 44, 45, 46, 47, 48, 49, \ 149a96c08f5SLadislav Michl 50, 51, 52, 53, 54, 55, 56, 57, } 150a96c08f5SLadislav Michl 151a96c08f5SLadislav Michl #define CONFIG_SYS_NAND_ECCSIZE 512 152a96c08f5SLadislav Michl #define CONFIG_SYS_NAND_ECCBYTES 14 153a96c08f5SLadislav Michl #define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_BCH8_CODE_HW 154a96c08f5SLadislav Michl 155a96c08f5SLadislav Michl #endif /* ! __CONFIG_IGEP003X_H */ 156