xref: /openbmc/u-boot/include/configs/omap3_evm.h (revision 7c1058fa)
1 /*
2  * Configuration settings for the TI OMAP3 EVM board.
3  *
4  * Copyright (C) 2006-2011 Texas Instruments Incorporated - http://www.ti.com/
5  *
6  * Author :
7  *	Manikandan Pillai <mani.pillai@ti.com>
8  * Derived from Beagle Board and 3430 SDP code by
9  *	Richard Woodruff <r-woodruff2@ti.com>
10  *	Syed Mohammed Khasim <khasim@ti.com>
11  *
12  * Manikandan Pillai <mani.pillai@ti.com>
13  *
14  * SPDX-License-Identifier:	GPL-2.0+
15  */
16 
17 #ifndef __OMAP3EVM_CONFIG_H
18 #define __OMAP3EVM_CONFIG_H
19 
20 #include <asm/arch/cpu.h>
21 #include <asm/arch/omap.h>
22 
23 /* ----------------------------------------------------------------------------
24  * Supported U-boot commands
25  * ----------------------------------------------------------------------------
26  */
27 #define CONFIG_CMD_ASKENV
28 
29 #define CONFIG_CMD_EXT2
30 #define CONFIG_CMD_FAT
31 #define CONFIG_CMD_JFFS2
32 
33 #define CONFIG_CMD_I2C
34 #define CONFIG_CMD_MMC
35 #define CONFIG_CMD_NAND
36 #define CONFIG_CMD_DHCP
37 #define CONFIG_CMD_PING
38 
39 /* ----------------------------------------------------------------------------
40  * Supported U-boot features
41  * ----------------------------------------------------------------------------
42  */
43 #define CONFIG_SYS_LONGHELP
44 #define CONFIG_SYS_HUSH_PARSER
45 
46 /* Display CPU and Board information */
47 #define CONFIG_DISPLAY_CPUINFO
48 #define CONFIG_DISPLAY_BOARDINFO
49 
50 /* Allow to overwrite serial and ethaddr */
51 #define CONFIG_ENV_OVERWRITE
52 
53 /* Add auto-completion support */
54 #define CONFIG_AUTO_COMPLETE
55 
56 /* ----------------------------------------------------------------------------
57  * Supported hardware
58  * ----------------------------------------------------------------------------
59  */
60 
61 /* MMC */
62 #define CONFIG_MMC
63 #define CONFIG_GENERIC_MMC
64 #define CONFIG_OMAP_HSMMC
65 
66 /* SPL */
67 #define CONFIG_SPL_MMC_SUPPORT
68 #define CONFIG_SPL_FAT_SUPPORT
69 #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR	0x300 /* address 0x60000 */
70 #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS	0x200 /* 256 KB */
71 #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION	1
72 #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME	"u-boot.img"
73 
74 /* Partition tables */
75 #define CONFIG_EFI_PARTITION
76 #define CONFIG_DOS_PARTITION
77 
78 /* USB
79  *
80  * Enable CONFIG_USB_MUSB_HCD for Host functionalities MSC, keyboard
81  * Enable CONFIG_USB_MUSB_UDD for Device functionalities.
82  */
83 #define CONFIG_USB_OMAP3
84 #define CONFIG_USB_MUSB_HCD
85 /* #define CONFIG_USB_MUSB_UDC */
86 
87 /* NAND SPL */
88 #define CONFIG_SPL_NAND_SIMPLE
89 #define CONFIG_SPL_NAND_SUPPORT
90 #define CONFIG_SPL_NAND_BASE
91 #define CONFIG_SPL_NAND_DRIVERS
92 #define CONFIG_SPL_NAND_ECC
93 #define CONFIG_SYS_NAND_5_ADDR_CYCLE
94 #define CONFIG_SYS_NAND_PAGE_COUNT	64
95 #define CONFIG_SYS_NAND_PAGE_SIZE	2048
96 #define CONFIG_SYS_NAND_OOBSIZE		64
97 #define CONFIG_SYS_NAND_BLOCK_SIZE	(128*1024)
98 #define CONFIG_SYS_NAND_BAD_BLOCK_POS	0
99 #define CONFIG_SYS_NAND_ECCPOS		{2, 3, 4, 5, 6, 7, 8, 9,\
100 						10, 11, 12, 13}
101 #define CONFIG_SYS_NAND_ECCSIZE		512
102 #define CONFIG_SYS_NAND_ECCBYTES	3
103 #define CONFIG_NAND_OMAP_ECCSCHEME	OMAP_ECC_HAM1_CODE_HW
104 #define CONFIG_SYS_NAND_U_BOOT_START   CONFIG_SYS_TEXT_BASE
105 #define CONFIG_SYS_NAND_U_BOOT_OFFS	0x80000
106 
107 /* -----------------------------------------------------------------------------
108  * Include common board configuration
109  * -----------------------------------------------------------------------------
110  */
111 #include "omap3_evm_common.h"
112 
113 /* -----------------------------------------------------------------------------
114  * Default environment
115  * -----------------------------------------------------------------------------
116  */
117 #define CONFIG_BOOTDELAY	3
118 
119 #define CONFIG_EXTRA_ENV_SETTINGS \
120 	"loadaddr=0x82000000\0" \
121 	"usbtty=cdc_acm\0" \
122 	"mmcdev=0\0" \
123 	"console=ttyO0,115200n8\0" \
124 	"mmcargs=setenv bootargs console=${console} " \
125 		"root=/dev/mmcblk0p2 rw " \
126 		"rootfstype=ext3 rootwait\0" \
127 	"nandargs=setenv bootargs console=${console} " \
128 		"root=/dev/mtdblock4 rw " \
129 		"rootfstype=jffs2\0" \
130 	"loadbootscript=fatload mmc ${mmcdev} ${loadaddr} boot.scr\0" \
131 	"bootscript=echo Running bootscript from mmc ...; " \
132 		"source ${loadaddr}\0" \
133 	"loaduimage=fatload mmc ${mmcdev} ${loadaddr} uImage\0" \
134 	"mmcboot=echo Booting from mmc ...; " \
135 		"run mmcargs; " \
136 		"bootm ${loadaddr}\0" \
137 	"nandboot=echo Booting from nand ...; " \
138 		"run nandargs; " \
139 		"onenand read ${loadaddr} 280000 400000; " \
140 		"bootm ${loadaddr}\0" \
141 
142 #define CONFIG_BOOTCOMMAND \
143 	"mmc dev ${mmcdev}; if mmc rescan; then " \
144 		"if run loadbootscript; then " \
145 			"run bootscript; " \
146 		"else " \
147 			"if run loaduimage; then " \
148 				"run mmcboot; " \
149 			"else run nandboot; " \
150 			"fi; " \
151 		"fi; " \
152 	"else run nandboot; fi"
153 
154 #endif /* __OMAP3EVM_CONFIG_H */
155