1f565be75SJavier Martinez Canillas /* 2f565be75SJavier Martinez Canillas * Common configuration settings for IGEP technology based boards 3f565be75SJavier Martinez Canillas * 4f565be75SJavier Martinez Canillas * (C) Copyright 2012 5f565be75SJavier Martinez Canillas * ISEE 2007 SL, <www.iseebcn.com> 6f565be75SJavier Martinez Canillas * 7f565be75SJavier Martinez Canillas * SPDX-License-Identifier: GPL-2.0+ 8f565be75SJavier Martinez Canillas */ 9f565be75SJavier Martinez Canillas 10f565be75SJavier Martinez Canillas #ifndef __IGEP00X0_H 11f565be75SJavier Martinez Canillas #define __IGEP00X0_H 12f565be75SJavier Martinez Canillas 13e37e954eSEnric Balletbò i Serra #ifdef CONFIG_BOOT_NAND 14e37e954eSEnric Balletbò i Serra #define CONFIG_NAND 15e37e954eSEnric Balletbò i Serra #endif 16f565be75SJavier Martinez Canillas 17e37e954eSEnric Balletbò i Serra #define CONFIG_NR_DRAM_BANKS 2 18f565be75SJavier Martinez Canillas 19e37e954eSEnric Balletbò i Serra #include <configs/ti_omap3_common.h> 20f565be75SJavier Martinez Canillas #include <asm/mach-types.h> 21f565be75SJavier Martinez Canillas 22f565be75SJavier Martinez Canillas /* 23f565be75SJavier Martinez Canillas * Display CPU and Board information 24f565be75SJavier Martinez Canillas */ 25f565be75SJavier Martinez Canillas #define CONFIG_DISPLAY_CPUINFO 1 26f565be75SJavier Martinez Canillas #define CONFIG_DISPLAY_BOARDINFO 1 27f565be75SJavier Martinez Canillas 28f565be75SJavier Martinez Canillas #define CONFIG_MISC_INIT_R 29f565be75SJavier Martinez Canillas 30f565be75SJavier Martinez Canillas #define CONFIG_REVISION_TAG 1 31f565be75SJavier Martinez Canillas 32*f3b4bc45SEnric Balletbo i Serra /* Status LED */ 33*f3b4bc45SEnric Balletbo i Serra #define CONFIG_STATUS_LED 34*f3b4bc45SEnric Balletbo i Serra #define CONFIG_BOARD_SPECIFIC_LED 35*f3b4bc45SEnric Balletbo i Serra #define CONFIG_GPIO_LED 36*f3b4bc45SEnric Balletbo i Serra #if (CONFIG_MACH_TYPE == MACH_TYPE_IGEP0020) 37*f3b4bc45SEnric Balletbo i Serra #define RED_LED_GPIO 27 38f565be75SJavier Martinez Canillas #endif 39*f3b4bc45SEnric Balletbo i Serra #if (CONFIG_MACH_TYPE == MACH_TYPE_IGEP0030) 40*f3b4bc45SEnric Balletbo i Serra #define RED_LED_GPIO 16 41*f3b4bc45SEnric Balletbo i Serra #endif 42*f3b4bc45SEnric Balletbo i Serra #define RED_LED_DEV 0 43*f3b4bc45SEnric Balletbo i Serra #define STATUS_LED_BIT RED_LED_GPIO 44*f3b4bc45SEnric Balletbo i Serra #define STATUS_LED_STATE STATUS_LED_ON 45*f3b4bc45SEnric Balletbo i Serra #define STATUS_LED_PERIOD (CONFIG_SYS_HZ / 2) 46*f3b4bc45SEnric Balletbo i Serra #define STATUS_LED_BOOT RED_LED_DEV 47f565be75SJavier Martinez Canillas 48dd1e8583SEnric Balletbo i Serra /* GPIO banks */ 49dd1e8583SEnric Balletbo i Serra #define CONFIG_OMAP3_GPIO_3 /* GPIO64 .. 95 is in GPIO bank 3 */ 50dd1e8583SEnric Balletbo i Serra #define CONFIG_OMAP3_GPIO_5 /* GPIO128..159 is in GPIO bank 5 */ 51dd1e8583SEnric Balletbo i Serra #define CONFIG_OMAP3_GPIO_6 /* GPIO160..191 is in GPIO bank 6 */ 52dd1e8583SEnric Balletbo i Serra 53f565be75SJavier Martinez Canillas /* USB */ 54f565be75SJavier Martinez Canillas #define CONFIG_MUSB_UDC 1 55f565be75SJavier Martinez Canillas #define CONFIG_USB_OMAP3 1 56f565be75SJavier Martinez Canillas #define CONFIG_TWL4030_USB 1 57f565be75SJavier Martinez Canillas 58f565be75SJavier Martinez Canillas /* USB device configuration */ 59f565be75SJavier Martinez Canillas #define CONFIG_USB_DEVICE 1 60f565be75SJavier Martinez Canillas #define CONFIG_USB_TTY 1 61f565be75SJavier Martinez Canillas #define CONFIG_SYS_CONSOLE_IS_IN_ENV 1 62f565be75SJavier Martinez Canillas 63f565be75SJavier Martinez Canillas /* Change these to suit your needs */ 64f565be75SJavier Martinez Canillas #define CONFIG_USBD_VENDORID 0x0451 65f565be75SJavier Martinez Canillas #define CONFIG_USBD_PRODUCTID 0x5678 66f565be75SJavier Martinez Canillas #define CONFIG_USBD_MANUFACTURER "Texas Instruments" 67f565be75SJavier Martinez Canillas #define CONFIG_USBD_PRODUCT_NAME "IGEP" 68f565be75SJavier Martinez Canillas 69f565be75SJavier Martinez Canillas #define CONFIG_CMD_CACHE 70f565be75SJavier Martinez Canillas #ifdef CONFIG_BOOT_ONENAND 71f565be75SJavier Martinez Canillas #define CONFIG_CMD_ONENAND /* ONENAND support */ 72f565be75SJavier Martinez Canillas #endif 73f565be75SJavier Martinez Canillas #if (CONFIG_MACH_TYPE == MACH_TYPE_IGEP0020) || \ 74f565be75SJavier Martinez Canillas (CONFIG_MACH_TYPE == MACH_TYPE_IGEP0032) 75f565be75SJavier Martinez Canillas #define CONFIG_CMD_NET /* bootp, tftpboot, rarpboot */ 76f565be75SJavier Martinez Canillas #endif 77f565be75SJavier Martinez Canillas #define CONFIG_CMD_DHCP 78f565be75SJavier Martinez Canillas #define CONFIG_CMD_PING 79f565be75SJavier Martinez Canillas #define CONFIG_CMD_NFS /* NFS support */ 80f565be75SJavier Martinez Canillas 81e37e954eSEnric Balletbò i Serra /*#undef CONFIG_ENV_IS_NOWHERE*/ 82f565be75SJavier Martinez Canillas 83f565be75SJavier Martinez Canillas #define CONFIG_EXTRA_ENV_SETTINGS \ 84f565be75SJavier Martinez Canillas "usbtty=cdc_acm\0" \ 85f565be75SJavier Martinez Canillas "loadaddr=0x82000000\0" \ 86f565be75SJavier Martinez Canillas "dtbaddr=0x81600000\0" \ 87f565be75SJavier Martinez Canillas "bootdir=/boot\0" \ 88f565be75SJavier Martinez Canillas "bootfile=zImage\0" \ 89f565be75SJavier Martinez Canillas "usbtty=cdc_acm\0" \ 90f565be75SJavier Martinez Canillas "console=ttyO2,115200n8\0" \ 91f565be75SJavier Martinez Canillas "mpurate=auto\0" \ 92f565be75SJavier Martinez Canillas "vram=12M\0" \ 93f565be75SJavier Martinez Canillas "dvimode=1024x768MR-16@60\0" \ 94f565be75SJavier Martinez Canillas "defaultdisplay=dvi\0" \ 95f565be75SJavier Martinez Canillas "mmcdev=0\0" \ 96f565be75SJavier Martinez Canillas "mmcroot=/dev/mmcblk0p2 rw\0" \ 97f565be75SJavier Martinez Canillas "mmcrootfstype=ext4 rootwait\0" \ 98f565be75SJavier Martinez Canillas "nandroot=/dev/mtdblock4 rw\0" \ 99f565be75SJavier Martinez Canillas "nandrootfstype=jffs2\0" \ 100f565be75SJavier Martinez Canillas "mmcargs=setenv bootargs console=${console} " \ 101f565be75SJavier Martinez Canillas "mpurate=${mpurate} " \ 102f565be75SJavier Martinez Canillas "vram=${vram} " \ 103f565be75SJavier Martinez Canillas "omapfb.mode=dvi:${dvimode} " \ 104f565be75SJavier Martinez Canillas "omapfb.debug=y " \ 105f565be75SJavier Martinez Canillas "omapdss.def_disp=${defaultdisplay} " \ 106f565be75SJavier Martinez Canillas "root=${mmcroot} " \ 107f565be75SJavier Martinez Canillas "rootfstype=${mmcrootfstype}\0" \ 108f565be75SJavier Martinez Canillas "nandargs=setenv bootargs console=${console} " \ 109f565be75SJavier Martinez Canillas "mpurate=${mpurate} " \ 110f565be75SJavier Martinez Canillas "vram=${vram} " \ 111f565be75SJavier Martinez Canillas "omapfb.mode=dvi:${dvimode} " \ 112f565be75SJavier Martinez Canillas "omapfb.debug=y " \ 113f565be75SJavier Martinez Canillas "omapdss.def_disp=${defaultdisplay} " \ 114f565be75SJavier Martinez Canillas "root=${nandroot} " \ 115f565be75SJavier Martinez Canillas "rootfstype=${nandrootfstype}\0" \ 116f565be75SJavier Martinez Canillas "loadbootenv=load mmc ${mmcdev} ${loadaddr} uEnv.txt\0" \ 117f565be75SJavier Martinez Canillas "importbootenv=echo Importing environment from mmc ...; " \ 118f565be75SJavier Martinez Canillas "env import -t $loadaddr $filesize\0" \ 119f565be75SJavier Martinez Canillas "loadzimage=load mmc ${mmcdev}:2 ${loadaddr} ${bootdir}/${bootfile}\0" \ 120f565be75SJavier Martinez Canillas "loadfdt=load mmc ${mmcdev}:2 ${dtbaddr} ${bootdir}/${dtbfile}\0" \ 121f565be75SJavier Martinez Canillas "mmcboot=echo Booting from mmc ...; " \ 122f565be75SJavier Martinez Canillas "run mmcargs; " \ 123f565be75SJavier Martinez Canillas "bootz ${loadaddr}\0" \ 124f565be75SJavier Martinez Canillas "mmcbootfdt=echo Booting with DT from mmc ...; " \ 125f565be75SJavier Martinez Canillas "bootz ${loadaddr} - ${dtbaddr}\0" \ 126f565be75SJavier Martinez Canillas "nandboot=echo Booting from onenand ...; " \ 127f565be75SJavier Martinez Canillas "run nandargs; " \ 128f565be75SJavier Martinez Canillas "onenand read ${loadaddr} 280000 400000; " \ 129f565be75SJavier Martinez Canillas "bootz ${loadaddr}\0" \ 130f565be75SJavier Martinez Canillas 131f565be75SJavier Martinez Canillas #define CONFIG_BOOTCOMMAND \ 132f565be75SJavier Martinez Canillas "mmc dev ${mmcdev}; if mmc rescan; then " \ 133f565be75SJavier Martinez Canillas "echo SD/MMC found on device ${mmcdev};" \ 134f565be75SJavier Martinez Canillas "if run loadbootenv; then " \ 135f565be75SJavier Martinez Canillas "run importbootenv;" \ 136f565be75SJavier Martinez Canillas "fi;" \ 137f565be75SJavier Martinez Canillas "if test -n $uenvcmd; then " \ 138f565be75SJavier Martinez Canillas "echo Running uenvcmd ...;" \ 139f565be75SJavier Martinez Canillas "run uenvcmd;" \ 140f565be75SJavier Martinez Canillas "fi;" \ 141f565be75SJavier Martinez Canillas "if run loadzimage; then " \ 142f565be75SJavier Martinez Canillas "if test -n $dtbfile; then " \ 143f565be75SJavier Martinez Canillas "if run loadfdt; then " \ 144f565be75SJavier Martinez Canillas "run mmcbootfdt;" \ 145f565be75SJavier Martinez Canillas "fi;" \ 146f565be75SJavier Martinez Canillas "fi;" \ 147f565be75SJavier Martinez Canillas "run mmcboot;" \ 148f565be75SJavier Martinez Canillas "fi;" \ 149f565be75SJavier Martinez Canillas "fi;" \ 150f565be75SJavier Martinez Canillas "run nandboot;" \ 151f565be75SJavier Martinez Canillas 152f565be75SJavier Martinez Canillas /* 153f565be75SJavier Martinez Canillas * FLASH and environment organization 154f565be75SJavier Martinez Canillas */ 155f565be75SJavier Martinez Canillas 156f565be75SJavier Martinez Canillas #ifdef CONFIG_BOOT_ONENAND 157f565be75SJavier Martinez Canillas #define CONFIG_SYS_ONENAND_BASE ONENAND_MAP 158f565be75SJavier Martinez Canillas 159f565be75SJavier Martinez Canillas #define ONENAND_ENV_OFFSET 0x260000 /* environment starts here */ 160f565be75SJavier Martinez Canillas 161f565be75SJavier Martinez Canillas #define CONFIG_ENV_IS_IN_ONENAND 1 162f565be75SJavier Martinez Canillas #define CONFIG_ENV_SIZE (512 << 10) /* Total Size Environment */ 163f565be75SJavier Martinez Canillas #define CONFIG_ENV_ADDR ONENAND_ENV_OFFSET 164f565be75SJavier Martinez Canillas #endif 165f565be75SJavier Martinez Canillas 166e37e954eSEnric Balletbò i Serra #ifdef CONFIG_NAND 167f565be75SJavier Martinez Canillas #define CONFIG_ENV_OFFSET 0x260000 /* environment starts here */ 168f565be75SJavier Martinez Canillas #define CONFIG_ENV_IS_IN_NAND 1 169f565be75SJavier Martinez Canillas #define CONFIG_ENV_SIZE (512 << 10) /* Total Size Environment */ 170f565be75SJavier Martinez Canillas #define CONFIG_ENV_ADDR NAND_ENV_OFFSET 171f565be75SJavier Martinez Canillas #endif 172f565be75SJavier Martinez Canillas 173f565be75SJavier Martinez Canillas /* 174f565be75SJavier Martinez Canillas * SMSC911x Ethernet 175f565be75SJavier Martinez Canillas */ 176f565be75SJavier Martinez Canillas #if defined(CONFIG_CMD_NET) 177f565be75SJavier Martinez Canillas #define CONFIG_SMC911X 178f565be75SJavier Martinez Canillas #define CONFIG_SMC911X_32_BIT 179f565be75SJavier Martinez Canillas #define CONFIG_SMC911X_BASE 0x2C000000 180f565be75SJavier Martinez Canillas #endif /* (CONFIG_CMD_NET) */ 181f565be75SJavier Martinez Canillas 182e37e954eSEnric Balletbò i Serra /* OneNAND boot config */ 183f565be75SJavier Martinez Canillas #ifdef CONFIG_BOOT_ONENAND 184f565be75SJavier Martinez Canillas #define CONFIG_SPL_ONENAND_SUPPORT 185f565be75SJavier Martinez Canillas #define CONFIG_SYS_ONENAND_U_BOOT_OFFS 0x80000 186f565be75SJavier Martinez Canillas #define CONFIG_SYS_ONENAND_PAGE_SIZE 2048 187f565be75SJavier Martinez Canillas #define CONFIG_SPL_ONENAND_LOAD_ADDR 0x80000 188f565be75SJavier Martinez Canillas #define CONFIG_SPL_ONENAND_LOAD_SIZE \ 189f565be75SJavier Martinez Canillas (512 * 1024 - CONFIG_SPL_ONENAND_LOAD_ADDR) 190f565be75SJavier Martinez Canillas 191f565be75SJavier Martinez Canillas #endif 192f565be75SJavier Martinez Canillas 193f565be75SJavier Martinez Canillas /* NAND boot config */ 194e37e954eSEnric Balletbò i Serra #ifdef CONFIG_NAND 195b80a6603Spekon gupta #define CONFIG_SYS_NAND_BUSWIDTH_16BIT 16 196f565be75SJavier Martinez Canillas #define CONFIG_SYS_NAND_5_ADDR_CYCLE 197f565be75SJavier Martinez Canillas #define CONFIG_SYS_NAND_PAGE_COUNT 64 198f565be75SJavier Martinez Canillas #define CONFIG_SYS_NAND_PAGE_SIZE 2048 199f565be75SJavier Martinez Canillas #define CONFIG_SYS_NAND_OOBSIZE 64 200f565be75SJavier Martinez Canillas #define CONFIG_SYS_NAND_BLOCK_SIZE (128*1024) 201f565be75SJavier Martinez Canillas #define CONFIG_SYS_NAND_BAD_BLOCK_POS 0 202f565be75SJavier Martinez Canillas #define CONFIG_SYS_NAND_ECCPOS {2, 3, 4, 5, 6, 7, 8, 9,\ 203f565be75SJavier Martinez Canillas 10, 11, 12, 13} 204f565be75SJavier Martinez Canillas #define CONFIG_SYS_NAND_ECCSIZE 512 205f565be75SJavier Martinez Canillas #define CONFIG_SYS_NAND_ECCBYTES 3 2063f719069Spekon gupta #define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_HAM1_CODE_HW 207434f2cfcSpekon gupta #define CONFIG_SYS_NAND_U_BOOT_OFFS 0x80000 208434f2cfcSpekon gupta /* NAND: SPL falcon mode configs */ 209434f2cfcSpekon gupta #ifdef CONFIG_SPL_OS_BOOT 210434f2cfcSpekon gupta #define CONFIG_CMD_SPL_NAND_OFS 0x240000 211434f2cfcSpekon gupta #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS 0x280000 212434f2cfcSpekon gupta #define CONFIG_CMD_SPL_WRITE_SIZE 0x2000 213434f2cfcSpekon gupta #endif 214f565be75SJavier Martinez Canillas #endif 215f565be75SJavier Martinez Canillas 216f565be75SJavier Martinez Canillas #endif /* __IGEP00X0_H */ 217