blob: 3cd56dc4873db4a0e66399d49aa66d149dda1fcd [file] [log] [blame]
Vipin KUMARb0ea0892010-01-15 19:15:50 +05301/*
2 * (C) Copyright 2009
3 * Vipin Kumar, STMicroelectronics, <vipin.kumar@st.com>
4 *
5 * See file CREDITS for list of people who contributed to this
6 * project.
7 *
8 * This program is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU General Public License as
10 * published by the Free Software Foundation; either version 2 of
11 * the License, or (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, write to the Free Software
20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
21 * MA 02111-1307 USA
22 */
23
24#ifndef __CONFIG_H
25#define __CONFIG_H
26
27/*
28 * High Level Configuration Options
29 * (easy to change)
30 */
Wolfgang Denkdc25d152010-10-04 19:58:00 +020031#if defined(CONFIG_spear300)
Amit Virdi870d11e2012-05-07 13:07:02 +053032#define CONFIG_SPEAR3XX
33#define CONFIG_SPEAR300
Wolfgang Denkdc25d152010-10-04 19:58:00 +020034#elif defined(CONFIG_spear310)
Amit Virdi870d11e2012-05-07 13:07:02 +053035#define CONFIG_SPEAR3XX
36#define CONFIG_SPEAR310
Wolfgang Denkdc25d152010-10-04 19:58:00 +020037#elif defined(CONFIG_spear320)
Amit Virdi870d11e2012-05-07 13:07:02 +053038#define CONFIG_SPEAR3XX
39#define CONFIG_SPEAR320
Vipin KUMAR6e2998f2010-01-15 19:15:52 +053040#endif
Vipin KUMARb0ea0892010-01-15 19:15:50 +053041
Vipin KUMAR0c93dec2012-05-07 13:06:46 +053042#if defined(CONFIG_usbtty)
43#define CONFIG_SPEAR_USBTTY
44#endif
45
46#if defined(CONFIG_nand)
47#define CONFIG_ENV_IS_IN_NAND
48#else
49#define CONFIG_ENV_IS_IN_FLASH
50#endif
51
Vipin KUMARb0ea0892010-01-15 19:15:50 +053052#include <configs/spear-common.h>
53
Vipin KUMAR6b49f982012-05-07 13:06:42 +053054/* Ethernet driver configuration */
Amit Virdi870d11e2012-05-07 13:07:02 +053055#define CONFIG_DW_ALTDESCRIPTOR
Vipin KUMAR6b49f982012-05-07 13:06:42 +053056
Vipin KUMARa1dba022012-05-07 13:06:43 +053057#if defined(CONFIG_SPEAR310)
Amit Virdi870d11e2012-05-07 13:07:02 +053058#define CONFIG_MACB
Vipin KUMARa1dba022012-05-07 13:06:43 +053059#define CONFIG_MACB0_PHY 0x01
60#define CONFIG_MACB1_PHY 0x03
61#define CONFIG_MACB2_PHY 0x05
62#define CONFIG_MACB3_PHY 0x07
63
64#elif defined(CONFIG_SPEAR320)
Amit Virdi870d11e2012-05-07 13:07:02 +053065#define CONFIG_MACB
Vipin KUMARa1dba022012-05-07 13:06:43 +053066#define CONFIG_MACB0_PHY 0x01
67
68#endif
69
Vipin KUMARb0ea0892010-01-15 19:15:50 +053070/* Serial Configuration (PL011) */
71#define CONFIG_SYS_SERIAL0 0xD0000000
Vipin KUMAR6e2998f2010-01-15 19:15:52 +053072
73#if defined(CONFIG_SPEAR300)
Vipin KUMARb0ea0892010-01-15 19:15:50 +053074#define CONFIG_PL01x_PORTS {(void *)CONFIG_SYS_SERIAL0}
75
Vipin KUMAR6e2998f2010-01-15 19:15:52 +053076#elif defined(CONFIG_SPEAR310)
77
78#if (CONFIG_CONS_INDEX)
79#undef CONFIG_PL011_CLOCK
80#define CONFIG_PL011_CLOCK (83 * 1000 * 1000)
81#endif
82
83#define CONFIG_SYS_SERIAL1 0xB2000000
84#define CONFIG_SYS_SERIAL2 0xB2080000
85#define CONFIG_SYS_SERIAL3 0xB2100000
86#define CONFIG_SYS_SERIAL4 0xB2180000
87#define CONFIG_SYS_SERIAL5 0xB2200000
88#define CONFIG_PL01x_PORTS {(void *)CONFIG_SYS_SERIAL0, \
89 (void *)CONFIG_SYS_SERIAL1, \
90 (void *)CONFIG_SYS_SERIAL2, \
91 (void *)CONFIG_SYS_SERIAL3, \
92 (void *)CONFIG_SYS_SERIAL4, \
93 (void *)CONFIG_SYS_SERIAL5 }
Vipin KUMARcc0da712010-01-15 19:15:53 +053094#elif defined(CONFIG_SPEAR320)
95
96#if (CONFIG_CONS_INDEX)
97#undef CONFIG_PL011_CLOCK
98#define CONFIG_PL011_CLOCK (83 * 1000 * 1000)
Vipin KUMAR6e2998f2010-01-15 19:15:52 +053099#endif
100
Vipin KUMARcc0da712010-01-15 19:15:53 +0530101#define CONFIG_SYS_SERIAL1 0xA3000000
102#define CONFIG_SYS_SERIAL2 0xA4000000
103#define CONFIG_PL01x_PORTS {(void *)CONFIG_SYS_SERIAL0, \
104 (void *)CONFIG_SYS_SERIAL1, \
105 (void *)CONFIG_SYS_SERIAL2 }
106#endif
107
Vipin KUMAR6e2998f2010-01-15 19:15:52 +0530108#if defined(CONFIG_SPEAR_EMI)
109
110#define CONFIG_SYS_FLASH_CFI
111#define CONFIG_FLASH_CFI_DRIVER
112
113#if defined(CONFIG_SPEAR310)
Vipin Kumar6e051e92012-05-07 13:06:54 +0530114#define CONFIG_SYS_FLASH_PROTECTION
Vipin KUMAR6e2998f2010-01-15 19:15:52 +0530115#define CONFIG_SYS_FLASH_BASE 0x50000000
116#define CONFIG_SYS_CS1_FLASH_BASE 0x60000000
117#define CONFIG_SYS_CS2_FLASH_BASE 0x70000000
118#define CONFIG_SYS_CS3_FLASH_BASE 0x80000000
119#define CONFIG_SYS_CS4_FLASH_BASE 0x90000000
120#define CONFIG_SYS_CS5_FLASH_BASE 0xA0000000
121#define CONFIG_SYS_FLASH_BANKS_LIST { CONFIG_SYS_FLASH_BASE, \
122 CONFIG_SYS_CS1_FLASH_BASE, \
123 CONFIG_SYS_CS2_FLASH_BASE, \
124 CONFIG_SYS_CS3_FLASH_BASE, \
125 CONFIG_SYS_CS4_FLASH_BASE, \
126 CONFIG_SYS_CS5_FLASH_BASE }
127#define CONFIG_SYS_MAX_FLASH_BANKS 6
128
Vipin KUMARcc0da712010-01-15 19:15:53 +0530129#elif defined(CONFIG_SPEAR320)
Vipin Kumar6e051e92012-05-07 13:06:54 +0530130#define CONFIG_SYS_FLASH_PROTECTION
Vipin KUMARcc0da712010-01-15 19:15:53 +0530131#define CONFIG_SYS_FLASH_BASE 0x44000000
132#define CONFIG_SYS_CS1_FLASH_BASE 0x45000000
133#define CONFIG_SYS_CS2_FLASH_BASE 0x46000000
134#define CONFIG_SYS_CS3_FLASH_BASE 0x47000000
135#define CONFIG_SYS_FLASH_BANKS_LIST { CONFIG_SYS_FLASH_BASE, \
136 CONFIG_SYS_CS1_FLASH_BASE, \
137 CONFIG_SYS_CS2_FLASH_BASE, \
138 CONFIG_SYS_CS3_FLASH_BASE }
139#define CONFIG_SYS_MAX_FLASH_BANKS 4
140
Vipin KUMAR6e2998f2010-01-15 19:15:52 +0530141#endif
142
143#define CONFIG_SYS_MAX_FLASH_SECT (127 + 8)
Amit Virdi870d11e2012-05-07 13:07:02 +0530144#define CONFIG_SYS_FLASH_QUIET_TEST
Vipin KUMAR6e2998f2010-01-15 19:15:52 +0530145
146#endif
147
Vipin KUMARf1bd24e2012-05-22 00:15:55 +0000148/* NAND flash configuration */
149#define CONFIG_SYS_FSMC_NAND_SP
150#define CONFIG_SYS_FSMC_NAND_8BIT
151
Vipin KUMAR6e2998f2010-01-15 19:15:52 +0530152#if defined(CONFIG_SPEAR300)
Amit Virdi9ee8d632012-05-07 13:07:01 +0530153#define CONFIG_SYS_NAND_BASE 0x80000000
Vipin KUMARb0ea0892010-01-15 19:15:50 +0530154
Vipin KUMAR6e2998f2010-01-15 19:15:52 +0530155#elif defined(CONFIG_SPEAR310)
Amit Virdi9ee8d632012-05-07 13:07:01 +0530156#define CONFIG_SYS_NAND_BASE 0x40000000
Vipin KUMAR6e2998f2010-01-15 19:15:52 +0530157
Vipin KUMARcc0da712010-01-15 19:15:53 +0530158#elif defined(CONFIG_SPEAR320)
Amit Virdi9ee8d632012-05-07 13:07:01 +0530159#define CONFIG_SYS_NAND_BASE 0x50000000
Vipin KUMARcc0da712010-01-15 19:15:53 +0530160
Vipin KUMAR6e2998f2010-01-15 19:15:52 +0530161#endif
162
Vipin KUMARc54105b2012-05-07 13:06:48 +0530163/* Environment Settings */
164#if defined(CONFIG_SPEAR300)
165#define CONFIG_EXTRA_ENV_SETTINGS CONFIG_EXTRA_ENV_USBTTY
166
167#elif defined(CONFIG_SPEAR310) || defined(CONFIG_SPEAR320)
168#define CONFIG_EXTRA_ENV_UNLOCK "unlock=yes\0"
169#define CONFIG_EXTRA_ENV_SETTINGS CONFIG_EXTRA_ENV_USBTTY \
170 CONFIG_EXTRA_ENV_UNLOCK
171#endif
172
Vipin KUMARb0ea0892010-01-15 19:15:50 +0530173#endif /* __CONFIG_H */