blob: e313231a4d58a675bd0c1f2152d2c8a02175c86a [file] [log] [blame]
Steve Sakoman6b810ff2010-06-11 20:35:26 -07001/*
2 * (C) Copyright 2010
3 * Texas Instruments Incorporated.
4 * Steve Sakoman <steve@sakoman.com>
5 *
6 * Configuration settings for the TI OMAP4 Panda board.
7 *
8 * See file CREDITS for list of people who contributed to this
9 * project.
10 *
11 * This program is free software; you can redistribute it and/or
12 * modify it under the terms of the GNU General Public License as
13 * published by the Free Software Foundation; either version 2 of
14 * the License, or (at your option) any later version.
15 *
16 * This program is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU General Public License for more details.
20 *
21 * You should have received a copy of the GNU General Public License
22 * along with this program; if not, write to the Free Software
23 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
24 * MA 02111-1307 USA
25 */
26
27#ifndef __CONFIG_H
28#define __CONFIG_H
29
30/*
31 * High Level Configuration Options
32 */
Steve Sakoman6b810ff2010-06-11 20:35:26 -070033#define CONFIG_OMAP 1 /* in a TI OMAP core */
34#define CONFIG_OMAP44XX 1 /* which is a 44XX */
35#define CONFIG_OMAP4430 1 /* which is in a 4430 */
36#define CONFIG_PANDA 1 /* working with Panda */
Steve Sakoman9bb65b52010-07-15 13:43:10 -070037#define CONFIG_ARCH_CPU_INIT
Steve Sakoman6b810ff2010-06-11 20:35:26 -070038
39/* Get CPU defs */
40#include <asm/arch/cpu.h>
41#include <asm/arch/omap4.h>
42
43/* Display CPU and Board Info */
44#define CONFIG_DISPLAY_CPUINFO 1
45#define CONFIG_DISPLAY_BOARDINFO 1
46
Steve Sakoman6b810ff2010-06-11 20:35:26 -070047/* Clock Defines */
48#define V_OSCK 38400000 /* Clock output from T2 */
49#define V_SCLK V_OSCK
50
51#undef CONFIG_USE_IRQ /* no support for IRQs */
52#define CONFIG_MISC_INIT_R
53
54#define CONFIG_CMDLINE_TAG 1 /* enable passing of ATAGs */
55#define CONFIG_SETUP_MEMORY_TAGS 1
56#define CONFIG_INITRD_TAG 1
57#define CONFIG_REVISION_TAG 1
58
Grant Likely100b8492011-03-28 09:59:07 +000059#define CONFIG_OF_LIBFDT 1
60
Steve Sakoman6b810ff2010-06-11 20:35:26 -070061/*
62 * Size of malloc() pool
63 * Total Size Environment - 256k
64 * Malloc - add 256k
65 */
66#define CONFIG_ENV_SIZE (256 << 10)
67#define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + (256 << 10))
Steve Sakoman6b810ff2010-06-11 20:35:26 -070068/* Vector Base */
69#define CONFIG_SYS_CA9_VECTOR_BASE SRAM_ROM_VECT_BASE
70
71/*
72 * Hardware drivers
73 */
74
75/*
76 * serial port - NS16550 compatible
77 */
78#define V_NS16550_CLK 48000000
79
80#define CONFIG_SYS_NS16550
81#define CONFIG_SYS_NS16550_SERIAL
82#define CONFIG_SYS_NS16550_REG_SIZE (-4)
83#define CONFIG_SYS_NS16550_CLK V_NS16550_CLK
84#define CONFIG_CONS_INDEX 3
85#define CONFIG_SYS_NS16550_COM3 UART3_BASE
86
87#define CONFIG_ENV_IS_NOWHERE
Steve Sakoman6b810ff2010-06-11 20:35:26 -070088#define CONFIG_BAUDRATE 115200
89#define CONFIG_SYS_BAUDRATE_TABLE {4800, 9600, 19200, 38400, 57600,\
90 115200}
91
92/* I2C */
93#define CONFIG_HARD_I2C 1
94#define CONFIG_SYS_I2C_SPEED 100000
95#define CONFIG_SYS_I2C_SLAVE 1
96#define CONFIG_SYS_I2C_BUS 0
97#define CONFIG_SYS_I2C_BUS_SELECT 1
98#define CONFIG_DRIVER_OMAP34XX_I2C 1
99#define CONFIG_I2C_MULTI_BUS 1
100
Steve Sakomanf8f7c952010-07-15 12:53:42 -0700101/* TWL6030 */
102#define CONFIG_TWL6030_POWER 1
103
Steve Sakoman6b810ff2010-06-11 20:35:26 -0700104/* MMC */
Sukumar Ghoraie9edff82010-09-18 20:56:18 -0700105#define CONFIG_GENERIC_MMC 1
Steve Sakoman6b810ff2010-06-11 20:35:26 -0700106#define CONFIG_MMC 1
Sukumar Ghoraie9edff82010-09-18 20:56:18 -0700107#define CONFIG_OMAP_HSMMC 1
Steve Sakoman6b810ff2010-06-11 20:35:26 -0700108#define CONFIG_SYS_MMC_SET_DEV 1
109#define CONFIG_DOS_PARTITION 1
110
Steve Sakoman70cc0ba2010-06-25 12:52:01 -0700111/* USB */
112#define CONFIG_MUSB_UDC 1
113#define CONFIG_USB_OMAP3 1
114
115/* USB device configuration */
116#define CONFIG_USB_DEVICE 1
117#define CONFIG_USB_TTY 1
118#define CONFIG_SYS_CONSOLE_IS_IN_ENV 1
Steve Sakoman70cc0ba2010-06-25 12:52:01 -0700119
Steve Sakoman6b810ff2010-06-11 20:35:26 -0700120/* Flash */
121#define CONFIG_SYS_NO_FLASH 1
122
123/* commands to include */
124#include <config_cmd_default.h>
125
126/* Enabled commands */
127#define CONFIG_CMD_EXT2 /* EXT2 Support */
128#define CONFIG_CMD_FAT /* FAT support */
129#define CONFIG_CMD_I2C /* I2C serial bus support */
130#define CONFIG_CMD_MMC /* MMC support */
131
132/* Disabled commands */
133#undef CONFIG_CMD_NET
Steve Sakomandcd167e2010-11-19 11:29:16 -0500134#undef CONFIG_CMD_NFS
Steve Sakoman6b810ff2010-06-11 20:35:26 -0700135#undef CONFIG_CMD_FPGA /* FPGA configuration Support */
136#undef CONFIG_CMD_IMLS /* List all found images */
137
138/*
Steve Sakoman6b810ff2010-06-11 20:35:26 -0700139 * Environment setup
140 */
141
Steve Sakoman9abea222010-07-07 15:25:25 -0700142#define CONFIG_BOOTDELAY 3
143
Steve Sakoman6b810ff2010-06-11 20:35:26 -0700144#define CONFIG_ENV_OVERWRITE
145
146#define CONFIG_EXTRA_ENV_SETTINGS \
147 "loadaddr=0x82000000\0" \
148 "console=ttyS2,115200n8\0" \
Steve Sakoman70cc0ba2010-06-25 12:52:01 -0700149 "usbtty=cdc_acm\0" \
Steve Sakoman9abea222010-07-07 15:25:25 -0700150 "vram=16M\0" \
Sukumar Ghoraie9edff82010-09-18 20:56:18 -0700151 "mmcdev=0\0" \
Steve Sakoman6b810ff2010-06-11 20:35:26 -0700152 "mmcroot=/dev/mmcblk0p2 rw\0" \
153 "mmcrootfstype=ext3 rootwait\0" \
154 "mmcargs=setenv bootargs console=${console} " \
Steve Sakoman9abea222010-07-07 15:25:25 -0700155 "vram=${vram} " \
Steve Sakoman6b810ff2010-06-11 20:35:26 -0700156 "root=${mmcroot} " \
157 "rootfstype=${mmcrootfstype}\0" \
158 "loadbootscript=fatload mmc ${mmcdev} ${loadaddr} boot.scr\0" \
159 "bootscript=echo Running bootscript from mmc${mmcdev} ...; " \
160 "source ${loadaddr}\0" \
161 "loaduimage=fatload mmc ${mmcdev} ${loadaddr} uImage\0" \
162 "mmcboot=echo Booting from mmc${mmcdev} ...; " \
163 "run mmcargs; " \
164 "bootm ${loadaddr}\0" \
165
166#define CONFIG_BOOTCOMMAND \
Sukumar Ghoraie9edff82010-09-18 20:56:18 -0700167 "if mmc rescan ${mmcdev}; then " \
Steve Sakoman6b810ff2010-06-11 20:35:26 -0700168 "if run loadbootscript; then " \
169 "run bootscript; " \
170 "else " \
171 "if run loaduimage; then " \
172 "run mmcboot; " \
Steve Sakoman6b810ff2010-06-11 20:35:26 -0700173 "fi; " \
174 "fi; " \
175 "fi"
176
177#define CONFIG_AUTO_COMPLETE 1
178
179/*
180 * Miscellaneous configurable options
181 */
182
183#define CONFIG_SYS_LONGHELP /* undef to save memory */
184#define CONFIG_SYS_HUSH_PARSER /* use "hush" command parser */
185#define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
186#define CONFIG_SYS_PROMPT "Panda # "
187#define CONFIG_SYS_CBSIZE 256
188/* Print Buffer Size */
189#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + \
190 sizeof(CONFIG_SYS_PROMPT) + 16)
191#define CONFIG_SYS_MAXARGS 16
192/* Boot Argument Buffer Size */
193#define CONFIG_SYS_BARGSIZE (CONFIG_SYS_CBSIZE)
194
195/*
196 * memtest setup
197 */
198#define CONFIG_SYS_MEMTEST_START 0x80000000
199#define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_MEMTEST_START + (32 << 20))
200
201/* Default load address */
202#define CONFIG_SYS_LOAD_ADDR 0x80000000
203
204/* Use General purpose timer 1 */
Steve Sakoman58657e62010-07-20 14:56:07 -0700205#define CONFIG_SYS_TIMERBASE GPT2_BASE
Steve Sakoman6b810ff2010-06-11 20:35:26 -0700206#define CONFIG_SYS_PTV 2 /* Divisor: 2^(PTV+1) => 8 */
207#define CONFIG_SYS_HZ 1000
208
209/*
210 * Stack sizes
211 *
212 * The stack sizes are set up in start.S using the settings below
213 */
214#define CONFIG_STACKSIZE (128 << 10) /* Regular stack */
215#ifdef CONFIG_USE_IRQ
216#define CONFIG_STACKSIZE_IRQ (4 << 10) /* IRQ stack */
217#define CONFIG_STACKSIZE_FIQ (4 << 10) /* FIQ stack */
218#endif
219
220/*
221 * SDRAM Memory Map
222 * Even though we use two CS all the memory
223 * is mapped to one contiguous block
224 */
225#define CONFIG_NR_DRAM_BANKS 1
226
Steve Sakoman97c57f12010-09-29 20:59:51 -0700227#define CONFIG_SYS_SDRAM_BASE 0x80000000
Steve Sakomanb74d3b42010-10-27 05:04:30 -0700228#define CONFIG_SYS_INIT_RAM_ADDR 0x4030D800
229#define CONFIG_SYS_INIT_RAM_SIZE 0x800
230#define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_INIT_RAM_ADDR + \
231 CONFIG_SYS_INIT_RAM_SIZE - \
232 GENERATED_GBL_DATA_SIZE)
Steve Sakoman97c57f12010-09-29 20:59:51 -0700233
Aneesh Ve3405bd2011-06-16 23:30:52 +0000234#ifndef CONFIG_SYS_L2CACHE_OFF
235#define CONFIG_SYS_L2_PL310 1
236#define CONFIG_SYS_PL310_BASE 0x48242000
237#endif
238
Aneesh Vc0e88522011-07-21 09:10:12 -0400239/* Defines for SDRAM init */
240#ifndef CONFIG_SYS_EMIF_PRECALCULATED_TIMING_REGS
Aneesh Vced762a2011-07-21 09:10:15 -0400241#define CONFIG_SYS_AUTOMATIC_SDRAM_DETECTION
Aneesh Vc0e88522011-07-21 09:10:12 -0400242#define CONFIG_SYS_DEFAULT_LPDDR2_TIMINGS
243#endif
244
Aneesh Vb8e60b92011-07-21 09:10:21 -0400245/* Defines for SPL */
246#define CONFIG_SPL
247#define CONFIG_SPL_TEXT_BASE 0x40304350
248#define CONFIG_SPL_MAX_SIZE 0x8000 /* 32 K */
249#define CONFIG_SPL_STACK LOW_LEVEL_SRAM_STACK
250
251#define CONFIG_SPL_BSS_START_ADDR 0x80000000
252#define CONFIG_SPL_BSS_MAX_SIZE 0x80000 /* 512 KB */
253
Aneesh V13a74c12011-07-21 09:10:27 -0400254#define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x300 /* address 0x60000 */
255#define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x200 /* 256 KB */
256#define CONFIG_SYS_MMC_SD_FAT_BOOT_PARTITION 1
257#define CONFIG_SPL_FAT_LOAD_PAYLOAD_NAME "u-boot.img"
258
Aneesh Vb8e60b92011-07-21 09:10:21 -0400259#define CONFIG_SPL_LIBCOMMON_SUPPORT
260#define CONFIG_SPL_LIBDISK_SUPPORT
261#define CONFIG_SPL_I2C_SUPPORT
262#define CONFIG_SPL_MMC_SUPPORT
263#define CONFIG_SPL_FAT_SUPPORT
264#define CONFIG_SPL_LIBGENERIC_SUPPORT
265#define CONFIG_SPL_SERIAL_SUPPORT
266#define CONFIG_SPL_LDSCRIPT "arch/arm/cpu/armv7/omap-common/u-boot-spl.lds"
267
268/*
269 * 1MB into the SDRAM to allow for SPL's bss at the beginning of SDRAM
270 * 64 bytes before this address should be set aside for u-boot.img's
271 * header. That is 0x800FFFC0--0x80100000 should not be used for any
272 * other needs.
273 */
274#define CONFIG_SYS_TEXT_BASE 0x80100000
275
Steve Sakoman6b810ff2010-06-11 20:35:26 -0700276#endif /* __CONFIG_H */