9dbca1c6f4d62141307e87407b54867bc8661661
[oweals/u-boot.git] / include / configs / omap3_evm.h
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
28 #define CONFIG_CMD_JFFS2
29
30 #define CONFIG_CMD_NAND
31
32 /* ----------------------------------------------------------------------------
33  * Supported U-Boot features
34  * ----------------------------------------------------------------------------
35  */
36 #define CONFIG_SYS_LONGHELP
37
38 /* Display CPU and Board information */
39 #define CONFIG_DISPLAY_CPUINFO
40 #define CONFIG_DISPLAY_BOARDINFO
41
42 /* Allow to overwrite serial and ethaddr */
43 #define CONFIG_ENV_OVERWRITE
44
45 /* Add auto-completion support */
46 #define CONFIG_AUTO_COMPLETE
47
48 /* ----------------------------------------------------------------------------
49  * Supported hardware
50  * ----------------------------------------------------------------------------
51  */
52
53 /* MMC */
54 #define CONFIG_MMC
55 #define CONFIG_GENERIC_MMC
56 #define CONFIG_OMAP_HSMMC
57
58 /* SPL */
59 #define CONFIG_SPL_MMC_SUPPORT
60 #define CONFIG_SPL_FAT_SUPPORT
61 #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x300 /* address 0x60000 */
62 #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS      0x200 /* 256 KB */
63 #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION      1
64 #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img"
65
66 /* Partition tables */
67 #define CONFIG_EFI_PARTITION
68 #define CONFIG_DOS_PARTITION
69
70 /* USB
71  *
72  * Enable CONFIG_USB_MUSB_HCD for Host functionalities MSC, keyboard
73  * Enable CONFIG_USB_MUSB_UDD for Device functionalities.
74  */
75 #define CONFIG_USB_OMAP3
76 #define CONFIG_USB_MUSB_HCD
77 /* #define CONFIG_USB_MUSB_UDC */
78
79 /* NAND SPL */
80 #define CONFIG_SPL_NAND_SIMPLE
81 #define CONFIG_SPL_NAND_SUPPORT
82 #define CONFIG_SPL_NAND_BASE
83 #define CONFIG_SPL_NAND_DRIVERS
84 #define CONFIG_SPL_NAND_ECC
85 #define CONFIG_SYS_NAND_5_ADDR_CYCLE
86 #define CONFIG_SYS_NAND_PAGE_COUNT      64
87 #define CONFIG_SYS_NAND_PAGE_SIZE       2048
88 #define CONFIG_SYS_NAND_OOBSIZE         64
89 #define CONFIG_SYS_NAND_BLOCK_SIZE      (128*1024)
90 #define CONFIG_SYS_NAND_BAD_BLOCK_POS   0
91 #define CONFIG_SYS_NAND_ECCPOS          {2, 3, 4, 5, 6, 7, 8, 9,\
92                                                 10, 11, 12, 13}
93 #define CONFIG_SYS_NAND_ECCSIZE         512
94 #define CONFIG_SYS_NAND_ECCBYTES        3
95 #define CONFIG_NAND_OMAP_ECCSCHEME      OMAP_ECC_HAM1_CODE_HW
96 #define CONFIG_SYS_NAND_U_BOOT_START   CONFIG_SYS_TEXT_BASE
97 #define CONFIG_SYS_NAND_U_BOOT_OFFS     0x80000
98
99 /* -----------------------------------------------------------------------------
100  * Include common board configuration
101  * -----------------------------------------------------------------------------
102  */
103 #include "omap3_evm_common.h"
104
105 /* -----------------------------------------------------------------------------
106  * Default environment
107  * -----------------------------------------------------------------------------
108  */
109 #define CONFIG_BOOTDELAY        3
110
111 #define CONFIG_EXTRA_ENV_SETTINGS \
112         "loadaddr=0x82000000\0" \
113         "usbtty=cdc_acm\0" \
114         "mmcdev=0\0" \
115         "console=ttyO0,115200n8\0" \
116         "mmcargs=setenv bootargs console=${console} " \
117                 "root=/dev/mmcblk0p2 rw " \
118                 "rootfstype=ext3 rootwait\0" \
119         "nandargs=setenv bootargs console=${console} " \
120                 "root=/dev/mtdblock4 rw " \
121                 "rootfstype=jffs2\0" \
122         "loadbootscript=fatload mmc ${mmcdev} ${loadaddr} boot.scr\0" \
123         "bootscript=echo Running bootscript from mmc ...; " \
124                 "source ${loadaddr}\0" \
125         "loaduimage=fatload mmc ${mmcdev} ${loadaddr} uImage\0" \
126         "mmcboot=echo Booting from mmc ...; " \
127                 "run mmcargs; " \
128                 "bootm ${loadaddr}\0" \
129         "nandboot=echo Booting from nand ...; " \
130                 "run nandargs; " \
131                 "onenand read ${loadaddr} 280000 400000; " \
132                 "bootm ${loadaddr}\0" \
133
134 #define CONFIG_BOOTCOMMAND \
135         "mmc dev ${mmcdev}; if mmc rescan; then " \
136                 "if run loadbootscript; then " \
137                         "run bootscript; " \
138                 "else " \
139                         "if run loaduimage; then " \
140                                 "run mmcboot; " \
141                         "else run nandboot; " \
142                         "fi; " \
143                 "fi; " \
144         "else run nandboot; fi"
145
146 #endif /* __OMAP3EVM_CONFIG_H */