xref: /rk3399_rockchip-uboot/include/configs/nokia_rx51.h (revision 709ea543b92489e7729d2d7ddd6c9f451e52158c)
1ed407be5SPali Rohár /*
2ed407be5SPali Rohár  * (C) Copyright 2011-2012
3ed407be5SPali Rohár  * Pali Rohár <pali.rohar@gmail.com>
4ed407be5SPali Rohár  *
5ed407be5SPali Rohár  * (C) Copyright 2010
6ed407be5SPali Rohár  * Alistair Buxton <a.j.buxton@gmail.com>
7ed407be5SPali Rohár  *
8ed407be5SPali Rohár  * Derived from Beagle Board code:
9ed407be5SPali Rohár  * (C) Copyright 2006-2008
10ed407be5SPali Rohár  * Texas Instruments.
11ed407be5SPali Rohár  * Richard Woodruff <r-woodruff2@ti.com>
12ed407be5SPali Rohár  * Syed Mohammed Khasim <x0khasim@ti.com>
13ed407be5SPali Rohár  *
14ed407be5SPali Rohár  * Configuration settings for the Nokia RX-51 aka N900.
15ed407be5SPali Rohár  *
161a459660SWolfgang Denk  * SPDX-License-Identifier:	GPL-2.0+
17ed407be5SPali Rohár  */
18ed407be5SPali Rohár 
19ed407be5SPali Rohár #ifndef __CONFIG_H
20ed407be5SPali Rohár #define __CONFIG_H
21ed407be5SPali Rohár 
22ed407be5SPali Rohár /*
23ed407be5SPali Rohár  * High Level Configuration Options
24ed407be5SPali Rohár  */
25ed407be5SPali Rohár 
26ed407be5SPali Rohár #define CONFIG_OMAP			/* in a TI OMAP core */
27ed407be5SPali Rohár #define CONFIG_OMAP34XX			/* which is a 34XX */
28ed407be5SPali Rohár #define CONFIG_OMAP3430			/* which is in a 3430 */
29ed407be5SPali Rohár #define CONFIG_OMAP3_RX51		/* working with RX51 */
30ed407be5SPali Rohár #define CONFIG_SYS_L2CACHE_OFF		/* pretend there is no L2 CACHE */
31806d2792SLokesh Vutla #define CONFIG_OMAP_COMMON
32ed407be5SPali Rohár 
33ed407be5SPali Rohár #define CONFIG_MACH_TYPE		MACH_TYPE_NOKIA_RX51
34ed407be5SPali Rohár 
35ed407be5SPali Rohár /*
36ed407be5SPali Rohár  * Nokia X-Loader loading secondary image to address 0x80400000
37ed407be5SPali Rohár  * NOLO loading boot image to random place, so it doesn't really
38ed407be5SPali Rohár  * matter what we set this to. We have to copy u-boot to this address
39ed407be5SPali Rohár  */
40ed407be5SPali Rohár #define CONFIG_SYS_TEXT_BASE	0x80008000
41ed407be5SPali Rohár 
42ed407be5SPali Rohár #define CONFIG_SDRC			/* The chip has SDRC controller */
43ed407be5SPali Rohár 
44ed407be5SPali Rohár #include <asm/arch/cpu.h>		/* get chip and board defs */
45ed407be5SPali Rohár #include <asm/arch/omap3.h>
46ed407be5SPali Rohár #include <asm/arch/mem.h>
47ed407be5SPali Rohár #include <linux/stringify.h>
48ed407be5SPali Rohár 
49ed407be5SPali Rohár /*
50ed407be5SPali Rohár  * Display CPU and Board information
51ed407be5SPali Rohár  */
52ed407be5SPali Rohár #define CONFIG_DISPLAY_CPUINFO
53ed407be5SPali Rohár #define CONFIG_DISPLAY_BOARDINFO
54ed407be5SPali Rohár 
55ed407be5SPali Rohár /* Clock Defines */
56ed407be5SPali Rohár #define V_OSCK			26000000	/* Clock output from T2 */
57ed407be5SPali Rohár #define V_SCLK			(V_OSCK >> 1)
58ed407be5SPali Rohár 
59ed407be5SPali Rohár #undef CONFIG_USE_IRQ				/* no support for IRQs */
60ed407be5SPali Rohár #define CONFIG_MISC_INIT_R
61ed407be5SPali Rohár #define CONFIG_SKIP_LOWLEVEL_INIT		/* X-Loader set everything up */
62ed407be5SPali Rohár 
63ed407be5SPali Rohár #define CONFIG_CMDLINE_TAG	/* enable passing kernel command line string */
64ed407be5SPali Rohár #define CONFIG_INITRD_TAG			/* enable passing initrd */
65ed407be5SPali Rohár #define CONFIG_REVISION_TAG			/* enable passing revision tag*/
66ed407be5SPali Rohár #define CONFIG_SETUP_MEMORY_TAGS		/* enable memory tag */
67ed407be5SPali Rohár 
68ed407be5SPali Rohár /*
69ed407be5SPali Rohár  * Size of malloc() pool
70ed407be5SPali Rohár  */
71ed407be5SPali Rohár #define CONFIG_ENV_SIZE			(128 << 10)
72ed407be5SPali Rohár #define CONFIG_UBI_SIZE			(512 << 10)
73ed407be5SPali Rohár #define CONFIG_SYS_MALLOC_LEN		(CONFIG_ENV_SIZE + CONFIG_UBI_SIZE + \
74ed407be5SPali Rohár 					(128 << 10))
75ed407be5SPali Rohár 
76ed407be5SPali Rohár /*
77ed407be5SPali Rohár  * Hardware drivers
78ed407be5SPali Rohár  */
79ed407be5SPali Rohár 
80ed407be5SPali Rohár /*
81ed407be5SPali Rohár  * NS16550 Configuration
82ed407be5SPali Rohár  */
83ed407be5SPali Rohár #define V_NS16550_CLK		48000000		/* 48MHz (APLL96/2) */
84ed407be5SPali Rohár 
85ed407be5SPali Rohár #define CONFIG_SYS_NS16550
86ed407be5SPali Rohár #define CONFIG_SYS_NS16550_SERIAL
87ed407be5SPali Rohár #define CONFIG_SYS_NS16550_REG_SIZE	(-4)
88ed407be5SPali Rohár #define CONFIG_SYS_NS16550_CLK		V_NS16550_CLK
89ed407be5SPali Rohár 
90ed407be5SPali Rohár /*
91ed407be5SPali Rohár  * select serial console configuration
92ed407be5SPali Rohár  */
93ed407be5SPali Rohár #define CONFIG_CONS_INDEX		3
94ed407be5SPali Rohár #define CONFIG_SYS_NS16550_COM3		OMAP34XX_UART3
95ed407be5SPali Rohár #define CONFIG_SERIAL3			3		/* UART3 on RX-51 */
96ed407be5SPali Rohár 
97ed407be5SPali Rohár /* allow to overwrite serial and ethaddr */
98ed407be5SPali Rohár #define CONFIG_ENV_OVERWRITE
99ed407be5SPali Rohár #define CONFIG_BAUDRATE			115200
100ed407be5SPali Rohár #define CONFIG_SYS_BAUDRATE_TABLE { 4800, 9600, 19200, 38400, 57600, 115200 }
101ed407be5SPali Rohár #define CONFIG_MMC
102ed407be5SPali Rohár #define CONFIG_GENERIC_MMC
103ed407be5SPali Rohár #define CONFIG_OMAP_HSMMC
104ed407be5SPali Rohár #define CONFIG_DOS_PARTITION
105ed407be5SPali Rohár 
106ed407be5SPali Rohár /* USB */
107ed407be5SPali Rohár #define CONFIG_MUSB_UDC
108ed407be5SPali Rohár #define CONFIG_MUSB_HDC
109ed407be5SPali Rohár #define CONFIG_USB_OMAP3
110ed407be5SPali Rohár #define CONFIG_TWL4030_USB
111ed407be5SPali Rohár 
112ed407be5SPali Rohár /* USB device configuration */
113ed407be5SPali Rohár #define CONFIG_USB_DEVICE
114ed407be5SPali Rohár #define CONFIG_USBD_VENDORID		0x0421
115ed407be5SPali Rohár #define CONFIG_USBD_PRODUCTID		0x01c8
116ed407be5SPali Rohár #define CONFIG_USBD_MANUFACTURER	"Nokia"
117ed407be5SPali Rohár #define CONFIG_USBD_PRODUCT_NAME	"N900"
118ed407be5SPali Rohár 
119ed407be5SPali Rohár #define CONFIG_SYS_CONSOLE_IS_IN_ENV
120ed407be5SPali Rohár #define CONFIG_SYS_NO_FLASH
121ed407be5SPali Rohár 
122ed407be5SPali Rohár /* commands to include */
123ed407be5SPali Rohár #include <config_cmd_default.h>
124ed407be5SPali Rohár 
125ed407be5SPali Rohár #define CONFIG_CMD_EXT2			/* EXT2 Support */
126ed407be5SPali Rohár #define CONFIG_CMD_EXT4			/* EXT4 Support */
127ed407be5SPali Rohár #define CONFIG_CMD_FAT			/* FAT support */
128ed407be5SPali Rohár 
129ed407be5SPali Rohár #define CONFIG_CMD_I2C			/* I2C serial bus support */
130ed407be5SPali Rohár #define CONFIG_CMD_MMC			/* MMC support */
131ed407be5SPali Rohár #define CONFIG_CMD_GPIO			/* Enable gpio command */
132ed407be5SPali Rohár 
133ed407be5SPali Rohár #define CONFIG_CMDLINE_EDITING		/* add command line history */
134ed407be5SPali Rohár #define CONFIG_AUTO_COMPLETE		/* add autocompletion support */
135ed407be5SPali Rohár 
136d9993988SPali Rohár #define CONFIG_CMD_BOOTMENU		/* ANSI terminal Boot Menu */
137ed407be5SPali Rohár #define CONFIG_CMD_CLEAR		/* ANSI terminal clear screen command */
138ed407be5SPali Rohár 
139ed407be5SPali Rohár #ifdef ONENAND_SUPPORT
140ed407be5SPali Rohár 
141ed407be5SPali Rohár #define CONFIG_CMD_ONENAND		/* ONENAND support */
142ed407be5SPali Rohár #define CONFIG_CMD_MTDPARTS		/* mtd parts support */
143ed407be5SPali Rohár 
144ed407be5SPali Rohár #ifdef UBIFS_SUPPORT
145ed407be5SPali Rohár #define CONFIG_CMD_UBI			/* UBI Support */
146ed407be5SPali Rohár #define CONFIG_CMD_UBIFS		/* UBIFS Support */
147ed407be5SPali Rohár #endif
148ed407be5SPali Rohár 
149ed407be5SPali Rohár #endif
150ed407be5SPali Rohár 
151ed407be5SPali Rohár /* commands not needed from config_cmd_default.h */
152ed407be5SPali Rohár #undef CONFIG_CMD_FPGA			/* FPGA configuration Support */
153ed407be5SPali Rohár #undef CONFIG_CMD_IMI			/* iminfo */
154ed407be5SPali Rohár #undef CONFIG_CMD_NET			/* bootp, tftpboot, rarpboot */
155ed407be5SPali Rohár #undef CONFIG_CMD_NFS			/* NFS support */
156ed407be5SPali Rohár #undef CONFIG_CMD_SAVEENV		/* saveenv */
157ed407be5SPali Rohár #undef CONFIG_CMD_SETGETDCR		/* DCR support on 4xx */
158ed407be5SPali Rohár 
159ed407be5SPali Rohár #define CONFIG_OMAP3_SPI
1606789e84eSHeiko Schocher #define CONFIG_SYS_I2C
1616789e84eSHeiko Schocher #define CONFIG_SYS_OMAP24_I2C_SPEED	100000
1626789e84eSHeiko Schocher #define CONFIG_SYS_OMAP24_I2C_SLAVE	1
1636789e84eSHeiko Schocher #define CONFIG_SYS_I2C_OMAP34XX
164ed407be5SPali Rohár 
165ed407be5SPali Rohár /*
166ed407be5SPali Rohár  * TWL4030
167ed407be5SPali Rohár  */
168ed407be5SPali Rohár #define CONFIG_TWL4030_POWER
169ed407be5SPali Rohár #define CONFIG_TWL4030_LED
170ed407be5SPali Rohár #define CONFIG_TWL4030_KEYPAD
171ed407be5SPali Rohár 
172ed407be5SPali Rohár #define CONFIG_OMAP_GPIO
173ed407be5SPali Rohár #define GPIO_SLIDE			71
174ed407be5SPali Rohár 
175ed407be5SPali Rohár /*
176ed407be5SPali Rohár  * Board ONENAND Info.
177ed407be5SPali Rohár  */
178ed407be5SPali Rohár 
179ed407be5SPali Rohár #define PART1_NAME			"bootloader"
180ed407be5SPali Rohár #define PART1_SIZE			128
181ed407be5SPali Rohár #define PART1_MULL			1024
182ed407be5SPali Rohár #define PART1_SUFF			"k"
183ed407be5SPali Rohár #define PART1_OFFS			0x00000000
184ed407be5SPali Rohár #define PART1_MASK			0x00000003
185ed407be5SPali Rohár 
186ed407be5SPali Rohár #define PART2_NAME			"config"
187ed407be5SPali Rohár #define PART2_SIZE			384
188ed407be5SPali Rohár #define PART2_MULL			1024
189ed407be5SPali Rohár #define PART2_SUFF			"k"
190ed407be5SPali Rohár #define PART2_OFFS			0x00020000
191ed407be5SPali Rohár #define PART2_MASK			0x00000000
192ed407be5SPali Rohár 
193ed407be5SPali Rohár #define PART3_NAME			"log"
194ed407be5SPali Rohár #define PART3_SIZE			256
195ed407be5SPali Rohár #define PART3_MULL			1024
196ed407be5SPali Rohár #define PART3_SUFF			"k"
197ed407be5SPali Rohár #define PART3_OFFS			0x00080000
198ed407be5SPali Rohár #define PART3_MASK			0x00000000
199ed407be5SPali Rohár 
200ed407be5SPali Rohár #define PART4_NAME			"kernel"
201ed407be5SPali Rohár #define PART4_SIZE			2
202ed407be5SPali Rohár #define PART4_MULL			1024*1024
203ed407be5SPali Rohár #define PART4_SUFF			"m"
204ed407be5SPali Rohár #define PART4_OFFS			0x000c0000
205ed407be5SPali Rohár #define PART4_MASK			0x00000000
206ed407be5SPali Rohár 
207ed407be5SPali Rohár #define PART5_NAME			"initfs"
208ed407be5SPali Rohár #define PART5_SIZE			2
209ed407be5SPali Rohár #define PART5_MULL			1024*1024
210ed407be5SPali Rohár #define PART5_SUFF			"m"
211ed407be5SPali Rohár #define PART5_OFFS			0x002c0000
212ed407be5SPali Rohár #define PART5_MASK			0x00000000
213ed407be5SPali Rohár 
214ed407be5SPali Rohár #define PART6_NAME			"rootfs"
215ed407be5SPali Rohár #define PART6_SIZE			257280
216ed407be5SPali Rohár #define PART6_MULL			1024
217ed407be5SPali Rohár #define PART6_SUFF			"k"
218ed407be5SPali Rohár #define PART6_OFFS			0x004c0000
219ed407be5SPali Rohár #define PART6_MASK			0x00000000
220ed407be5SPali Rohár 
221ed407be5SPali Rohár #ifdef ONENAND_SUPPORT
222ed407be5SPali Rohár 
223ed407be5SPali Rohár #define PISMO1_NAND_SIZE		GPMC_SIZE_128M
224ed407be5SPali Rohár #define PISMO1_ONEN_SIZE		GPMC_SIZE_128M
225ed407be5SPali Rohár #define CONFIG_SYS_ONENAND_BASE		ONENAND_MAP
226ed407be5SPali Rohár #define CONFIG_MTD_DEVICE
227ed407be5SPali Rohár #define CONFIG_MTD_PARTITIONS
228ed407be5SPali Rohár 
229ed407be5SPali Rohár #ifdef UBIFS_SUPPORT
230ed407be5SPali Rohár #define CONFIG_RBTREE
231ed407be5SPali Rohár #define CONFIG_LZO
232ed407be5SPali Rohár #endif
233ed407be5SPali Rohár 
234ed407be5SPali Rohár #define MTDIDS_DEFAULT			"onenand0=onenand"
235ed407be5SPali Rohár #define MTDPARTS_DEFAULT		"mtdparts=onenand:" \
236ed407be5SPali Rohár 		__stringify(PART1_SIZE) PART1_SUFF "(" PART1_NAME ")ro," \
237ed407be5SPali Rohár 		__stringify(PART2_SIZE) PART2_SUFF "(" PART2_NAME ")," \
238ed407be5SPali Rohár 		__stringify(PART3_SIZE) PART3_SUFF "(" PART3_NAME ")," \
239ed407be5SPali Rohár 		__stringify(PART4_SIZE) PART4_SUFF "(" PART4_NAME ")," \
240ed407be5SPali Rohár 		__stringify(PART5_SIZE) PART5_SUFF "(" PART5_NAME ")," \
241ed407be5SPali Rohár 		"-(" PART6_NAME ")"
242ed407be5SPali Rohár 
243ed407be5SPali Rohár #endif
244ed407be5SPali Rohár 
245ed407be5SPali Rohár /* Watchdog support */
246ed407be5SPali Rohár #define CONFIG_HW_WATCHDOG
247ed407be5SPali Rohár 
248ed407be5SPali Rohár /*
249ed407be5SPali Rohár  * Framebuffer
250ed407be5SPali Rohár  */
251ed407be5SPali Rohár /* Video console */
252ed407be5SPali Rohár #define CONFIG_VIDEO
253ed407be5SPali Rohár #define CONFIG_CFB_CONSOLE
254ed407be5SPali Rohár #define CONFIG_CFB_CONSOLE_ANSI	/* Enable ANSI escape codes in framebuffer */
255ed407be5SPali Rohár #define CONFIG_VIDEO_LOGO
256ed407be5SPali Rohár #define VIDEO_FB_16BPP_PIXEL_SWAP
257ed407be5SPali Rohár #define VIDEO_FB_16BPP_WORD_SWAP
258ed407be5SPali Rohár #define CONFIG_VIDEO_SW_CURSOR
259ed407be5SPali Rohár #define CONFIG_SPLASH_SCREEN
260ed407be5SPali Rohár 
261ed407be5SPali Rohár /* functions for cfb_console */
262ed407be5SPali Rohár #define VIDEO_KBD_INIT_FCT		rx51_kp_init()
263ed407be5SPali Rohár #define VIDEO_TSTC_FCT			rx51_kp_tstc
264ed407be5SPali Rohár #define VIDEO_GETC_FCT			rx51_kp_getc
265ed407be5SPali Rohár #ifndef __ASSEMBLY__
266*709ea543SSimon Glass struct stdio_dev;
267ed407be5SPali Rohár int rx51_kp_init(void);
268*709ea543SSimon Glass int rx51_kp_tstc(struct stdio_dev *sdev);
269*709ea543SSimon Glass int rx51_kp_getc(struct stdio_dev *sdev);
270ed407be5SPali Rohár #endif
271ed407be5SPali Rohár 
272ed407be5SPali Rohár #ifndef MTDPARTS_DEFAULT
273ed407be5SPali Rohár #define MTDPARTS_DEFAULT
274ed407be5SPali Rohár #endif
275ed407be5SPali Rohár 
276ed407be5SPali Rohár /* Environment information */
277ed407be5SPali Rohár #define CONFIG_EXTRA_ENV_SETTINGS \
278ed407be5SPali Rohár 	"mtdparts=" MTDPARTS_DEFAULT "\0" \
279ed407be5SPali Rohár 	"usbtty=cdc_acm\0" \
280ed407be5SPali Rohár 	"stdin=vga\0" \
281ed407be5SPali Rohár 	"stdout=vga\0" \
282ed407be5SPali Rohár 	"stderr=vga\0" \
283ed407be5SPali Rohár 	"setcon=setenv stdin ${con};" \
284ed407be5SPali Rohár 		"setenv stdout ${con};" \
285ed407be5SPali Rohár 		"setenv stderr ${con}\0" \
286ed407be5SPali Rohár 	"sercon=setenv con serial; run setcon\0" \
287ed407be5SPali Rohár 	"usbcon=setenv con usbtty; run setcon\0" \
288ed407be5SPali Rohár 	"vgacon=setenv con vga; run setcon\0" \
289ed407be5SPali Rohár 	"slide=gpio input " __stringify(GPIO_SLIDE) "\0" \
290ed407be5SPali Rohár 	"switchmmc=mmc dev ${mmcnum}\0" \
291ed407be5SPali Rohár 	"kernaddr=0x82008000\0" \
292ed407be5SPali Rohár 	"initrdaddr=0x84008000\0" \
293ed407be5SPali Rohár 	"scriptaddr=0x86008000\0" \
294ed407be5SPali Rohár 	"fileload=${mmctype}load mmc ${mmcnum}:${mmcpart} " \
295ed407be5SPali Rohár 		"${loadaddr} ${mmcfile}\0" \
296ed407be5SPali Rohár 	"kernload=setenv loadaddr ${kernaddr};" \
297ed407be5SPali Rohár 		"setenv mmcfile ${mmckernfile};" \
298ed407be5SPali Rohár 		"run fileload\0" \
299ed407be5SPali Rohár 	"initrdload=setenv loadaddr ${initrdaddr};" \
300ed407be5SPali Rohár 		"setenv mmcfile ${mmcinitrdfile};" \
301ed407be5SPali Rohár 		"run fileload\0" \
302ed407be5SPali Rohár 	"scriptload=setenv loadaddr ${scriptaddr};" \
303ed407be5SPali Rohár 		"setenv mmcfile ${mmcscriptfile};" \
304ed407be5SPali Rohár 		"run fileload\0" \
305ed407be5SPali Rohár 	"scriptboot=echo Running ${mmcscriptfile} from mmc " \
306ed407be5SPali Rohár 		"${mmcnum}:${mmcpart} ...; source ${scriptaddr}\0" \
307ed407be5SPali Rohár 	"kernboot=echo Booting ${mmckernfile} from mmc " \
308ed407be5SPali Rohár 		"${mmcnum}:${mmcpart} ...; bootm ${kernaddr}\0" \
309ed407be5SPali Rohár 	"kerninitrdboot=echo Booting ${mmckernfile} ${mmcinitrdfile} from mmc "\
310ed407be5SPali Rohár 		"${mmcnum}:${mmcpart} ...; bootm ${kernaddr} ${initrdaddr}\0" \
311ed407be5SPali Rohár 	"attachboot=echo Booting attached kernel image ...;" \
312ed407be5SPali Rohár 		"setenv setup_omap_atag 1;" \
313ed407be5SPali Rohár 		"bootm ${attkernaddr};" \
314ed407be5SPali Rohár 		"setenv setup_omap_atag\0" \
315ed407be5SPali Rohár 	"trymmcscriptboot=if run switchmmc; then " \
316ed407be5SPali Rohár 			"if run scriptload; then " \
317ed407be5SPali Rohár 				"run scriptboot;" \
318ed407be5SPali Rohár 			"fi;" \
319ed407be5SPali Rohár 		"fi\0" \
320ed407be5SPali Rohár 	"trymmckernboot=if run switchmmc; then " \
321ed407be5SPali Rohár 			"if run kernload; then " \
322ed407be5SPali Rohár 				"run kernboot;" \
323ed407be5SPali Rohár 			"fi;" \
324ed407be5SPali Rohár 		"fi\0" \
325ed407be5SPali Rohár 	"trymmckerninitrdboot=if run switchmmc; then " \
326ed407be5SPali Rohár 			"if run initrdload; then " \
327ed407be5SPali Rohár 				"if run kernload; then " \
328ed407be5SPali Rohár 					"run kerninitrdboot;" \
329ed407be5SPali Rohár 				"fi;" \
330ed407be5SPali Rohár 			"fi; " \
331ed407be5SPali Rohár 		"fi\0" \
332ed407be5SPali Rohár 	"trymmcpartboot=setenv mmcscriptfile boot.scr; run trymmcscriptboot;" \
333ed407be5SPali Rohár 		"setenv mmckernfile uImage; run trymmckernboot\0" \
334ed407be5SPali Rohár 	"trymmcallpartboot=setenv mmcpart 1; run trymmcpartboot;" \
335ed407be5SPali Rohár 		"setenv mmcpart 2; run trymmcpartboot;" \
336ed407be5SPali Rohár 		"setenv mmcpart 3; run trymmcpartboot;" \
337ed407be5SPali Rohár 		"setenv mmcpart 4; run trymmcpartboot\0" \
338ed407be5SPali Rohár 	"trymmcboot=if run switchmmc; then " \
339ed407be5SPali Rohár 			"setenv mmctype fat;" \
340ed407be5SPali Rohár 			"run trymmcallpartboot;" \
341ed407be5SPali Rohár 			"setenv mmctype ext2;" \
342ed407be5SPali Rohár 			"run trymmcallpartboot;" \
343ed407be5SPali Rohár 			"setenv mmctype ext4;" \
344ed407be5SPali Rohár 			"run trymmcallpartboot;" \
345ed407be5SPali Rohár 		"fi\0" \
346ed407be5SPali Rohár 	"emmcboot=setenv mmcnum 1; run trymmcboot\0" \
347ed407be5SPali Rohár 	"sdboot=setenv mmcnum 0; run trymmcboot\0" \
348d9993988SPali Rohár 	"menucmd=bootmenu\0" \
349d9993988SPali Rohár 	"bootmenu_0=Attached kernel=run attachboot\0" \
350d9993988SPali Rohár 	"bootmenu_1=Internal eMMC=run emmcboot\0" \
351d9993988SPali Rohár 	"bootmenu_2=External SD card=run sdboot\0" \
352d9993988SPali Rohár 	"bootmenu_3=U-Boot boot order=boot\0" \
353d9993988SPali Rohár 	"bootmenu_delay=30\0" \
354ed407be5SPali Rohár 	""
355ed407be5SPali Rohár 
356ed407be5SPali Rohár #define CONFIG_PREBOOT \
357d9993988SPali Rohár 	"setenv mmcnum 1; setenv mmcpart 1;" \
358d9993988SPali Rohár 	"setenv mmcscriptfile bootmenu.scr;" \
359d9993988SPali Rohár 	"if run switchmmc; then " \
360d9993988SPali Rohár 		"setenv mmcdone true;" \
361d9993988SPali Rohár 		"setenv mmctype fat;" \
362d9993988SPali Rohár 		"if run scriptload; then true; else " \
363d9993988SPali Rohár 			"setenv mmctype ext2;" \
364d9993988SPali Rohár 			"if run scriptload; then true; else " \
365d9993988SPali Rohár 				"setenv mmctype ext4;" \
366d9993988SPali Rohár 				"if run scriptload; then true; else " \
367d9993988SPali Rohár 					"setenv mmcdone false;" \
368d9993988SPali Rohár 				"fi;" \
369d9993988SPali Rohár 			"fi;" \
370d9993988SPali Rohár 		"fi;" \
371d9993988SPali Rohár 		"if ${mmcdone}; then " \
372d9993988SPali Rohár 			"run scriptboot;" \
373d9993988SPali Rohár 		"fi;" \
374d9993988SPali Rohár 	"fi;" \
375d9993988SPali Rohár 	"if run slide; then true; else " \
376d9993988SPali Rohár 		"setenv bootmenu_delay 0;" \
377d9993988SPali Rohár 		"setenv bootdelay 0;" \
378d9993988SPali Rohár 	"fi"
379d9993988SPali Rohár 
380d9993988SPali Rohár #define CONFIG_POSTBOOTMENU \
381d9993988SPali Rohár 	"echo;" \
382ed407be5SPali Rohár 	"echo Extra commands:;" \
383ed407be5SPali Rohár 	"echo run sercon - Use serial port for control.;" \
384ed407be5SPali Rohár 	"echo run usbcon - Use usbtty for control.;" \
385ed407be5SPali Rohár 	"echo run vgacon - Use framebuffer/keyboard.;" \
386ed407be5SPali Rohár 	"echo run sdboot - Boot from SD card slot.;" \
387ed407be5SPali Rohár 	"echo run emmcboot - Boot internal eMMC memory.;" \
388ed407be5SPali Rohár 	"echo run attachboot - Boot attached kernel image.;" \
389ed407be5SPali Rohár 	"echo"
390ed407be5SPali Rohár 
391ed407be5SPali Rohár #define CONFIG_BOOTCOMMAND \
392ed407be5SPali Rohár 	"run sdboot;" \
393ed407be5SPali Rohár 	"run emmcboot;" \
394ed407be5SPali Rohár 	"run attachboot;" \
395ed407be5SPali Rohár 	"echo"
396ed407be5SPali Rohár 
397d9993988SPali Rohár #define CONFIG_BOOTDELAY 30
398d9993988SPali Rohár #define CONFIG_AUTOBOOT_KEYED
399d9993988SPali Rohár #define CONFIG_MENU
400d9993988SPali Rohár #define CONFIG_MENU_SHOW
401d9993988SPali Rohár 
402ed407be5SPali Rohár /*
403ed407be5SPali Rohár  * Miscellaneous configurable options
404ed407be5SPali Rohár  */
405ed407be5SPali Rohár #define CONFIG_SYS_LONGHELP			/* undef to save memory */
406ed407be5SPali Rohár #define CONFIG_SYS_HUSH_PARSER			/* use "hush" command parser */
407ed407be5SPali Rohár #define CONFIG_SYS_PROMPT_HUSH_PS2	"> "
408ed407be5SPali Rohár #define CONFIG_SYS_PROMPT		"Nokia RX-51 # "
409ed407be5SPali Rohár #define CONFIG_SYS_CBSIZE		256	/* Console I/O Buffer Size */
410ed407be5SPali Rohár /* Print Buffer Size */
411ed407be5SPali Rohár #define CONFIG_SYS_PBSIZE		(CONFIG_SYS_CBSIZE + \
412ed407be5SPali Rohár 						sizeof(CONFIG_SYS_PROMPT) + 16)
413ed407be5SPali Rohár #define CONFIG_SYS_MAXARGS		16	/* max number of command args */
414ed407be5SPali Rohár /* Boot Argument Buffer Size */
415ed407be5SPali Rohár #define CONFIG_SYS_BARGSIZE		(CONFIG_SYS_CBSIZE)
416ed407be5SPali Rohár 
417ed407be5SPali Rohár #define CONFIG_SYS_MEMTEST_START	(OMAP34XX_SDRC_CS0)
418ed407be5SPali Rohár #define CONFIG_SYS_MEMTEST_END		(OMAP34XX_SDRC_CS0 + 0x01F00000)/*31MB*/
419ed407be5SPali Rohár 
420ed407be5SPali Rohár /* default load address */
421ed407be5SPali Rohár #define CONFIG_SYS_LOAD_ADDR		(OMAP34XX_SDRC_CS0)
422ed407be5SPali Rohár 
423ed407be5SPali Rohár /*
424ed407be5SPali Rohár  * OMAP3 has 12 GP timers, they can be driven by the system clock
425ed407be5SPali Rohár  * (12/13/16.8/19.2/38.4MHz) or by 32KHz clock. We use 13MHz (V_SCLK).
426ed407be5SPali Rohár  * This rate is divided by a local divisor.
427ed407be5SPali Rohár  */
428ed407be5SPali Rohár #define CONFIG_SYS_TIMERBASE		(OMAP34XX_GPT2)
429ed407be5SPali Rohár #define CONFIG_SYS_PTV			2	/* Divisor: 2^(PTV+1) => 8 */
430ed407be5SPali Rohár 
431ed407be5SPali Rohár /*
432ed407be5SPali Rohár  * Stack sizes
433ed407be5SPali Rohár  *
434ed407be5SPali Rohár  * The stack sizes are set up in start.S using the settings below
435ed407be5SPali Rohár  */
436ed407be5SPali Rohár #define CONFIG_STACKSIZE		(128 << 10) /* regular stack 128 KiB */
437ed407be5SPali Rohár 
438ed407be5SPali Rohár /*
439ed407be5SPali Rohár  * Physical Memory Map
440ed407be5SPali Rohár  */
441ed407be5SPali Rohár #define CONFIG_NR_DRAM_BANKS		2
442ed407be5SPali Rohár #define PHYS_SDRAM_1			OMAP34XX_SDRC_CS0
443ed407be5SPali Rohár 
444ed407be5SPali Rohár /*
445ed407be5SPali Rohár  * FLASH and environment organization
446ed407be5SPali Rohár  */
447ed407be5SPali Rohár 
448ed407be5SPali Rohár #define CONFIG_ENV_IS_NOWHERE
449ed407be5SPali Rohár 
450ed407be5SPali Rohár #define CONFIG_SYS_SDRAM_BASE		PHYS_SDRAM_1
451ed407be5SPali Rohár #define CONFIG_SYS_INIT_RAM_ADDR	0x4020f800
452ed407be5SPali Rohár #define CONFIG_SYS_INIT_RAM_SIZE	0x800
453ed407be5SPali Rohár #define CONFIG_SYS_INIT_SP_ADDR		(CONFIG_SYS_INIT_RAM_ADDR + \
454ed407be5SPali Rohár 			CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
455ed407be5SPali Rohár 
456ed407be5SPali Rohár /*
457ed407be5SPali Rohár  * Attached kernel image
458ed407be5SPali Rohár  */
459ed407be5SPali Rohár 
460ed407be5SPali Rohár #define SDRAM_SIZE			0x10000000	/* 256 MB */
461ed407be5SPali Rohár #define SDRAM_END			(CONFIG_SYS_SDRAM_BASE + SDRAM_SIZE)
462ed407be5SPali Rohár 
463ed407be5SPali Rohár #define IMAGE_MAXSIZE			0x1FF800	/* 2 MB - 2 kB */
464ed407be5SPali Rohár #define KERNEL_OFFSET			0x40000		/* 256 kB */
465ed407be5SPali Rohár #define KERNEL_MAXSIZE			(IMAGE_MAXSIZE-KERNEL_OFFSET)
466ed407be5SPali Rohár #define KERNEL_ADDRESS			(SDRAM_END-KERNEL_MAXSIZE)
467ed407be5SPali Rohár 
468ed407be5SPali Rohár /* Reserve protected RAM for attached kernel */
469ed407be5SPali Rohár #define CONFIG_PRAM			((KERNEL_MAXSIZE >> 10)+1)
470ed407be5SPali Rohár 
471ed407be5SPali Rohár #endif /* __CONFIG_H */
472