]>
Commit | Line | Data |
---|---|---|
16dc702f A |
1 | /* |
2 | * (C) Copyright 2010 | |
3 | * Texas Instruments Incorporated. | |
4 | * Aneesh V <aneesh@ti.com> | |
5 | * Steve Sakoman <steve@sakoman.com> | |
6 | * | |
7 | * TI OMAP4 common configuration settings | |
8 | * | |
1a459660 | 9 | * SPDX-License-Identifier: GPL-2.0+ |
16dc702f A |
10 | */ |
11 | ||
6c0a032a EBS |
12 | #ifndef __CONFIG_TI_OMAP4_COMMON_H |
13 | #define __CONFIG_TI_OMAP4_COMMON_H | |
16dc702f A |
14 | |
15 | /* | |
16 | * High Level Configuration Options | |
17 | */ | |
16dc702f | 18 | #define CONFIG_OMAP4430 1 /* which is in a 4430 */ |
1d7b289c LV |
19 | #define CONFIG_MISC_INIT_R |
20 | #define CONFIG_ARCH_CPU_INIT | |
21 | #define CONFIG_DISPLAY_CPUINFO 1 | |
22 | #define CONFIG_DISPLAY_BOARDINFO 1 | |
23 | ||
24 | #define CONFIG_SYS_THUMB_BUILD | |
25 | ||
26 | #ifndef CONFIG_SYS_L2CACHE_OFF | |
27 | #define CONFIG_SYS_L2_PL310 1 | |
28 | #define CONFIG_SYS_PL310_BASE 0x48242000 | |
29 | #endif | |
30 | #define CONFIG_SYS_CACHELINE_SIZE 32 | |
16dc702f A |
31 | |
32 | /* Get CPU defs */ | |
33 | #include <asm/arch/cpu.h> | |
508a58fa | 34 | #include <asm/arch/omap.h> |
16dc702f | 35 | |
1d7b289c LV |
36 | /* Use General purpose timer 1 */ |
37 | #define CONFIG_SYS_TIMERBASE GPT2_BASE | |
16dc702f A |
38 | |
39 | /* | |
16dc702f | 40 | * Total Size Environment - 128k |
16dc702f A |
41 | */ |
42 | #define CONFIG_ENV_SIZE (128 << 10) | |
16dc702f A |
43 | |
44 | /* | |
1d7b289c LV |
45 | * For the DDR timing information we can either dynamically determine |
46 | * the timings to use or use pre-determined timings (based on using the | |
47 | * dynamic method. Default to the static timing infomation. | |
16dc702f | 48 | */ |
1d7b289c LV |
49 | #define CONFIG_SYS_EMIF_PRECALCULATED_TIMING_REGS |
50 | #ifndef CONFIG_SYS_EMIF_PRECALCULATED_TIMING_REGS | |
51 | #define CONFIG_SYS_AUTOMATIC_SDRAM_DETECTION | |
52 | #define CONFIG_SYS_DEFAULT_LPDDR2_TIMINGS | |
53 | #endif | |
54 | ||
55 | #include <configs/ti_armv7_common.h> | |
16dc702f A |
56 | |
57 | /* | |
1d7b289c | 58 | * Hardware drivers |
16dc702f | 59 | */ |
16dc702f A |
60 | #define CONFIG_SYS_NS16550 |
61 | #define CONFIG_SYS_NS16550_SERIAL | |
62 | #define CONFIG_SYS_NS16550_REG_SIZE (-4) | |
1d7b289c | 63 | #define CONFIG_SYS_NS16550_CLK 48000000 |
16dc702f A |
64 | #define CONFIG_CONS_INDEX 3 |
65 | #define CONFIG_SYS_NS16550_COM3 UART3_BASE | |
66 | ||
16dc702f | 67 | /* TWL6030 */ |
14fa2dd0 | 68 | #ifndef CONFIG_SPL_BUILD |
16dc702f | 69 | #define CONFIG_TWL6030_POWER 1 |
14fa2dd0 | 70 | #endif |
16dc702f | 71 | |
16dc702f A |
72 | /* USB */ |
73 | #define CONFIG_MUSB_UDC 1 | |
74 | #define CONFIG_USB_OMAP3 1 | |
75 | ||
76 | /* USB device configuration */ | |
77 | #define CONFIG_USB_DEVICE 1 | |
78 | #define CONFIG_USB_TTY 1 | |
79 | #define CONFIG_SYS_CONSOLE_IS_IN_ENV 1 | |
80 | ||
1d7b289c | 81 | /* Per-Soc commands */ |
16dc702f A |
82 | #undef CONFIG_CMD_NET |
83 | #undef CONFIG_CMD_NFS | |
16dc702f A |
84 | |
85 | /* | |
86 | * Environment setup | |
87 | */ | |
16dc702f | 88 | #define CONFIG_EXTRA_ENV_SETTINGS \ |
fb3ad9bd | 89 | DEFAULT_LINUX_BOOT_ENV \ |
d71a4916 | 90 | "console=ttyO2,115200n8\0" \ |
a7143215 | 91 | "fdtfile=undefined\0" \ |
143070df S |
92 | "bootpart=0:2\0" \ |
93 | "bootdir=/boot\0" \ | |
aaed0a23 | 94 | "bootfile=zImage\0" \ |
16dc702f A |
95 | "usbtty=cdc_acm\0" \ |
96 | "vram=16M\0" \ | |
97 | "mmcdev=0\0" \ | |
98 | "mmcroot=/dev/mmcblk0p2 rw\0" \ | |
99 | "mmcrootfstype=ext3 rootwait\0" \ | |
100 | "mmcargs=setenv bootargs console=${console} " \ | |
101 | "vram=${vram} " \ | |
102 | "root=${mmcroot} " \ | |
103 | "rootfstype=${mmcrootfstype}\0" \ | |
10226f29 | 104 | "loadbootscript=load mmc ${mmcdev} ${loadaddr} boot.scr\0" \ |
16dc702f A |
105 | "bootscript=echo Running bootscript from mmc${mmcdev} ...; " \ |
106 | "source ${loadaddr}\0" \ | |
10226f29 | 107 | "loadbootenv=load mmc ${mmcdev} ${loadaddr} uEnv.txt\0" \ |
d70f5480 JMC |
108 | "importbootenv=echo Importing environment from mmc${mmcdev} ...; " \ |
109 | "env import -t ${loadaddr} ${filesize}\0" \ | |
143070df | 110 | "loadimage=load mmc ${bootpart} ${loadaddr} ${bootdir}/${bootfile}\0" \ |
ffe16911 | 111 | "loaduimage=load mmc ${mmcdev} ${loadaddr} uImage\0" \ |
16dc702f A |
112 | "mmcboot=echo Booting from mmc${mmcdev} ...; " \ |
113 | "run mmcargs; " \ | |
aaed0a23 | 114 | "bootz ${loadaddr} - ${fdtaddr}\0" \ |
ffe16911 AC |
115 | "uimageboot=echo Booting from mmc${mmcdev} ...; " \ |
116 | "run mmcargs; " \ | |
117 | "bootm ${loadaddr}\0" \ | |
143070df S |
118 | "findfdt="\ |
119 | "if test $board_name = sdp4430; then " \ | |
120 | "setenv fdtfile omap4-sdp.dtb; fi; " \ | |
121 | "if test $board_name = panda; then " \ | |
34f667bb | 122 | "setenv fdtfile omap4-panda.dtb; fi;" \ |
7d47d1ca DM |
123 | "if test $board_name = panda-a4; then " \ |
124 | "setenv fdtfile omap4-panda-a4.dtb; fi;" \ | |
34f667bb | 125 | "if test $board_name = panda-es; then " \ |
a7143215 | 126 | "setenv fdtfile omap4-panda-es.dtb; fi;" \ |
ffe16911 | 127 | "if test $board_name = duovero; then " \ |
99907176 | 128 | "setenv fdtfile omap4-duovero-parlor.dtb; fi;" \ |
a7143215 DM |
129 | "if test $fdtfile = undefined; then " \ |
130 | "echo WARNING: Could not determine device tree to use; fi; \0" \ | |
143070df | 131 | "loadfdt=load mmc ${bootpart} ${fdtaddr} ${bootdir}/${fdtfile}\0" \ |
16dc702f A |
132 | |
133 | #define CONFIG_BOOTCOMMAND \ | |
143070df | 134 | "run findfdt; " \ |
66968110 | 135 | "mmc dev ${mmcdev}; if mmc rescan; then " \ |
d70f5480 | 136 | "echo SD/MMC found on device ${mmcdev};" \ |
16dc702f A |
137 | "if run loadbootscript; then " \ |
138 | "run bootscript; " \ | |
139 | "else " \ | |
d70f5480 JMC |
140 | "if run loadbootenv; then " \ |
141 | "run importbootenv; " \ | |
142 | "fi;" \ | |
143 | "if test -n ${uenvcmd}; then " \ | |
144 | "echo Running uenvcmd ...;" \ | |
145 | "run uenvcmd;" \ | |
146 | "fi;" \ | |
147 | "fi;" \ | |
143070df S |
148 | "if run loadimage; then " \ |
149 | "run loadfdt;" \ | |
d70f5480 | 150 | "run mmcboot; " \ |
16dc702f | 151 | "fi; " \ |
ffe16911 AC |
152 | "if run loaduimage; then " \ |
153 | "run uimageboot;" \ | |
154 | "fi; " \ | |
16dc702f A |
155 | "fi" |
156 | ||
dcc23576 LV |
157 | /* |
158 | * Defines for SPL | |
159 | * It is known that this will break HS devices. Since the current size of | |
160 | * SPL is overlapped with public stack and breaking non HS devices to boot. | |
161 | * So moving TEXT_BASE down to non-HS limit. | |
162 | */ | |
163 | #define CONFIG_SPL_TEXT_BASE 0x40300000 | |
164 | #define CONFIG_SPL_MAX_SIZE (0x4030C000 - CONFIG_SPL_TEXT_BASE) | |
861a86f4 | 165 | #define CONFIG_SPL_DISPLAY_PRINT |
d1df0fd3 | 166 | #define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds" |
d3289aac TR |
167 | #define CONFIG_SYS_SPL_ARGS_ADDR (CONFIG_SYS_SDRAM_BASE + \ |
168 | (128 << 20)) | |
16dc702f | 169 | |
ee665114 GG |
170 | /* SPL: Allow to use an EXT partition */ |
171 | #define CONFIG_SPL_EXT_SUPPORT | |
172 | ||
70e71b61 EBS |
173 | #ifdef CONFIG_NAND |
174 | #define CONFIG_SPL_NAND_AM33XX_BCH /* ELM support */ | |
175 | #endif | |
176 | ||
4f80d5ba NM |
177 | #ifdef CONFIG_SPL_BUILD |
178 | /* No need for i2c in SPL mode as we will use SRI2C for PMIC access on OMAP4 */ | |
179 | #undef CONFIG_SYS_I2C | |
180 | #undef CONFIG_SYS_I2C_OMAP24XX | |
181 | #endif | |
182 | ||
6c0a032a | 183 | #endif /* __CONFIG_TI_OMAP4_COMMON_H */ |