blob: fc7658b9f2dc2c28e6283533fb57128febfd0fcc [file] [log] [blame]
Zachary P. Landau552d3142006-01-26 17:37:59 -05001/*
2 * Configuation settings for the R5200 board
3 *
4 * (C) Copyright 2006 Lab X Technologies <zachary.landau@labxtechnologies.com>
5 * Based on Motorola MC5272C3 board config
6 * (C) Copyright 2003 Josef Baumgartner <josef.baumgartner@telex.de>
7 *
8 * See file CREDITS for list of people who contributed to this
9 * project.
10 *
11 * This program is free software; you can redistribute it and/or
12 * modify it under the terms of the GNU General Public License as
13 * published by the Free Software Foundation; either version 2 of
14 * the License, or (at your option) any later version.
15 *
16 * This program is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU General Public License for more details.
20 *
21 * You should have received a copy of the GNU General Public License
22 * along with this program; if not, write to the Free Software
23 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
24 * MA 02111-1307 USA
25 */
26
27/*
28 * board/config.h - configuration options, board specific
29 */
30
31#ifndef _R5200_H
32#define _R5200_H
33
34/*
35 * High Level Configuration Options
36 * (easy to change)
37 */
38#define CONFIG_MCF52x2 /* define processor family */
39#define CONFIG_M5271 /* define processor type */
Marian Balakowiczc20d87d2006-05-09 11:51:51 +020040#define CONFIG_R5200 /* define board type */
Zachary P. Landau552d3142006-01-26 17:37:59 -050041
TsiChungLiewf5ca0cb2007-08-15 19:45:51 -050042#define CONFIG_MCFTMR
Zachary P. Landau552d3142006-01-26 17:37:59 -050043
TsiChungLiewf5ca0cb2007-08-15 19:45:51 -050044#define CONFIG_MCFUART
45#define CFG_UART_PORT (0)
Zachary P. Landau552d3142006-01-26 17:37:59 -050046#define CONFIG_BAUDRATE 19200
47#define CFG_BAUDRATE_TABLE { 9600 , 19200 , 38400 , 57600, 115200 }
48
49#define CONFIG_WATCHDOG
50#define CONFIG_WATCHDOG_TIMEOUT 0xFFFF /* clock modulus */
51
52/* Configuration for environment
53 * Environment is embedded in u-boot in the second sector of the flash
54 */
55#ifndef CONFIG_MONITOR_IS_IN_RAM
56#define CFG_ENV_OFFSET 0x20000
57#define CFG_ENV_SECT_SIZE 0x20000
58#define CFG_ENV_IS_IN_FLASH 1
59#define CFG_ENV_IS_EMBEDDED 1
60#else
61#define CFG_ENV_ADDR 0xf0020000
62#define CFG_ENV_SECT_SIZE 0x2000
63#define CFG_ENV_IS_IN_FLASH 1
64#endif
65
Zachary P. Landau552d3142006-01-26 17:37:59 -050066
Jon Loeliger59cf5092007-07-04 22:31:15 -050067/*
Jon Loeliger5c4ddae2007-07-10 10:12:10 -050068 * BOOTP options
69 */
70#define CONFIG_BOOTP_BOOTFILESIZE
71#define CONFIG_BOOTP_BOOTPATH
72#define CONFIG_BOOTP_GATEWAY
73#define CONFIG_BOOTP_HOSTNAME
74
75
76/*
Jon Loeliger59cf5092007-07-04 22:31:15 -050077 * Command line configuration.
78 */
79#include <config_cmd_default.h>
80
81#define CONFIG_CMD_PING
82#define CONFIG_CMD_NET
83
84#undef CONFIG_CMD_LOADS
85#undef CONFIG_CMD_LOADB
86
TsiChungLiewf5ca0cb2007-08-15 19:45:51 -050087#define CONFIG_MCFFEC
88#ifdef CONFIG_MCFFEC
89# define CONFIG_NET_MULTI 1
90# define CONFIG_MII 1
91# define CFG_DISCOVER_PHY
92# define CFG_RX_ETH_BUFFER 8
93# define CFG_FAULT_ECHO_LINK_DOWN
94
95# define CFG_FEC0_PINMUX 0
96# define CFG_FEC0_MIIBASE CFG_FEC0_IOBASE
97# define MCFFEC_TOUT_LOOP 50000
98/* If CFG_DISCOVER_PHY is not defined - hardcoded */
99# ifndef CFG_DISCOVER_PHY
100# define FECDUPLEX FULL
101# define FECSPEED _100BASET
102# else
103# ifndef CFG_FAULT_ECHO_LINK_DOWN
104# define CFG_FAULT_ECHO_LINK_DOWN
105# endif
106# endif /* CFG_DISCOVER_PHY */
107#endif
Zachary P. Landau552d3142006-01-26 17:37:59 -0500108
109/* Note: We only copy one sectors worth of application code from location
Wolfgang Denkc2c49442006-05-10 17:43:20 +0200110 * 10200000 for speed purposes. Increase the size if necessary */
Zachary P. Landau552d3142006-01-26 17:37:59 -0500111#define CONFIG_BOOTCOMMAND "cp.b 10200000 0 20000; go 400"
112#define CONFIG_BOOTDELAY 1
113
114#define CFG_PROMPT "u-boot> "
115#define CFG_LONGHELP /* undef to save memory */
116
Jon Loeliger59cf5092007-07-04 22:31:15 -0500117#if defined(CONFIG_CMD_KGDB)
Zachary P. Landau552d3142006-01-26 17:37:59 -0500118#define CFG_CBSIZE 1024 /* Console I/O Buffer Size */
119#else
120#define CFG_CBSIZE 256 /* Console I/O Buffer Size */
121#endif
122#define CFG_PBSIZE (CFG_CBSIZE+sizeof(CFG_PROMPT)+16) /* Print Buffer Size */
123#define CFG_MAXARGS 16 /* max number of command args */
124#define CFG_BARGSIZE CFG_CBSIZE /* Boot Argument Buffer Size */
125
126#define CFG_LOAD_ADDR 0x00002000
127
128#define CFG_MEMTEST_START 0x400
129#define CFG_MEMTEST_END 0x380000
130
131#define CFG_HZ 1000000
132#define CFG_CLK 100000000
133
134/*
135 * Low Level Configuration Settings
136 * (address mappings, register initial values, etc.)
137 * You should know what you are doing if you make changes here.
138 */
139
140#define CFG_MBAR 0x40000000 /* Register Base Addrs */
141
142#define CFG_ENET_BD_BASE 0x480000
143
144/*-----------------------------------------------------------------------
145 * Definitions for initial stack pointer and data area (in DPRAM)
146 */
147#define CFG_INIT_RAM_ADDR 0x20000000
148#define CFG_INIT_RAM_END 0x1000 /* End of used area in internal SRAM */
149#define CFG_GBL_DATA_SIZE 64 /* size in bytes reserved for initial data */
150#define CFG_GBL_DATA_OFFSET (CFG_INIT_RAM_END - CFG_GBL_DATA_SIZE)
151#define CFG_INIT_SP_OFFSET CFG_GBL_DATA_OFFSET
152
153/*-----------------------------------------------------------------------
154 * Start addresses for the final memory configuration
155 * (Set up by the startup code)
156 * Please note that CFG_SDRAM_BASE _must_ start at 0
157 */
158#define CFG_SDRAM_BASE 0x00000000
159#define CFG_SDRAM_SIZE 8 /* SDRAM size in MB */
160#define CFG_FLASH_BASE 0x10000000
161
162#ifdef CONFIG_MONITOR_IS_IN_RAM
163#define CFG_MONITOR_BASE 0x20000
164#else
165#define CFG_MONITOR_BASE (CFG_FLASH_BASE + 0x400)
166#endif
167
168#define CFG_MONITOR_LEN 0x20001
169#define CFG_MALLOC_LEN (256 << 10)
170#define CFG_BOOTPARAMS_LEN 64*1024
171
172/*
173 * For booting Linux, the board info and command line data
174 * have to be in the first 8 MB of memory, since this is
175 * the maximum mapped by the Linux kernel during initialization ??
176 */
177#define CFG_BOOTMAPSZ (8 << 20) /* Initial Memory map for Linux */
178
179/*-----------------------------------------------------------------------
180 * FLASH organization
181 */
182#define CFG_MAX_FLASH_BANKS 1 /* max number of memory banks */
183#define CFG_MAX_FLASH_SECT 1024 /* max number of sectors on one chip */
184#define CFG_FLASH_ERASE_TOUT 1000
185
186#define CFG_FLASH_CFI 1
187#define CFG_FLASH_CFI_DRIVER 1
188#define CFG_FLASH_SIZE 0x800000
189
190/*-----------------------------------------------------------------------
191 * Cache Configuration
192 */
193#define CFG_CACHELINE_SIZE 16
194
195/*-----------------------------------------------------------------------
196 * Memory bank definitions
197 */
198
199/*-----------------------------------------------------------------------
200 * Port configuration
201 */
202#define CFG_FECI2C 0xF0
203
204#endif /* _R5200_H */