Merge git://git.denx.de/u-boot-sunxi
[platform/kernel/u-boot.git] / include / configs / spear3xx_evb.h
1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * (C) Copyright 2009
4  * Vipin Kumar, STMicroelectronics, <vipin.kumar@st.com>
5  */
6
7 #ifndef __CONFIG_H
8 #define __CONFIG_H
9
10 /*
11  * High Level Configuration Options
12  * (easy to change)
13  */
14 #if defined(CONFIG_SPEAR300)
15 #define CONFIG_SPEAR3XX
16 #elif defined(CONFIG_SPEAR310)
17 #define CONFIG_SPEAR3XX
18 #elif defined(CONFIG_SPEAR320)
19 #define CONFIG_SPEAR3XX
20 #endif
21
22 #if defined(CONFIG_USBTTY)
23 #define CONFIG_SPEAR_USBTTY
24 #endif
25
26 #include <configs/spear-common.h>
27
28 /* Ethernet driver configuration */
29 #define CONFIG_DW_ALTDESCRIPTOR
30
31 #if defined(CONFIG_SPEAR310)
32 #define CONFIG_MACB
33 #define CONFIG_MACB0_PHY                        0x01
34 #define CONFIG_MACB1_PHY                        0x03
35 #define CONFIG_MACB2_PHY                        0x05
36 #define CONFIG_MACB3_PHY                        0x07
37
38 #elif defined(CONFIG_SPEAR320)
39 #define CONFIG_MACB
40 #define CONFIG_MACB0_PHY                        0x01
41
42 #endif
43
44 /* Serial Configuration (PL011) */
45 #define CONFIG_SYS_SERIAL0                      0xD0000000
46
47 #if defined(CONFIG_SPEAR300)
48 #define CONFIG_PL01x_PORTS                      {(void *)CONFIG_SYS_SERIAL0}
49
50 #elif defined(CONFIG_SPEAR310)
51
52 #if (CONFIG_CONS_INDEX)
53 #undef  CONFIG_PL011_CLOCK
54 #define CONFIG_PL011_CLOCK                      (83 * 1000 * 1000)
55 #endif
56
57 #define CONFIG_SYS_SERIAL1                      0xB2000000
58 #define CONFIG_SYS_SERIAL2                      0xB2080000
59 #define CONFIG_SYS_SERIAL3                      0xB2100000
60 #define CONFIG_SYS_SERIAL4                      0xB2180000
61 #define CONFIG_SYS_SERIAL5                      0xB2200000
62 #define CONFIG_PL01x_PORTS                      {(void *)CONFIG_SYS_SERIAL0, \
63                                                 (void *)CONFIG_SYS_SERIAL1, \
64                                                 (void *)CONFIG_SYS_SERIAL2, \
65                                                 (void *)CONFIG_SYS_SERIAL3, \
66                                                 (void *)CONFIG_SYS_SERIAL4, \
67                                                 (void *)CONFIG_SYS_SERIAL5 }
68 #elif defined(CONFIG_SPEAR320)
69
70 #if (CONFIG_CONS_INDEX)
71 #undef  CONFIG_PL011_CLOCK
72 #define CONFIG_PL011_CLOCK                      (83 * 1000 * 1000)
73 #endif
74
75 #define CONFIG_SYS_SERIAL1                      0xA3000000
76 #define CONFIG_SYS_SERIAL2                      0xA4000000
77 #define CONFIG_PL01x_PORTS                      {(void *)CONFIG_SYS_SERIAL0, \
78                                                 (void *)CONFIG_SYS_SERIAL1, \
79                                                 (void *)CONFIG_SYS_SERIAL2 }
80 #endif
81
82 #if defined(CONFIG_SPEAR_EMI)
83
84 #define CONFIG_SYS_FLASH_CFI
85 #define CONFIG_FLASH_CFI_DRIVER
86
87 #if defined(CONFIG_SPEAR310)
88 #define CONFIG_SYS_FLASH_PROTECTION
89 #define CONFIG_SYS_FLASH_BASE                   0x50000000
90 #define CONFIG_SYS_CS1_FLASH_BASE               0x60000000
91 #define CONFIG_SYS_CS2_FLASH_BASE               0x70000000
92 #define CONFIG_SYS_CS3_FLASH_BASE               0x80000000
93 #define CONFIG_SYS_CS4_FLASH_BASE               0x90000000
94 #define CONFIG_SYS_CS5_FLASH_BASE               0xA0000000
95 #define CONFIG_SYS_FLASH_BANKS_LIST             { CONFIG_SYS_FLASH_BASE,   \
96                                                 CONFIG_SYS_CS1_FLASH_BASE, \
97                                                 CONFIG_SYS_CS2_FLASH_BASE, \
98                                                 CONFIG_SYS_CS3_FLASH_BASE, \
99                                                 CONFIG_SYS_CS4_FLASH_BASE, \
100                                                 CONFIG_SYS_CS5_FLASH_BASE }
101 #define CONFIG_SYS_MAX_FLASH_BANKS              6
102
103 #elif defined(CONFIG_SPEAR320)
104 #define CONFIG_SYS_FLASH_PROTECTION
105 #define CONFIG_SYS_FLASH_BASE                   0x44000000
106 #define CONFIG_SYS_CS1_FLASH_BASE               0x45000000
107 #define CONFIG_SYS_CS2_FLASH_BASE               0x46000000
108 #define CONFIG_SYS_CS3_FLASH_BASE               0x47000000
109 #define CONFIG_SYS_FLASH_BANKS_LIST             { CONFIG_SYS_FLASH_BASE,   \
110                                                 CONFIG_SYS_CS1_FLASH_BASE, \
111                                                 CONFIG_SYS_CS2_FLASH_BASE, \
112                                                 CONFIG_SYS_CS3_FLASH_BASE }
113 #define CONFIG_SYS_MAX_FLASH_BANKS              4
114
115 #endif
116
117 #define CONFIG_SYS_MAX_FLASH_SECT               (127 + 8)
118 #define CONFIG_SYS_FLASH_QUIET_TEST
119
120 #endif
121
122 /* NAND flash configuration */
123 #define CONFIG_SYS_FSMC_NAND_SP
124 #define CONFIG_SYS_FSMC_NAND_8BIT
125
126 #if defined(CONFIG_SPEAR300)
127 #define CONFIG_SYS_NAND_BASE                    0x80000000
128
129 #elif defined(CONFIG_SPEAR310)
130 #define CONFIG_SYS_NAND_BASE                    0x40000000
131
132 #elif defined(CONFIG_SPEAR320)
133 #define CONFIG_SYS_NAND_BASE                    0x50000000
134
135 #endif
136
137 /* Environment Settings */
138 #if defined(CONFIG_SPEAR300)
139 #define CONFIG_EXTRA_ENV_SETTINGS              CONFIG_EXTRA_ENV_USBTTY
140
141 #elif defined(CONFIG_SPEAR310) || defined(CONFIG_SPEAR320)
142 #define CONFIG_EXTRA_ENV_UNLOCK                        "unlock=yes\0"
143 #define CONFIG_EXTRA_ENV_SETTINGS              CONFIG_EXTRA_ENV_USBTTY \
144                                                 CONFIG_EXTRA_ENV_UNLOCK
145 #endif
146
147 #endif  /* __CONFIG_H */