Merge branch 'master' of git://git.denx.de/u-boot-mpc85xx
[platform/kernel/u-boot.git] / include / configs / jadecpu.h
1 /*
2  * (C) Copyright 2010
3  * Matthias Weisser <weisserm@arcor.de>
4  *
5  * Configuation settings for the jadecpu board
6  *
7  * See file CREDITS for list of people who contributed to this
8  * project.
9  *
10  * This program is free software; you can redistribute it and/or
11  * modify it under the terms of the GNU General Public License as
12  * published by the Free Software Foundation; either version 2 of
13  * the License, or (at your option) any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  * GNU General Public License for more details.
19  *
20  * You should have received a copy of the GNU General Public License
21  * along with this program; if not, write to the Free Software
22  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
23  * MA 02111-1307 USA
24  */
25
26 #ifndef __CONFIG_H
27 #define __CONFIG_H
28
29 #define CONFIG_MB86R0x
30 #define CONFIG_MB86R0x_IOCLK    get_bus_freq(0)
31 #define CONFIG_SYS_HZ           1000
32 #define CONFIG_SYS_TEXT_BASE    0x10000000
33
34 #define CONFIG_ARM926EJS        1       /* This is an ARM926EJS Core    */
35 #undef CONFIG_USE_IRQ                   /* we don't need IRQ/FIQ stuff  */
36
37 #define CONFIG_USE_ARCH_MEMCPY
38 #define CONFIG_USE_ARCH_MEMSET
39
40 #define MACH_TYPE_JADECPU       2636
41
42 #define CONFIG_MACH_TYPE MACH_TYPE_JADECPU
43
44 /*
45  * Environment settings
46  */
47 #define CONFIG_EXTRA_ENV_SETTINGS \
48         "gs_fast_boot=setenv bootdelay 5\0" \
49         "gs_slow_boot=setenv bootdelay 10\0" \
50         "bootcmd=dcache off; mw.l 0x40000000 0 1024; usb start;" \
51                 "fatls usb 0; fatload usb 0 0x40000000 jadecpu-init.bin;" \
52                 "bootelf 0x40000000\0" \
53         ""
54
55 #define CONFIG_CMDLINE_TAG      1       /* enable passing of ATAGs      */
56 #define CONFIG_SETUP_MEMORY_TAGS 1
57 #define CONFIG_INITRD_TAG       1
58 #define CONFIG_BOARD_LATE_INIT
59
60 /*
61  * Compressions
62  */
63 #define CONFIG_LZO
64
65 /*
66  * Hardware drivers
67  */
68
69 /*
70  * Serial
71  */
72 #define CONFIG_SERIAL_MULTI
73 #define CONFIG_SYS_NS16550
74 #define CONFIG_SYS_NS16550_SERIAL
75 #define CONFIG_SYS_NS16550_REG_SIZE             (-4)
76 #define CONFIG_SYS_NS16550_CLK                  get_bus_freq(0)
77 #define CONFIG_SYS_NS16550_COM1                 0xfffe1000      /* UART 0 */
78 #define CONFIG_SYS_NS16550_COM2                 0xfff50000      /* UART 2 */
79 #define CONFIG_SYS_NS16550_COM3                 0xfff51000      /* UART 3 */
80 #define CONFIG_SYS_NS16550_COM4                 0xfff43000      /* UART 4 */
81
82 #define CONFIG_CONS_INDEX       4
83
84 /*
85  * Ethernet
86  */
87 #define CONFIG_SMC911X
88 #define CONFIG_SMC911X_BASE     0x02000000
89 #define CONFIG_SMC911X_16_BIT
90
91 /*
92  * Video
93  */
94 #define CONFIG_VIDEO
95 #define CONFIG_VIDEO_MB86R0xGDC
96 #define CONFIG_SYS_WHITE_ON_BLACK
97 #define CONFIG_CFB_CONSOLE
98 #define CONFIG_SYS_CONSOLE_IS_IN_ENV
99 #define CONFIG_SYS_CONSOLE_ENV_OVERWRITE
100 #define CONFIG_VIDEO_LOGO
101 #define CONFIG_SPLASH_SCREEN
102 #define CONFIG_SPLASH_SCREEN_ALIGN
103 #define CONFIG_VIDEO_BMP_LOGO
104 #define CONFIG_VIDEO_BMP_GZIP
105 #define CONFIG_VIDEO_BMP_RLE8
106 #define CONFIG_SYS_VIDEO_LOGO_MAX_SIZE  (800*480 + 256*4 + 10*1024)
107 #define VIDEO_FB_16BPP_WORD_SWAP
108 #define VIDEO_KBD_INIT_FCT              0
109 #define VIDEO_TSTC_FCT                  serial_tstc
110 #define VIDEO_GETC_FCT                  serial_getc
111
112 /*
113  * BOOTP options
114  */
115 #define CONFIG_BOOTP_BOOTFILESIZE       1
116 #define CONFIG_BOOTP_BOOTPATH           1
117 #define CONFIG_BOOTP_GATEWAY            1
118 #define CONFIG_BOOTP_HOSTNAME           1
119
120 /*
121  * Command line configuration.
122  */
123 #include <config_cmd_default.h>
124 #undef CONFIG_CMD_BDI
125 #undef CONFIG_CMD_FPGA
126 #undef CONFIG_CMD_IMLS
127 #undef CONFIG_CMD_LOADS
128 #undef CONFIG_CMD_SOURCE
129 #undef CONFIG_CMD_NFS
130 #undef CONFIG_CMD_XIMG
131
132 #define CONFIG_CMD_BMP
133 #define CONFIG_CMD_DHCP
134 #define CONFIG_CMD_ELF
135 #define CONFIG_CMD_FAT
136 #define CONFIG_CMD_PING
137 #define CONFIG_CMD_USB
138 #define CONFIG_CMD_CACHE
139
140 #define CONFIG_SYS_HUSH_PARSER
141 #define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
142
143 /* USB */
144 #define CONFIG_USB_OHCI_NEW
145 #define CONFIG_SYS_USB_OHCI_REGS_BASE       0xFFF81000
146 #define CONFIG_SYS_USB_OHCI_SLOT_NAME       "mb86r0x"
147 #define CONFIG_SYS_USB_OHCI_MAX_ROOT_PORTS  1
148 #define CONFIG_USB_STORAGE
149 #define CONFIG_DOS_PARTITION
150
151 /* SDRAM */
152 #define CONFIG_NR_DRAM_BANKS    1
153 #define PHYS_SDRAM              0x40000000      /* Start address of DDRRAM */
154 #define PHYS_SDRAM_SIZE 0x08000000      /* 128 megs */
155
156 #define CONFIG_SYS_SDRAM_BASE   PHYS_SDRAM
157 #define CONFIG_SYS_INIT_SP_ADDR 0x01008000
158
159 /*
160  * FLASH and environment organization
161  */
162 #define CONFIG_SYS_FLASH_BASE           0x10000000
163 #define CONFIG_SYS_MAX_FLASH_BANKS      1
164 #define CONFIG_SYS_MAX_FLASH_SECT       256
165 #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_FLASH_BASE
166
167 #define CONFIG_ENV_ADDR         (CONFIG_SYS_FLASH_BASE + 0x00040000)
168 #define CONFIG_ENV_IS_IN_FLASH          1
169 #define CONFIG_ENV_SECT_SIZE            (128 * 1024)
170 #define CONFIG_ENV_SIZE         (128 * 1024)
171
172 /*
173  * CFI FLASH driver setup
174  */
175 #define CONFIG_SYS_FLASH_CFI            1
176 #define CONFIG_FLASH_CFI_DRIVER 1
177 #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE       1       /* ~10x faster */
178
179 #define CONFIG_SYS_LOAD_ADDR            0x40000000      /* load address */
180
181 #define CONFIG_SYS_MEMTEST_START        (PHYS_SDRAM + (512*1024))
182 #define CONFIG_SYS_MEMTEST_END          (PHYS_SDRAM + PHYS_SDRAM_SIZE)
183
184 #define CONFIG_BAUDRATE         115200
185 #define CONFIG_SYS_BAUDRATE_TABLE       {115200, 19200, 38400, 57600, 9600 }
186
187 #define CONFIG_SYS_PROMPT       "jade> "
188 #define CONFIG_SYS_CBSIZE       256
189 #define CONFIG_SYS_MAXARGS      16
190 #define CONFIG_SYS_PBSIZE       (CONFIG_SYS_CBSIZE + \
191                                 sizeof(CONFIG_SYS_PROMPT) + 16)
192 #define CONFIG_SYS_LONGHELP     1
193 #define CONFIG_CMDLINE_EDITING  1
194
195 #define CONFIG_PREBOOT  ""
196
197 #define CONFIG_BOOTDELAY        5
198 #define CONFIG_AUTOBOOT_KEYED
199 #define CONFIG_AUTOBOOT_PROMPT "boot in %d s\n", bootdelay
200 #define CONFIG_AUTOBOOT_DELAY_STR       "delaygs"
201 #define CONFIG_AUTOBOOT_STOP_STR        "stopgs"
202
203 /*
204  * Size of malloc() pool
205  */
206 #define CONFIG_SYS_MALLOC_LEN   (10 << 20)
207 #define CONFIG_SYS_MEM_TOP_HIDE (4 << 20)
208
209 #define CONFIG_STACKSIZE        (32*1024)       /* regular stack */
210
211 /*
212  * Clock reset generator init
213  */
214 #define CONFIG_SYS_CRG_CRHA_INIT                0xffff
215 #define CONFIG_SYS_CRG_CRPA_INIT                0xffff
216 #define CONFIG_SYS_CRG_CRPB_INIT                0xfffe
217 #define CONFIG_SYS_CRG_CRHB_INIT                0xffff
218 #define CONFIG_SYS_CRG_CRAM_INIT                0xffef
219
220 /*
221  * Memory controller settings
222  */
223 #define CONFIG_SYS_MEMC_MCFMODE0_INIT   0x00000001      /* 16bit */
224 #define CONFIG_SYS_MEMC_MCFMODE2_INIT   0x00000001      /* 16bit */
225 #define CONFIG_SYS_MEMC_MCFMODE4_INIT   0x00000021      /* 16bit, Page*/
226 #define CONFIG_SYS_MEMC_MCFTIM0_INIT    0x16191008
227 #define CONFIG_SYS_MEMC_MCFTIM2_INIT    0x03061008
228 #define CONFIG_SYS_MEMC_MCFTIM4_INIT    0x03061804
229 #define CONFIG_SYS_MEMC_MCFAREA0_INIT   0x000000c0      /* 0x0c000000 1MB */
230 #define CONFIG_SYS_MEMC_MCFAREA2_INIT   0x00000020      /* 0x02000000 1MB */
231 #define CONFIG_SYS_MEMC_MCFAREA4_INIT   0x001f0000      /* 0x10000000 32 MB */
232
233 /*
234  * DDR2 controller init settings
235  */
236 #define CONFIG_SYS_DDR2_DRIMS_INIT      0x5555
237 #define CONFIG_SYS_CCNT_CDCRC_INIT_1    0x00000002
238 #define CONFIG_SYS_CCNT_CDCRC_INIT_2    0x00000003
239 #define CONFIG_SYS_DDR2_DRIC1_INIT      0x003f
240 #define CONFIG_SYS_DDR2_DRIC2_INIT      0x0000
241 #define CONFIG_SYS_DDR2_DRCA_INIT       0xc124  /* 512Mbit DDR2SDRAM x 2 */
242 #define CONFIG_SYS_DDR2_DRCM_INIT       0x0032
243 #define CONFIG_SYS_DDR2_DRCST1_INIT     0x3418
244 #define CONFIG_SYS_DDR2_DRCST2_INIT     0x6e32
245 #define CONFIG_SYS_DDR2_DRCR_INIT       0x0141
246 #define CONFIG_SYS_DDR2_DRCF_INIT       0x0002
247 #define CONFIG_SYS_DDR2_DRASR_INIT      0x0001
248 #define CONFIG_SYS_DDR2_DROBS_INIT      0x0001
249 #define CONFIG_SYS_DDR2_DROABA_INIT     0x0103
250 #define CONFIG_SYS_DDR2_DRIBSODT1_INIT  0x003F
251 #define CONFIG_SYS_DDR2_DROS_INIT       0x0001
252
253 /*
254  * DRAM init sequence
255  */
256
257 /* PALL Command */
258 #define CONFIG_SYS_DDR2_INIT_DRIC1_1    0x0017
259 #define CONFIG_SYS_DDR2_INIT_DRIC2_1    0x0400
260
261 /* EMR(2) command */
262 #define CONFIG_SYS_DDR2_INIT_DRIC1_2    0x0006
263 #define CONFIG_SYS_DDR2_INIT_DRIC2_2    0x0000
264
265 /* EMR(3) command */
266 #define CONFIG_SYS_DDR2_INIT_DRIC1_3    0x0007
267 #define CONFIG_SYS_DDR2_INIT_DRIC2_3    0x0000
268
269 /* EMR(1) command */
270 #define CONFIG_SYS_DDR2_INIT_DRIC1_4    0x0005
271 #define CONFIG_SYS_DDR2_INIT_DRIC2_4    0x0000
272
273 /* MRS command */
274 #define CONFIG_SYS_DDR2_INIT_DRIC1_5    0x0004
275 #define CONFIG_SYS_DDR2_INIT_DRIC2_5    0x0532
276
277 /* PALL command */
278 #define CONFIG_SYS_DDR2_INIT_DRIC1_6    0x0017
279 #define CONFIG_SYS_DDR2_INIT_DRIC2_6    0x0400
280
281 /* REF command 1 */
282 #define CONFIG_SYS_DDR2_INIT_DRIC1_7    0x000f
283 #define CONFIG_SYS_DDR2_INIT_DRIC2_7    0x0000
284
285 /* MRS command */
286 #define CONFIG_SYS_DDR2_INIT_DRIC1_8    0x0004
287 #define CONFIG_SYS_DDR2_INIT_DRIC2_8    0x0432
288
289 /* EMR(1) command */
290 #define CONFIG_SYS_DDR2_INIT_DRIC1_9    0x0005
291 #define CONFIG_SYS_DDR2_INIT_DRIC2_9    0x0380
292
293 /* EMR(1) command */
294 #define CONFIG_SYS_DDR2_INIT_DRIC1_10   0x0005
295 #define CONFIG_SYS_DDR2_INIT_DRIC2_10   0x0002
296
297 #ifdef CONFIG_USE_IRQ
298 #error CONFIG_USE_IRQ not supported
299 #endif
300
301 #endif  /* __CONFIG_H */