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