xref: /openbmc/u-boot/include/configs/origen.h (revision b9a1ef21)
1*b9a1ef21SChander Kashyap /*
2*b9a1ef21SChander Kashyap  * Copyright (C) 2011 Samsung Electronics
3*b9a1ef21SChander Kashyap  *
4*b9a1ef21SChander Kashyap  * Configuration settings for the SAMSUNG ORIGEN (S5PV310) board.
5*b9a1ef21SChander Kashyap  *
6*b9a1ef21SChander Kashyap  * See file CREDITS for list of people who contributed to this
7*b9a1ef21SChander Kashyap  * project.
8*b9a1ef21SChander Kashyap  *
9*b9a1ef21SChander Kashyap  * This program is free software; you can redistribute it and/or
10*b9a1ef21SChander Kashyap  * modify it under the terms of the GNU General Public License as
11*b9a1ef21SChander Kashyap  * published by the Free Software Foundation; either version 2 of
12*b9a1ef21SChander Kashyap  * the License, or (at your option) any later version.
13*b9a1ef21SChander Kashyap  *
14*b9a1ef21SChander Kashyap  * This program is distributed in the hope that it will be useful,
15*b9a1ef21SChander Kashyap  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16*b9a1ef21SChander Kashyap  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17*b9a1ef21SChander Kashyap  * GNU General Public License for more details.
18*b9a1ef21SChander Kashyap  *
19*b9a1ef21SChander Kashyap  * You should have received a copy of the GNU General Public License
20*b9a1ef21SChander Kashyap  * along with this program; if not, write to the Free Software
21*b9a1ef21SChander Kashyap  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
22*b9a1ef21SChander Kashyap  * MA 02111-1307 USA
23*b9a1ef21SChander Kashyap  */
24*b9a1ef21SChander Kashyap 
25*b9a1ef21SChander Kashyap #ifndef __CONFIG_H
26*b9a1ef21SChander Kashyap #define __CONFIG_H
27*b9a1ef21SChander Kashyap 
28*b9a1ef21SChander Kashyap /* High Level Configuration Options */
29*b9a1ef21SChander Kashyap #define CONFIG_SAMSUNG			1	/* SAMSUNG core */
30*b9a1ef21SChander Kashyap #define CONFIG_S5P			1	/* S5P Family */
31*b9a1ef21SChander Kashyap #define CONFIG_S5PC210			1	/* which is in a S5PC210 SoC */
32*b9a1ef21SChander Kashyap #define CONFIG_ORIGEN			1	/* working with ORIGEN*/
33*b9a1ef21SChander Kashyap 
34*b9a1ef21SChander Kashyap #include <asm/arch/cpu.h>		/* get chip and board defs */
35*b9a1ef21SChander Kashyap 
36*b9a1ef21SChander Kashyap #define CONFIG_ARCH_CPU_INIT
37*b9a1ef21SChander Kashyap #define CONFIG_DISPLAY_CPUINFO
38*b9a1ef21SChander Kashyap #define CONFIG_DISPLAY_BOARDINFO
39*b9a1ef21SChander Kashyap 
40*b9a1ef21SChander Kashyap /* Keep L2 Cache Disabled */
41*b9a1ef21SChander Kashyap #define CONFIG_L2_OFF			1
42*b9a1ef21SChander Kashyap #define CONFIG_SYS_DCACHE_OFF		1
43*b9a1ef21SChander Kashyap 
44*b9a1ef21SChander Kashyap #define CONFIG_SYS_SDRAM_BASE		0x40000000
45*b9a1ef21SChander Kashyap #define CONFIG_SYS_TEXT_BASE		0x43E00000
46*b9a1ef21SChander Kashyap 
47*b9a1ef21SChander Kashyap /* input clock of PLL: ORIGEN has 24MHz input clock */
48*b9a1ef21SChander Kashyap #define CONFIG_SYS_CLK_FREQ		24000000
49*b9a1ef21SChander Kashyap 
50*b9a1ef21SChander Kashyap #define CONFIG_SETUP_MEMORY_TAGS
51*b9a1ef21SChander Kashyap #define CONFIG_CMDLINE_TAG
52*b9a1ef21SChander Kashyap #define CONFIG_INITRD_TAG
53*b9a1ef21SChander Kashyap #define CONFIG_CMDLINE_EDITING
54*b9a1ef21SChander Kashyap 
55*b9a1ef21SChander Kashyap /* MACH_TYPE_ORIGEN macro will be removed once added to mach-types */
56*b9a1ef21SChander Kashyap #define MACH_TYPE_ORIGEN		3455
57*b9a1ef21SChander Kashyap #define CONFIG_MACH_TYPE		MACH_TYPE_ORIGEN
58*b9a1ef21SChander Kashyap 
59*b9a1ef21SChander Kashyap /* Power Down Modes */
60*b9a1ef21SChander Kashyap #define S5P_CHECK_SLEEP			0x00000BAD
61*b9a1ef21SChander Kashyap #define S5P_CHECK_DIDLE			0xBAD00000
62*b9a1ef21SChander Kashyap #define S5P_CHECK_LPA			0xABAD0000
63*b9a1ef21SChander Kashyap 
64*b9a1ef21SChander Kashyap /* Size of malloc() pool */
65*b9a1ef21SChander Kashyap #define CONFIG_SYS_MALLOC_LEN		(CONFIG_ENV_SIZE + (1 << 20))
66*b9a1ef21SChander Kashyap 
67*b9a1ef21SChander Kashyap /* select serial console configuration */
68*b9a1ef21SChander Kashyap #define CONFIG_SERIAL_MULTI		1
69*b9a1ef21SChander Kashyap #define CONFIG_SERIAL2			1	/* use SERIAL 2 */
70*b9a1ef21SChander Kashyap #define CONFIG_BAUDRATE			115200
71*b9a1ef21SChander Kashyap #define S5PC210_DEFAULT_UART_OFFSET	0x020000
72*b9a1ef21SChander Kashyap 
73*b9a1ef21SChander Kashyap /* SD/MMC configuration */
74*b9a1ef21SChander Kashyap #define CONFIG_GENERIC_MMC		1
75*b9a1ef21SChander Kashyap #define CONFIG_MMC			1
76*b9a1ef21SChander Kashyap #define CONFIG_S5P_MMC			1
77*b9a1ef21SChander Kashyap 
78*b9a1ef21SChander Kashyap /* PWM */
79*b9a1ef21SChander Kashyap #define CONFIG_PWM			1
80*b9a1ef21SChander Kashyap 
81*b9a1ef21SChander Kashyap /* allow to overwrite serial and ethaddr */
82*b9a1ef21SChander Kashyap #define CONFIG_ENV_OVERWRITE
83*b9a1ef21SChander Kashyap 
84*b9a1ef21SChander Kashyap /* Command definition*/
85*b9a1ef21SChander Kashyap #include <config_cmd_default.h>
86*b9a1ef21SChander Kashyap 
87*b9a1ef21SChander Kashyap #define CONFIG_CMD_PING
88*b9a1ef21SChander Kashyap #define CONFIG_CMD_ELF
89*b9a1ef21SChander Kashyap #define CONFIG_CMD_DHCP
90*b9a1ef21SChander Kashyap #define CONFIG_CMD_MMC
91*b9a1ef21SChander Kashyap #define CONFIG_CMD_FAT
92*b9a1ef21SChander Kashyap #undef CONFIG_CMD_NET
93*b9a1ef21SChander Kashyap #undef CONFIG_CMD_NFS
94*b9a1ef21SChander Kashyap 
95*b9a1ef21SChander Kashyap #define CONFIG_BOOTDELAY		3
96*b9a1ef21SChander Kashyap #define CONFIG_ZERO_BOOTDELAY_CHECK
97*b9a1ef21SChander Kashyap 
98*b9a1ef21SChander Kashyap #define CONFIG_BOOTCOMMAND	"fatload mmc 0 40007000 uImage; bootm 40007000"
99*b9a1ef21SChander Kashyap 
100*b9a1ef21SChander Kashyap /* Miscellaneous configurable options */
101*b9a1ef21SChander Kashyap #define CONFIG_SYS_LONGHELP		/* undef to save memory */
102*b9a1ef21SChander Kashyap #define CONFIG_SYS_HUSH_PARSER		/* use "hush" command parser	*/
103*b9a1ef21SChander Kashyap #define CONFIG_SYS_PROMPT_HUSH_PS2	"> "
104*b9a1ef21SChander Kashyap #define CONFIG_SYS_PROMPT		"ORIGEN # "
105*b9a1ef21SChander Kashyap #define CONFIG_SYS_CBSIZE		256	/* Console I/O Buffer Size*/
106*b9a1ef21SChander Kashyap #define CONFIG_SYS_PBSIZE		384	/* Print Buffer Size */
107*b9a1ef21SChander Kashyap #define CONFIG_SYS_MAXARGS		16	/* max number of command args */
108*b9a1ef21SChander Kashyap #define CONFIG_DEFAULT_CONSOLE		"console=ttySAC2,115200n8\0"
109*b9a1ef21SChander Kashyap /* Boot Argument Buffer Size */
110*b9a1ef21SChander Kashyap #define CONFIG_SYS_BARGSIZE		CONFIG_SYS_CBSIZE
111*b9a1ef21SChander Kashyap /* memtest works on */
112*b9a1ef21SChander Kashyap #define CONFIG_SYS_MEMTEST_START	CONFIG_SYS_SDRAM_BASE
113*b9a1ef21SChander Kashyap #define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_SDRAM_BASE + 0x6000000)
114*b9a1ef21SChander Kashyap #define CONFIG_SYS_LOAD_ADDR		(CONFIG_SYS_SDRAM_BASE + 0x3E00000)
115*b9a1ef21SChander Kashyap 
116*b9a1ef21SChander Kashyap #define CONFIG_SYS_HZ			1000
117*b9a1ef21SChander Kashyap 
118*b9a1ef21SChander Kashyap /* valid baudrates */
119*b9a1ef21SChander Kashyap #define CONFIG_SYS_BAUDRATE_TABLE	{ 9600, 19200, 38400, 57600, 115200 }
120*b9a1ef21SChander Kashyap 
121*b9a1ef21SChander Kashyap /* Stack sizes */
122*b9a1ef21SChander Kashyap #define CONFIG_STACKSIZE		(256 << 10)	/* 256KB */
123*b9a1ef21SChander Kashyap 
124*b9a1ef21SChander Kashyap /* ORIGEN has 4 bank of DRAM */
125*b9a1ef21SChander Kashyap #define CONFIG_NR_DRAM_BANKS	4
126*b9a1ef21SChander Kashyap #define SDRAM_BANK_SIZE		(256UL << 20UL)	/* 256 MB */
127*b9a1ef21SChander Kashyap #define PHYS_SDRAM_1		CONFIG_SYS_SDRAM_BASE
128*b9a1ef21SChander Kashyap #define PHYS_SDRAM_1_SIZE	SDRAM_BANK_SIZE
129*b9a1ef21SChander Kashyap #define PHYS_SDRAM_2		(CONFIG_SYS_SDRAM_BASE + SDRAM_BANK_SIZE)
130*b9a1ef21SChander Kashyap #define PHYS_SDRAM_2_SIZE	SDRAM_BANK_SIZE
131*b9a1ef21SChander Kashyap #define PHYS_SDRAM_3		(CONFIG_SYS_SDRAM_BASE + (2 * SDRAM_BANK_SIZE))
132*b9a1ef21SChander Kashyap #define PHYS_SDRAM_3_SIZE	SDRAM_BANK_SIZE
133*b9a1ef21SChander Kashyap #define PHYS_SDRAM_4		(CONFIG_SYS_SDRAM_BASE + (3 * SDRAM_BANK_SIZE))
134*b9a1ef21SChander Kashyap #define PHYS_SDRAM_4_SIZE	SDRAM_BANK_SIZE
135*b9a1ef21SChander Kashyap 
136*b9a1ef21SChander Kashyap /* FLASH and environment organization */
137*b9a1ef21SChander Kashyap #define CONFIG_SYS_NO_FLASH		1
138*b9a1ef21SChander Kashyap #undef CONFIG_CMD_IMLS
139*b9a1ef21SChander Kashyap #define CONFIG_IDENT_STRING		" for ORIGEN"
140*b9a1ef21SChander Kashyap 
141*b9a1ef21SChander Kashyap #ifdef CONFIG_USE_IRQ
142*b9a1ef21SChander Kashyap #define CONFIG_STACKSIZE_IRQ		(4*1024)	/* IRQ stack */
143*b9a1ef21SChander Kashyap #define CONFIG_STACKSIZE_FIQ		(4*1024)	/* FIQ stack */
144*b9a1ef21SChander Kashyap #endif
145*b9a1ef21SChander Kashyap 
146*b9a1ef21SChander Kashyap #define CONFIG_CLK_1000_400_200
147*b9a1ef21SChander Kashyap 
148*b9a1ef21SChander Kashyap /* MIU (Memory Interleaving Unit) */
149*b9a1ef21SChander Kashyap #define CONFIG_MIU_2BIT_21_7_INTERLEAVED
150*b9a1ef21SChander Kashyap 
151*b9a1ef21SChander Kashyap #define CONFIG_ENV_IS_IN_MMC		1
152*b9a1ef21SChander Kashyap #define CONFIG_SYS_MMC_ENV_DEV		0
153*b9a1ef21SChander Kashyap #define CONFIG_ENV_SIZE			(16 << 10)	/* 16 KB */
154*b9a1ef21SChander Kashyap #define RESERVE_BLOCK_SIZE		(512)
155*b9a1ef21SChander Kashyap #define BL1_SIZE			(16 << 10) /*16 K reserved for BL1*/
156*b9a1ef21SChander Kashyap #define CONFIG_ENV_OFFSET		(RESERVE_BLOCK_SIZE + BL1_SIZE)
157*b9a1ef21SChander Kashyap #define CONFIG_DOS_PARTITION		1
158*b9a1ef21SChander Kashyap 
159*b9a1ef21SChander Kashyap #define CONFIG_SYS_INIT_SP_ADDR	(CONFIG_SYS_LOAD_ADDR - GENERATED_GBL_DATA_SIZE)
160*b9a1ef21SChander Kashyap #endif	/* __CONFIG_H */
161