blob: 20fbbecdfbd05231a68314ccf0d6339a01d86d93 [file] [log] [blame]
Enric Balletbo i Serra8a3f6bb2010-10-14 16:54:59 -04001/*
Enric Balletbò i Serradc7a9e62012-03-05 11:32:16 +00002 * Common configuration settings for IGEP technology based boards
3 *
4 * (C) Copyright 2012
Enric Balletbo i Serra8a3f6bb2010-10-14 16:54:59 -04005 * ISEE 2007 SL, <www.iseebcn.com>
6 *
Wolfgang Denk3765b3e2013-10-07 13:07:26 +02007 * SPDX-License-Identifier: GPL-2.0+
Enric Balletbo i Serra8a3f6bb2010-10-14 16:54:59 -04008 */
9
Enric Balletbò i Serradc7a9e62012-03-05 11:32:16 +000010#ifndef __IGEP00X0_H
11#define __IGEP00X0_H
12
Enric Balletbò i Serrae37e9542013-12-06 21:30:24 +010013#ifdef CONFIG_BOOT_NAND
14#define CONFIG_NAND
15#endif
Enric Balletbo i Serra8a3f6bb2010-10-14 16:54:59 -040016
Enric Balletbò i Serrae37e9542013-12-06 21:30:24 +010017#define CONFIG_NR_DRAM_BANKS 2
Enric Balletbo i Serra8a3f6bb2010-10-14 16:54:59 -040018
Enric Balletbò i Serrae37e9542013-12-06 21:30:24 +010019#include <configs/ti_omap3_common.h>
Enric Balletbo i Serraaa127df2013-02-07 00:40:05 +000020#include <asm/mach-types.h>
Enric Balletbo i Serra8a3f6bb2010-10-14 16:54:59 -040021
22/*
23 * Display CPU and Board information
24 */
25#define CONFIG_DISPLAY_CPUINFO 1
26#define CONFIG_DISPLAY_BOARDINFO 1
27
Enric Balletbo i Serra8a3f6bb2010-10-14 16:54:59 -040028#define CONFIG_MISC_INIT_R
29
Enric Balletbo i Serra8a3f6bb2010-10-14 16:54:59 -040030#define CONFIG_REVISION_TAG 1
31
Javier Martinez Canillas372d7fa2013-08-11 18:20:00 +020032#define CONFIG_SUPPORT_RAW_INITRD
Grant Likely2fa8ca92011-03-28 09:59:07 +000033
Javier Martinez Canillas9d4f5422012-12-27 03:36:01 +000034/* define to enable boot progress via leds */
Enric Balletbo i Serrad9aacf42013-02-07 00:40:06 +000035#if (CONFIG_MACH_TYPE == MACH_TYPE_IGEP0020) || \
36 (CONFIG_MACH_TYPE == MACH_TYPE_IGEP0030)
Javier Martinez Canillas9d4f5422012-12-27 03:36:01 +000037#define CONFIG_SHOW_BOOT_PROGRESS
Enric Balletbo i Serrad9aacf42013-02-07 00:40:06 +000038#endif
Javier Martinez Canillas9d4f5422012-12-27 03:36:01 +000039
Enric Balletbo i Serra8a3f6bb2010-10-14 16:54:59 -040040/* USB */
41#define CONFIG_MUSB_UDC 1
42#define CONFIG_USB_OMAP3 1
43#define CONFIG_TWL4030_USB 1
44
45/* USB device configuration */
46#define CONFIG_USB_DEVICE 1
47#define CONFIG_USB_TTY 1
48#define CONFIG_SYS_CONSOLE_IS_IN_ENV 1
49
50/* Change these to suit your needs */
51#define CONFIG_USBD_VENDORID 0x0451
52#define CONFIG_USBD_PRODUCTID 0x5678
53#define CONFIG_USBD_MANUFACTURER "Texas Instruments"
54#define CONFIG_USBD_PRODUCT_NAME "IGEP"
55
Enric Balletbo i Serra8a3f6bb2010-10-14 16:54:59 -040056#define CONFIG_CMD_CACHE
Javier Martinez Canillasca511cf2012-07-28 01:19:32 +000057#ifdef CONFIG_BOOT_ONENAND
Enric Balletbo i Serra8a3f6bb2010-10-14 16:54:59 -040058#define CONFIG_CMD_ONENAND /* ONENAND support */
Javier Martinez Canillasca511cf2012-07-28 01:19:32 +000059#endif
Enric Balletbo i Serrad9aacf42013-02-07 00:40:06 +000060#if (CONFIG_MACH_TYPE == MACH_TYPE_IGEP0020) || \
61 (CONFIG_MACH_TYPE == MACH_TYPE_IGEP0032)
Enric Balletbo i Serra8a3f6bb2010-10-14 16:54:59 -040062#define CONFIG_CMD_NET /* bootp, tftpboot, rarpboot */
Javier Martinez Canillas77eea282012-12-27 01:35:56 +000063#endif
Enric Balletbo i Serra8a3f6bb2010-10-14 16:54:59 -040064#define CONFIG_CMD_DHCP
65#define CONFIG_CMD_PING
66#define CONFIG_CMD_NFS /* NFS support */
Enric Balletbo i Serra8a3f6bb2010-10-14 16:54:59 -040067
Enric Balletbò i Serrae37e9542013-12-06 21:30:24 +010068/*#undef CONFIG_ENV_IS_NOWHERE*/
Enric Balletbo i Serra8a3f6bb2010-10-14 16:54:59 -040069
70#define CONFIG_EXTRA_ENV_SETTINGS \
Enric Balletbo i Serra304a46c2011-04-19 09:16:36 -040071 "usbtty=cdc_acm\0" \
72 "loadaddr=0x82000000\0" \
Javier Martinez Canillasa2fa28b2013-08-07 17:53:19 +020073 "dtbaddr=0x81600000\0" \
74 "bootdir=/boot\0" \
75 "bootfile=zImage\0" \
Enric Balletbo i Serra304a46c2011-04-19 09:16:36 -040076 "usbtty=cdc_acm\0" \
Javier Martinez Canillase5e73c12012-06-29 02:45:40 +000077 "console=ttyO2,115200n8\0" \
Enric Balletbo i Serraf1e445c2012-04-25 02:34:31 +000078 "mpurate=auto\0" \
Enric Balletbo i Serra304a46c2011-04-19 09:16:36 -040079 "vram=12M\0" \
80 "dvimode=1024x768MR-16@60\0" \
81 "defaultdisplay=dvi\0" \
82 "mmcdev=0\0" \
83 "mmcroot=/dev/mmcblk0p2 rw\0" \
Javier Martinez Canillasb4ebeb82012-06-29 02:45:41 +000084 "mmcrootfstype=ext4 rootwait\0" \
Enric Balletbo i Serra304a46c2011-04-19 09:16:36 -040085 "nandroot=/dev/mtdblock4 rw\0" \
86 "nandrootfstype=jffs2\0" \
87 "mmcargs=setenv bootargs console=${console} " \
88 "mpurate=${mpurate} " \
89 "vram=${vram} " \
90 "omapfb.mode=dvi:${dvimode} " \
91 "omapfb.debug=y " \
92 "omapdss.def_disp=${defaultdisplay} " \
93 "root=${mmcroot} " \
94 "rootfstype=${mmcrootfstype}\0" \
95 "nandargs=setenv bootargs console=${console} " \
96 "mpurate=${mpurate} " \
97 "vram=${vram} " \
98 "omapfb.mode=dvi:${dvimode} " \
99 "omapfb.debug=y " \
100 "omapdss.def_disp=${defaultdisplay} " \
101 "root=${nandroot} " \
102 "rootfstype=${nandrootfstype}\0" \
Enric Balletbo i Serra2be6bed2013-08-07 17:53:18 +0200103 "loadbootenv=load mmc ${mmcdev} ${loadaddr} uEnv.txt\0" \
Enric Balletbo i Serra1b8ec012012-04-25 02:33:50 +0000104 "importbootenv=echo Importing environment from mmc ...; " \
105 "env import -t $loadaddr $filesize\0" \
Javier Martinez Canillasa2fa28b2013-08-07 17:53:19 +0200106 "loadzimage=load mmc ${mmcdev}:2 ${loadaddr} ${bootdir}/${bootfile}\0" \
107 "loadfdt=load mmc ${mmcdev}:2 ${dtbaddr} ${bootdir}/${dtbfile}\0" \
Enric Balletbo i Serra304a46c2011-04-19 09:16:36 -0400108 "mmcboot=echo Booting from mmc ...; " \
109 "run mmcargs; " \
Enric Balletbo i Serra2be6bed2013-08-07 17:53:18 +0200110 "bootz ${loadaddr}\0" \
Javier Martinez Canillasa2fa28b2013-08-07 17:53:19 +0200111 "mmcbootfdt=echo Booting with DT from mmc ...; " \
112 "bootz ${loadaddr} - ${dtbaddr}\0" \
Enric Balletbo i Serra304a46c2011-04-19 09:16:36 -0400113 "nandboot=echo Booting from onenand ...; " \
114 "run nandargs; " \
115 "onenand read ${loadaddr} 280000 400000; " \
Enric Balletbo i Serra2be6bed2013-08-07 17:53:18 +0200116 "bootz ${loadaddr}\0" \
Enric Balletbo i Serra304a46c2011-04-19 09:16:36 -0400117
118#define CONFIG_BOOTCOMMAND \
Andrew Bradford66968112012-10-01 05:06:52 +0000119 "mmc dev ${mmcdev}; if mmc rescan; then " \
Enric Balletbo i Serra1b8ec012012-04-25 02:33:50 +0000120 "echo SD/MMC found on device ${mmcdev};" \
121 "if run loadbootenv; then " \
122 "run importbootenv;" \
123 "fi;" \
124 "if test -n $uenvcmd; then " \
125 "echo Running uenvcmd ...;" \
126 "run uenvcmd;" \
127 "fi;" \
Enric Balletbo i Serra2be6bed2013-08-07 17:53:18 +0200128 "if run loadzimage; then " \
Javier Martinez Canillasa2fa28b2013-08-07 17:53:19 +0200129 "if test -n $dtbfile; then " \
130 "if run loadfdt; then " \
131 "run mmcbootfdt;" \
132 "fi;" \
133 "fi;" \
Enric Balletbo i Serra1b8ec012012-04-25 02:33:50 +0000134 "run mmcboot;" \
135 "fi;" \
136 "fi;" \
137 "run nandboot;" \
Enric Balletbo i Serra8a3f6bb2010-10-14 16:54:59 -0400138
Enric Balletbo i Serra8a3f6bb2010-10-14 16:54:59 -0400139/*
140 * FLASH and environment organization
141 */
142
Javier Martinez Canillasca511cf2012-07-28 01:19:32 +0000143#ifdef CONFIG_BOOT_ONENAND
Enric Balletbo i Serra8a3f6bb2010-10-14 16:54:59 -0400144#define PISMO1_ONEN_SIZE GPMC_SIZE_128M /* Configure the PISMO */
145
146#define CONFIG_SYS_ONENAND_BASE ONENAND_MAP
147
148#define ONENAND_ENV_OFFSET 0x260000 /* environment starts here */
149
150#define CONFIG_ENV_IS_IN_ONENAND 1
151#define CONFIG_ENV_SIZE (512 << 10) /* Total Size Environment */
152#define CONFIG_ENV_ADDR ONENAND_ENV_OFFSET
Javier Martinez Canillasca511cf2012-07-28 01:19:32 +0000153#endif
154
Enric Balletbò i Serrae37e9542013-12-06 21:30:24 +0100155#ifdef CONFIG_NAND
Javier Martinez Canillasca511cf2012-07-28 01:19:32 +0000156#define PISMO1_NAND_SIZE GPMC_SIZE_128M /* Configure the PISMO */
Javier Martinez Canillasca511cf2012-07-28 01:19:32 +0000157#define GPMC_NAND_ECC_LP_x16_LAYOUT 1
158#define CONFIG_ENV_OFFSET 0x260000 /* environment starts here */
159#define CONFIG_ENV_IS_IN_NAND 1
160#define CONFIG_ENV_SIZE (512 << 10) /* Total Size Environment */
161#define CONFIG_ENV_ADDR NAND_ENV_OFFSET
Javier Martinez Canillasca511cf2012-07-28 01:19:32 +0000162#endif
Enric Balletbo i Serra8a3f6bb2010-10-14 16:54:59 -0400163
164/*
Enric Balletbo i Serra8a3f6bb2010-10-14 16:54:59 -0400165 * SMSC911x Ethernet
166 */
167#if defined(CONFIG_CMD_NET)
Enric Balletbo i Serra8a3f6bb2010-10-14 16:54:59 -0400168#define CONFIG_SMC911X
169#define CONFIG_SMC911X_32_BIT
170#define CONFIG_SMC911X_BASE 0x2C000000
171#endif /* (CONFIG_CMD_NET) */
172
Enric Balletbò i Serrae37e9542013-12-06 21:30:24 +0100173/* OneNAND boot config */
Javier Martinez Canillasd271a612012-07-28 01:19:34 +0000174#ifdef CONFIG_BOOT_ONENAND
175#define CONFIG_SPL_ONENAND_SUPPORT
Javier Martinez Canillasd271a612012-07-28 01:19:34 +0000176#define CONFIG_SYS_ONENAND_U_BOOT_OFFS 0x80000
177#define CONFIG_SYS_ONENAND_PAGE_SIZE 2048
178#define CONFIG_SPL_ONENAND_LOAD_ADDR 0x80000
179#define CONFIG_SPL_ONENAND_LOAD_SIZE \
180 (512 * 1024 - CONFIG_SPL_ONENAND_LOAD_ADDR)
181
182#endif
183
Javier Martinez Canillasd271a612012-07-28 01:19:34 +0000184/* NAND boot config */
Enric Balletbò i Serrae37e9542013-12-06 21:30:24 +0100185#ifdef CONFIG_NAND
Javier Martinez Canillasd271a612012-07-28 01:19:34 +0000186#define CONFIG_SYS_NAND_5_ADDR_CYCLE
187#define CONFIG_SYS_NAND_PAGE_COUNT 64
188#define CONFIG_SYS_NAND_PAGE_SIZE 2048
189#define CONFIG_SYS_NAND_OOBSIZE 64
190#define CONFIG_SYS_NAND_BLOCK_SIZE (128*1024)
191#define CONFIG_SYS_NAND_BAD_BLOCK_POS 0
192#define CONFIG_SYS_NAND_ECCPOS {2, 3, 4, 5, 6, 7, 8, 9,\
193 10, 11, 12, 13}
194#define CONFIG_SYS_NAND_ECCSIZE 512
195#define CONFIG_SYS_NAND_ECCBYTES 3
pekon gupta3f719062013-11-18 19:03:01 +0530196#define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_HAM1_CODE_HW
Javier Martinez Canillasd271a612012-07-28 01:19:34 +0000197#endif
198
Enric Balletbò i Serradc7a9e62012-03-05 11:32:16 +0000199#endif /* __IGEP00X0_H */