xref: /rk3399_rockchip-uboot/include/configs/omap4_panda.h (revision c57cca255ce403fdfe77e7b040b578a29514da0b)
1*c57cca25SSteve Sakoman /*
2*c57cca25SSteve Sakoman  * (C) Copyright 2010
3*c57cca25SSteve Sakoman  * Texas Instruments Incorporated.
4*c57cca25SSteve Sakoman  * Steve Sakoman  <steve@sakoman.com>
5*c57cca25SSteve Sakoman  *
6*c57cca25SSteve Sakoman  * Configuration settings for the TI OMAP4 Panda board.
7*c57cca25SSteve Sakoman  *
8*c57cca25SSteve Sakoman  * See file CREDITS for list of people who contributed to this
9*c57cca25SSteve Sakoman  * project.
10*c57cca25SSteve Sakoman  *
11*c57cca25SSteve Sakoman  * This program is free software; you can redistribute it and/or
12*c57cca25SSteve Sakoman  * modify it under the terms of the GNU General Public License as
13*c57cca25SSteve Sakoman  * published by the Free Software Foundation; either version 2 of
14*c57cca25SSteve Sakoman  * the License, or (at your option) any later version.
15*c57cca25SSteve Sakoman  *
16*c57cca25SSteve Sakoman  * This program is distributed in the hope that it will be useful,
17*c57cca25SSteve Sakoman  * but WITHOUT ANY WARRANTY; without even the implied warranty of
18*c57cca25SSteve Sakoman  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the
19*c57cca25SSteve Sakoman  * GNU General Public License for more details.
20*c57cca25SSteve Sakoman  *
21*c57cca25SSteve Sakoman  * You should have received a copy of the GNU General Public License
22*c57cca25SSteve Sakoman  * along with this program; if not, write to the Free Software
23*c57cca25SSteve Sakoman  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
24*c57cca25SSteve Sakoman  * MA 02111-1307 USA
25*c57cca25SSteve Sakoman  */
26*c57cca25SSteve Sakoman 
27*c57cca25SSteve Sakoman #ifndef __CONFIG_H
28*c57cca25SSteve Sakoman #define __CONFIG_H
29*c57cca25SSteve Sakoman 
30*c57cca25SSteve Sakoman /*
31*c57cca25SSteve Sakoman  * High Level Configuration Options
32*c57cca25SSteve Sakoman  */
33*c57cca25SSteve Sakoman #define CONFIG_ARMV7		1	/* This is an ARM V7 CPU core */
34*c57cca25SSteve Sakoman #define CONFIG_OMAP		1	/* in a TI OMAP core */
35*c57cca25SSteve Sakoman #define CONFIG_OMAP44XX		1	/* which is a 44XX */
36*c57cca25SSteve Sakoman #define CONFIG_OMAP4430		1	/* which is in a 4430 */
37*c57cca25SSteve Sakoman #define CONFIG_PANDA		1	/* working with Panda */
38*c57cca25SSteve Sakoman 
39*c57cca25SSteve Sakoman /* Get CPU defs */
40*c57cca25SSteve Sakoman #include <asm/arch/cpu.h>
41*c57cca25SSteve Sakoman #include <asm/arch/omap4.h>
42*c57cca25SSteve Sakoman 
43*c57cca25SSteve Sakoman /* Display CPU and Board Info */
44*c57cca25SSteve Sakoman #define CONFIG_DISPLAY_CPUINFO		1
45*c57cca25SSteve Sakoman #define CONFIG_DISPLAY_BOARDINFO	1
46*c57cca25SSteve Sakoman 
47*c57cca25SSteve Sakoman /* Keep L2 Cache Disabled */
48*c57cca25SSteve Sakoman #define CONFIG_L2_OFF			1
49*c57cca25SSteve Sakoman 
50*c57cca25SSteve Sakoman /* Clock Defines */
51*c57cca25SSteve Sakoman #define V_OSCK			38400000	/* Clock output from T2 */
52*c57cca25SSteve Sakoman #define V_SCLK                   V_OSCK
53*c57cca25SSteve Sakoman 
54*c57cca25SSteve Sakoman #undef CONFIG_USE_IRQ				/* no support for IRQs */
55*c57cca25SSteve Sakoman #define CONFIG_MISC_INIT_R
56*c57cca25SSteve Sakoman 
57*c57cca25SSteve Sakoman #define CONFIG_CMDLINE_TAG		1	/* enable passing of ATAGs */
58*c57cca25SSteve Sakoman #define CONFIG_SETUP_MEMORY_TAGS	1
59*c57cca25SSteve Sakoman #define CONFIG_INITRD_TAG		1
60*c57cca25SSteve Sakoman #define CONFIG_REVISION_TAG		1
61*c57cca25SSteve Sakoman 
62*c57cca25SSteve Sakoman /*
63*c57cca25SSteve Sakoman  * Size of malloc() pool
64*c57cca25SSteve Sakoman  * Total Size Environment - 256k
65*c57cca25SSteve Sakoman  * Malloc - add 256k
66*c57cca25SSteve Sakoman  */
67*c57cca25SSteve Sakoman #define CONFIG_ENV_SIZE			(256 << 10)
68*c57cca25SSteve Sakoman #define CONFIG_SYS_MALLOC_LEN		(CONFIG_ENV_SIZE + (256 << 10))
69*c57cca25SSteve Sakoman #define CONFIG_SYS_GBL_DATA_SIZE	128	/* bytes reserved for */
70*c57cca25SSteve Sakoman 						/* initial data */
71*c57cca25SSteve Sakoman /* Vector Base */
72*c57cca25SSteve Sakoman #define CONFIG_SYS_CA9_VECTOR_BASE	SRAM_ROM_VECT_BASE
73*c57cca25SSteve Sakoman 
74*c57cca25SSteve Sakoman /*
75*c57cca25SSteve Sakoman  * Hardware drivers
76*c57cca25SSteve Sakoman  */
77*c57cca25SSteve Sakoman 
78*c57cca25SSteve Sakoman /*
79*c57cca25SSteve Sakoman  * serial port - NS16550 compatible
80*c57cca25SSteve Sakoman  */
81*c57cca25SSteve Sakoman #define V_NS16550_CLK			48000000
82*c57cca25SSteve Sakoman 
83*c57cca25SSteve Sakoman #define CONFIG_SYS_NS16550
84*c57cca25SSteve Sakoman #define CONFIG_SYS_NS16550_SERIAL
85*c57cca25SSteve Sakoman #define CONFIG_SYS_NS16550_REG_SIZE	(-4)
86*c57cca25SSteve Sakoman #define CONFIG_SYS_NS16550_CLK		V_NS16550_CLK
87*c57cca25SSteve Sakoman #define CONFIG_CONS_INDEX		3
88*c57cca25SSteve Sakoman #define CONFIG_SYS_NS16550_COM3		UART3_BASE
89*c57cca25SSteve Sakoman 
90*c57cca25SSteve Sakoman #define CONFIG_ENV_IS_NOWHERE
91*c57cca25SSteve Sakoman #define CONFIG_ENV_OVERWRITE
92*c57cca25SSteve Sakoman #define CONFIG_BAUDRATE			115200
93*c57cca25SSteve Sakoman #define CONFIG_SYS_BAUDRATE_TABLE	{4800, 9600, 19200, 38400, 57600,\
94*c57cca25SSteve Sakoman 					115200}
95*c57cca25SSteve Sakoman 
96*c57cca25SSteve Sakoman /* I2C  */
97*c57cca25SSteve Sakoman #define CONFIG_HARD_I2C			1
98*c57cca25SSteve Sakoman #define CONFIG_SYS_I2C_SPEED		100000
99*c57cca25SSteve Sakoman #define CONFIG_SYS_I2C_SLAVE		1
100*c57cca25SSteve Sakoman #define CONFIG_SYS_I2C_BUS		0
101*c57cca25SSteve Sakoman #define CONFIG_SYS_I2C_BUS_SELECT	1
102*c57cca25SSteve Sakoman #define CONFIG_DRIVER_OMAP34XX_I2C	1
103*c57cca25SSteve Sakoman #define CONFIG_I2C_MULTI_BUS		1
104*c57cca25SSteve Sakoman 
105*c57cca25SSteve Sakoman /* MMC */
106*c57cca25SSteve Sakoman #define CONFIG_MMC			1
107*c57cca25SSteve Sakoman #define CONFIG_OMAP3_MMC		1
108*c57cca25SSteve Sakoman #define CONFIG_SYS_MMC_SET_DEV		1
109*c57cca25SSteve Sakoman #define CONFIG_DOS_PARTITION		1
110*c57cca25SSteve Sakoman 
111*c57cca25SSteve Sakoman /* Flash */
112*c57cca25SSteve Sakoman #define CONFIG_SYS_NO_FLASH	1
113*c57cca25SSteve Sakoman 
114*c57cca25SSteve Sakoman /* commands to include */
115*c57cca25SSteve Sakoman #include <config_cmd_default.h>
116*c57cca25SSteve Sakoman 
117*c57cca25SSteve Sakoman /* Enabled commands */
118*c57cca25SSteve Sakoman #define CONFIG_CMD_EXT2		/* EXT2 Support                 */
119*c57cca25SSteve Sakoman #define CONFIG_CMD_FAT		/* FAT support                  */
120*c57cca25SSteve Sakoman #define CONFIG_CMD_I2C		/* I2C serial bus support	*/
121*c57cca25SSteve Sakoman #define CONFIG_CMD_MMC		/* MMC support                  */
122*c57cca25SSteve Sakoman 
123*c57cca25SSteve Sakoman /* Disabled commands */
124*c57cca25SSteve Sakoman #undef CONFIG_CMD_NET
125*c57cca25SSteve Sakoman #undef CONFIG_CMD_FPGA		/* FPGA configuration Support   */
126*c57cca25SSteve Sakoman #undef CONFIG_CMD_IMLS		/* List all found images        */
127*c57cca25SSteve Sakoman 
128*c57cca25SSteve Sakoman /*
129*c57cca25SSteve Sakoman  * Enabling relocation of u-boot by default
130*c57cca25SSteve Sakoman  * Relocation can be skipped if u-boot is copied to the TEXT_BASE
131*c57cca25SSteve Sakoman  */
132*c57cca25SSteve Sakoman #undef CONFIG_SKIP_RELOCATE_UBOOT
133*c57cca25SSteve Sakoman 
134*c57cca25SSteve Sakoman /*
135*c57cca25SSteve Sakoman  * Environment setup
136*c57cca25SSteve Sakoman  */
137*c57cca25SSteve Sakoman 
138*c57cca25SSteve Sakoman /* allow overwriting serial config and ethaddr */
139*c57cca25SSteve Sakoman #define CONFIG_ENV_OVERWRITE
140*c57cca25SSteve Sakoman 
141*c57cca25SSteve Sakoman #define CONFIG_EXTRA_ENV_SETTINGS \
142*c57cca25SSteve Sakoman 	"loadaddr=0x82000000\0" \
143*c57cca25SSteve Sakoman 	"console=ttyS2,115200n8\0" \
144*c57cca25SSteve Sakoman 	"mmcdev=1\0" \
145*c57cca25SSteve Sakoman 	"mmcroot=/dev/mmcblk0p2 rw\0" \
146*c57cca25SSteve Sakoman 	"mmcrootfstype=ext3 rootwait\0" \
147*c57cca25SSteve Sakoman 	"mmcargs=setenv bootargs console=${console} " \
148*c57cca25SSteve Sakoman 		"root=${mmcroot} " \
149*c57cca25SSteve Sakoman 		"rootfstype=${mmcrootfstype}\0" \
150*c57cca25SSteve Sakoman 	"loadbootscript=fatload mmc ${mmcdev} ${loadaddr} boot.scr\0" \
151*c57cca25SSteve Sakoman 	"bootscript=echo Running bootscript from mmc${mmcdev} ...; " \
152*c57cca25SSteve Sakoman 		"source ${loadaddr}\0" \
153*c57cca25SSteve Sakoman 	"loaduimage=fatload mmc ${mmcdev} ${loadaddr} uImage\0" \
154*c57cca25SSteve Sakoman 	"mmcboot=echo Booting from mmc${mmcdev} ...; " \
155*c57cca25SSteve Sakoman 		"run mmcargs; " \
156*c57cca25SSteve Sakoman 		"bootm ${loadaddr}\0" \
157*c57cca25SSteve Sakoman 
158*c57cca25SSteve Sakoman #define CONFIG_BOOTCOMMAND \
159*c57cca25SSteve Sakoman 	"if mmc init ${mmcdev}; then " \
160*c57cca25SSteve Sakoman 		"if run loadbootscript; then " \
161*c57cca25SSteve Sakoman 			"run bootscript; " \
162*c57cca25SSteve Sakoman 		"else " \
163*c57cca25SSteve Sakoman 			"if run loaduimage; then " \
164*c57cca25SSteve Sakoman 				"run mmcboot; " \
165*c57cca25SSteve Sakoman 			"else run nandboot; " \
166*c57cca25SSteve Sakoman 			"fi; " \
167*c57cca25SSteve Sakoman 		"fi; " \
168*c57cca25SSteve Sakoman 	"fi"
169*c57cca25SSteve Sakoman 
170*c57cca25SSteve Sakoman #define CONFIG_AUTO_COMPLETE		1
171*c57cca25SSteve Sakoman 
172*c57cca25SSteve Sakoman /*
173*c57cca25SSteve Sakoman  * Miscellaneous configurable options
174*c57cca25SSteve Sakoman  */
175*c57cca25SSteve Sakoman 
176*c57cca25SSteve Sakoman #define CONFIG_SYS_LONGHELP	/* undef to save memory */
177*c57cca25SSteve Sakoman #define CONFIG_SYS_HUSH_PARSER	/* use "hush" command parser */
178*c57cca25SSteve Sakoman #define CONFIG_SYS_PROMPT_HUSH_PS2	"> "
179*c57cca25SSteve Sakoman #define CONFIG_SYS_PROMPT		"Panda # "
180*c57cca25SSteve Sakoman #define CONFIG_SYS_CBSIZE		256
181*c57cca25SSteve Sakoman /* Print Buffer Size */
182*c57cca25SSteve Sakoman #define CONFIG_SYS_PBSIZE		(CONFIG_SYS_CBSIZE + \
183*c57cca25SSteve Sakoman 					sizeof(CONFIG_SYS_PROMPT) + 16)
184*c57cca25SSteve Sakoman #define CONFIG_SYS_MAXARGS		16
185*c57cca25SSteve Sakoman /* Boot Argument Buffer Size */
186*c57cca25SSteve Sakoman #define CONFIG_SYS_BARGSIZE		(CONFIG_SYS_CBSIZE)
187*c57cca25SSteve Sakoman 
188*c57cca25SSteve Sakoman /*
189*c57cca25SSteve Sakoman  * memtest setup
190*c57cca25SSteve Sakoman  */
191*c57cca25SSteve Sakoman #define CONFIG_SYS_MEMTEST_START	0x80000000
192*c57cca25SSteve Sakoman #define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_MEMTEST_START + (32 << 20))
193*c57cca25SSteve Sakoman 
194*c57cca25SSteve Sakoman /* Default load address */
195*c57cca25SSteve Sakoman #define CONFIG_SYS_LOAD_ADDR		0x80000000
196*c57cca25SSteve Sakoman 
197*c57cca25SSteve Sakoman /* Use General purpose timer 1 */
198*c57cca25SSteve Sakoman #define CONFIG_SYS_TIMERBASE		GPT1_BASE
199*c57cca25SSteve Sakoman #define CONFIG_SYS_PTV			2	/* Divisor: 2^(PTV+1) => 8 */
200*c57cca25SSteve Sakoman #define CONFIG_SYS_HZ			1000
201*c57cca25SSteve Sakoman 
202*c57cca25SSteve Sakoman /*
203*c57cca25SSteve Sakoman  * Stack sizes
204*c57cca25SSteve Sakoman  *
205*c57cca25SSteve Sakoman  * The stack sizes are set up in start.S using the settings below
206*c57cca25SSteve Sakoman  */
207*c57cca25SSteve Sakoman #define CONFIG_STACKSIZE	(128 << 10)	/* Regular stack */
208*c57cca25SSteve Sakoman #ifdef CONFIG_USE_IRQ
209*c57cca25SSteve Sakoman #define CONFIG_STACKSIZE_IRQ	(4 << 10)	/* IRQ stack */
210*c57cca25SSteve Sakoman #define CONFIG_STACKSIZE_FIQ	(4 << 10)	/* FIQ stack */
211*c57cca25SSteve Sakoman #endif
212*c57cca25SSteve Sakoman 
213*c57cca25SSteve Sakoman /*
214*c57cca25SSteve Sakoman  * SDRAM Memory Map
215*c57cca25SSteve Sakoman  * Even though we use two CS all the memory
216*c57cca25SSteve Sakoman  * is mapped to one contiguous block
217*c57cca25SSteve Sakoman  */
218*c57cca25SSteve Sakoman #define CONFIG_NR_DRAM_BANKS	1
219*c57cca25SSteve Sakoman 
220*c57cca25SSteve Sakoman #endif /* __CONFIG_H */
221