blob: b3cd12df901722c40fb598acb0a145a1d9e23345 [file] [log] [blame]
wdenke2211742002-11-02 23:30:20 +00001/*
2 * (C) Copyright 2000
3 * Sysgo Real-Time Solutions, GmbH <www.elinos.com>
4 * Marius Groeger <mgroeger@sysgo.de>
5 *
6 * Configuation settings for the MBX8xx board.
7 *
8 * -----------------------------------------------------------------
Wolfgang Denkd79de1d2013-07-08 09:37:19 +02009 * SPDX-License-Identifier: GPL-2.0+
wdenke2211742002-11-02 23:30:20 +000010 */
11/*
12 * Changed 2002-10-01
13 * Added PCMCIA defines mostly taken from other U-Boot boards that
14 * have PCMCIA already working. If you find any bugs, incorrect assumptions
15 * feel free to fix them yourself and submit a patch.
16 * Rod Boyce <rod_boyce@stratexnet.com.
17 */
18/*
19 * board/config.h - configuration options, board specific
20 */
21
22#ifndef __CONFIG_H
23#define __CONFIG_H
24
25/*
26 * High Level Configuration Options
27 * (easy to change)
28 */
29
30#define CONFIG_MPC860 1 /* This is a MPC860 CPU */
31#define CONFIG_MBX 1 /* ...on an MBX module */
32
Wolfgang Denk291ba1b2010-10-06 09:05:45 +020033#define CONFIG_SYS_TEXT_BASE 0xfe000000
34
wdenke2211742002-11-02 23:30:20 +000035#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
36#undef CONFIG_8xx_CONS_SMC2
37#undef CONFIG_8xx_CONS_NONE
38#define CONFIG_BAUDRATE 9600
39/* Define this to use the PCI bus */
40#undef CONFIG_USE_PCI
41
42#define CONFIG_CLOCKS_IN_MHZ 1 /* clocks passsed to Linux in MHz */
43#define CONFIG_8xx_GCLK_FREQ (50000000UL)
44#if 1
45#define CONFIG_BOOTDELAY -1 /* autoboot disabled */
46#else
47#define CONFIG_BOOTDELAY 5 /* autoboot after 5 seconds */
48#endif
49#define CONFIG_BOOTCOMMAND "bootm 20000" /* autoboot command */
50
51#define CONFIG_BOOTARGS "root=/dev/nfs rw " \
52 "nfsroot=10.0.0.2:/opt/eldk/ppc_8xx " \
53 "nfsaddrs=10.0.0.99:10.0.0.2"
54
55#define CONFIG_LOADS_ECHO 1 /* echo on for serial download */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020056#undef CONFIG_SYS_LOADS_BAUD_CHANGE /* don't allow baudrate change */
wdenke2211742002-11-02 23:30:20 +000057
58#undef CONFIG_WATCHDOG /* watchdog disabled */
59
wdenke2211742002-11-02 23:30:20 +000060
Jon Loeliger446e1f52007-07-08 14:14:17 -050061/*
Jon Loeligered26c742007-07-10 09:10:49 -050062 * BOOTP options
63 */
64#define CONFIG_BOOTP_BOOTFILESIZE
65#define CONFIG_BOOTP_BOOTPATH
66#define CONFIG_BOOTP_GATEWAY
67#define CONFIG_BOOTP_HOSTNAME
68
69
70/*
Jon Loeliger446e1f52007-07-08 14:14:17 -050071 * Command line configuration.
72 */
73#define CONFIG_CMD_NET
Jon Loeliger446e1f52007-07-08 14:14:17 -050074#define CONFIG_CMD_SDRAM
75#define CONFIG_CMD_PCMCIA
76#define CONFIG_CMD_IDE
wdenke2211742002-11-02 23:30:20 +000077
Jon Loeliger446e1f52007-07-08 14:14:17 -050078
79#define CONFIG_DOS_PARTITION
wdenke2211742002-11-02 23:30:20 +000080
81/*
82 * Miscellaneous configurable options
83 */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020084#define CONFIG_SYS_LONGHELP /* undef to save memory */
85#define CONFIG_SYS_PROMPT "=> " /* Monitor Command Prompt */
86#undef CONFIG_SYS_HUSH_PARSER /* Hush parse for U-Boot */
Jon Loeliger446e1f52007-07-08 14:14:17 -050087#if defined(CONFIG_CMD_KGDB)
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020088#define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buffer Size */
wdenke2211742002-11-02 23:30:20 +000089#else
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020090#define CONFIG_SYS_CBSIZE 256 /* Console I/O Buffer Size */
wdenke2211742002-11-02 23:30:20 +000091#endif
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020092#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE+sizeof(CONFIG_SYS_PROMPT)+16) /* Print Buffer Size */
93#define CONFIG_SYS_MAXARGS 16 /* max number of command args */
94#define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE /* Boot Argument Buffer Size */
wdenke2211742002-11-02 23:30:20 +000095
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020096#define CONFIG_SYS_MEMTEST_START 0x0400000 /* memtest works on */
97#define CONFIG_SYS_MEMTEST_END 0x0C00000 /* 4 ... 12 MB in DRAM */
wdenke2211742002-11-02 23:30:20 +000098
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020099#define CONFIG_SYS_LOAD_ADDR 0x100000 /* default load address */
wdenke2211742002-11-02 23:30:20 +0000100
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200101#define CONFIG_SYS_HZ 1000 /* decrementer freq: 1 ms ticks */
wdenke2211742002-11-02 23:30:20 +0000102
wdenke2211742002-11-02 23:30:20 +0000103/*
104 * Low Level Configuration Settings
105 * (address mappings, register initial values, etc.)
106 * You should know what you are doing if you make changes here.
107 */
108
109/*-----------------------------------------------------------------------
110 * Physical memory map as defined by the MBX PGM
111 */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200112#define CONFIG_SYS_IMMR 0xFA200000 /* Internal Memory Mapped Register*/
113#define CONFIG_SYS_NVRAM_BASE 0xFA000000 /* NVRAM */
114#define CONFIG_SYS_NVRAM_OR 0xffe00000 /* w/o speed dependent flags!! */
115#define CONFIG_SYS_CSR_BASE 0xFA100000 /* Control/Status Registers */
116#define CONFIG_SYS_PCIMEM_BASE 0x80000000 /* PCI I/O and Memory Spaces */
117#define CONFIG_SYS_PCIMEM_OR 0xA0000108
118#define CONFIG_SYS_PCIBRIDGE_BASE 0xFA210000 /* PCI-Bus Bridge Registers */
119#define CONFIG_SYS_PCIBRIDGE_OR 0xFFFF0108
wdenke2211742002-11-02 23:30:20 +0000120
121/*-----------------------------------------------------------------------
122 * Definitions for initial stack pointer and data area (in DPRAM)
123 */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200124#define CONFIG_SYS_INIT_RAM_ADDR CONFIG_SYS_IMMR
Wolfgang Denk1c2e98e2010-10-26 13:32:32 +0200125#define CONFIG_SYS_INIT_RAM_SIZE 0x2f00 /* Size of used area in DPRAM */
Wolfgang Denk0191e472010-10-26 14:34:52 +0200126#define CONFIG_SYS_GBL_DATA_OFFSET (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200127#define CONFIG_SYS_INIT_VPD_SIZE 256 /* size in bytes reserved for vpd buffer */
128#define CONFIG_SYS_INIT_VPD_OFFSET (CONFIG_SYS_GBL_DATA_OFFSET - CONFIG_SYS_INIT_VPD_SIZE)
129#define CONFIG_SYS_INIT_SP_OFFSET (CONFIG_SYS_INIT_VPD_OFFSET-8)
wdenke2211742002-11-02 23:30:20 +0000130
131/*-----------------------------------------------------------------------
132 * Offset in DPMEM where we keep the VPD data
133 */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200134#define CONFIG_SYS_DPRAMVPD (CONFIG_SYS_INIT_VPD_OFFSET - 0x2000)
wdenke2211742002-11-02 23:30:20 +0000135
136/*-----------------------------------------------------------------------
137 * Start addresses for the final memory configuration
138 * (Set up by the startup code)
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200139 * Please note that CONFIG_SYS_SDRAM_BASE _must_ start at 0
wdenke2211742002-11-02 23:30:20 +0000140 */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200141#define CONFIG_SYS_SDRAM_BASE 0x00000000
142#define CONFIG_SYS_FLASH_BASE 0xfe000000
wdenke2211742002-11-02 23:30:20 +0000143#ifdef DEBUG
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200144#define CONFIG_SYS_MONITOR_LEN (256 << 10) /* Reserve 256 kB for Monitor */
wdenke2211742002-11-02 23:30:20 +0000145#else
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200146#define CONFIG_SYS_MONITOR_LEN (256 << 10) /* Reserve 256 kB for Monitor */
wdenke2211742002-11-02 23:30:20 +0000147#endif
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200148#undef CONFIG_SYS_MONITOR_BASE /* 0x200000 to run U-Boot from RAM */
149#define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_FLASH_BASE
150#define CONFIG_SYS_MALLOC_LEN (128 << 10) /* Reserve 128 kB for malloc() */
wdenke2211742002-11-02 23:30:20 +0000151
152/*
153 * For booting Linux, the board info and command line data
154 * have to be in the first 8 MB of memory, since this is
155 * the maximum mapped by the Linux kernel during initialization.
156 */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200157#define CONFIG_SYS_BOOTMAPSZ (8 << 20) /* Initial Memory map for Linux */
wdenke2211742002-11-02 23:30:20 +0000158
159/*-----------------------------------------------------------------------
160 * FLASH organization
161 */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200162#define CONFIG_SYS_MAX_FLASH_BANKS 1 /* max number of memory banks */
163#define CONFIG_SYS_MAX_FLASH_SECT 16 /* max number of sectors on one chip */
wdenke2211742002-11-02 23:30:20 +0000164
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200165#define CONFIG_SYS_FLASH_ERASE_TOUT 120000 /* Timeout for Flash Erase (in ms) */
166#define CONFIG_SYS_FLASH_WRITE_TOUT 500 /* Timeout for Flash Write (in ms) */
wdenke2211742002-11-02 23:30:20 +0000167
168/*-----------------------------------------------------------------------
169 * NVRAM Configuration
170 *
171 * Note: the MBX is special because there is already a firmware on this
172 * board: EPPC-Bug from Motorola. To avoid collisions in NVRAM Usage, we
173 * access the NVRAM at the offset 0x1000.
174 */
Jean-Christophe PLAGNIOL-VILLARDfdb79c32008-09-10 22:47:59 +0200175#define CONFIG_ENV_IS_IN_NVRAM 1 /* turn on NVRAM env feature */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200176#define CONFIG_ENV_ADDR (CONFIG_SYS_NVRAM_BASE + 0x1000)
Jean-Christophe PLAGNIOL-VILLARD7e1cda62008-09-10 22:48:06 +0200177#define CONFIG_ENV_SIZE 0x1000
wdenke2211742002-11-02 23:30:20 +0000178
179/*-----------------------------------------------------------------------
180 * Cache Configuration
181 */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200182#define CONFIG_SYS_CACHELINE_SIZE 16 /* For all MPC8xx CPUs */
Jon Loeliger446e1f52007-07-08 14:14:17 -0500183#if defined(CONFIG_CMD_KGDB)
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200184#define CONFIG_SYS_CACHELINE_SHIFT 4 /* log base 2 of the above value */
wdenke2211742002-11-02 23:30:20 +0000185#endif
186
187/*-----------------------------------------------------------------------
188 * SYPCR - System Protection Control 11-9
189 * SYPCR can only be written once after reset!
190 *-----------------------------------------------------------------------
191 * Software & Bus Monitor Timer max, Bus Monitor enable, SW Watchdog freeze
192 */
193#if defined(CONFIG_WATCHDOG)
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200194#define CONFIG_SYS_SYPCR (SYPCR_SWTC | SYPCR_BMT | SYPCR_BME | SYPCR_SWF | \
wdenke2211742002-11-02 23:30:20 +0000195 SYPCR_SWE | SYPCR_SWRI| SYPCR_SWP)
196#else
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200197#define CONFIG_SYS_SYPCR (SYPCR_SWTC | SYPCR_BMT | SYPCR_BME | SYPCR_SWF)
wdenke2211742002-11-02 23:30:20 +0000198#endif
199
200/*-----------------------------------------------------------------------
201 * SIUMCR - SIU Module Configuration 11-6
202 *-----------------------------------------------------------------------
203 * PCMCIA config., multi-function pin tri-state
204 */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200205/* #define CONFIG_SYS_SIUMCR (SIUMCR_DBGC11 | SIUMCR_DPC | SIUMCR_MLRC10 | SIUMCR_SEME) */
206#define CONFIG_SYS_SIUMCR (SIUMCR_DBGC11 | SIUMCR_DPC | SIUMCR_MLRC11 | SIUMCR_SEME | SIUMCR_BSC )
wdenke2211742002-11-02 23:30:20 +0000207
208/*-----------------------------------------------------------------------
209 * TBSCR - Time Base Status and Control 11-26
210 *-----------------------------------------------------------------------
211 * Clear Reference Interrupt Status, Timebase freezing enabled
212 */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200213#define CONFIG_SYS_TBSCR (TBSCR_REFA | TBSCR_REFB | TBSCR_TBF)
wdenke2211742002-11-02 23:30:20 +0000214
215/*-----------------------------------------------------------------------
216 * PISCR - Periodic Interrupt Status and Control 11-31
217 *-----------------------------------------------------------------------
218 * Clear Periodic Interrupt Status, Interrupt Timer freezing enabled
219 */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200220#define CONFIG_SYS_PISCR (PISCR_PS | PISCR_PITF | PISCR_PTE)
wdenke2211742002-11-02 23:30:20 +0000221
222/*-----------------------------------------------------------------------
223 * PLPRCR - PLL, Low-Power, and Reset Control Register 15-30
224 *-----------------------------------------------------------------------
225 * Reset PLL lock status sticky bit, timer expired status bit and timer
226 * interrupt status bit - leave PLL multiplication factor unchanged !
227 */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200228#define CONFIG_SYS_PLPRCR (PLPRCR_SPLSS | PLPRCR_TEXPS | PLPRCR_TMIST)
wdenke2211742002-11-02 23:30:20 +0000229
230/*-----------------------------------------------------------------------
231 * SCCR - System Clock and reset Control Register 15-27
232 *-----------------------------------------------------------------------
233 * Set clock output, timebase and RTC source and divider,
234 * power management and some other internal clocks
235 */
236#define SCCR_MASK (SCCR_RTDIV | SCCR_RTSEL)
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200237#define CONFIG_SYS_SCCR SCCR_TBS
wdenke2211742002-11-02 23:30:20 +0000238
239/*-----------------------------------------------------------------------
240 * PCMCIA stuff
241 *-----------------------------------------------------------------------
242 *
243 */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200244#define CONFIG_SYS_PCMCIA_MEM_ADDR (0xE0000000)
245#define CONFIG_SYS_PCMCIA_MEM_SIZE ( 64 << 20 )
246#define CONFIG_SYS_PCMCIA_DMA_ADDR (0xE4000000)
247#define CONFIG_SYS_PCMCIA_DMA_SIZE ( 64 << 20 )
248#define CONFIG_SYS_PCMCIA_ATTRB_ADDR (0xE8000000)
249#define CONFIG_SYS_PCMCIA_ATTRB_SIZE ( 64 << 20 )
250#define CONFIG_SYS_PCMCIA_IO_ADDR (0xEC000000)
251#define CONFIG_SYS_PCMCIA_IO_SIZE ( 64 << 20 )
wdenke2211742002-11-02 23:30:20 +0000252
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200253#define CONFIG_SYS_PCMCIA_INTERRUPT SIU_LEVEL6
wdenke2211742002-11-02 23:30:20 +0000254
255#define CONFIG_PCMCIA_SLOT_A 1
256
257
258/*-----------------------------------------------------------------------
259 * IDE/ATA stuff (Supports IDE harddisk on PCMCIA Adapter)
260 *-----------------------------------------------------------------------
261 */
262
Pavel Herrmann2c13c4a2012-10-09 07:01:56 +0000263#define CONFIG_IDE_PREINIT 1 /* Use preinit IDE hook */
wdenke2211742002-11-02 23:30:20 +0000264#define CONFIG_IDE_8xx_PCCARD 1 /* Use IDE with PC Card Adapter */
265
266#undef CONFIG_IDE_8xx_DIRECT /* Direct IDE not supported */
267#undef CONFIG_IDE_LED /* LED for ide not supported */
268#undef CONFIG_IDE_RESET /* reset for ide not supported */
269
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200270#define CONFIG_SYS_IDE_MAXBUS 1 /* max. 1 IDE bus */
271#define CONFIG_SYS_IDE_MAXDEVICE 1 /* max. 1 drive per IDE bus */
wdenke2211742002-11-02 23:30:20 +0000272
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200273#define CONFIG_SYS_ATA_IDE0_OFFSET 0x0000
wdenke2211742002-11-02 23:30:20 +0000274
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200275#define CONFIG_SYS_ATA_BASE_ADDR CONFIG_SYS_PCMCIA_MEM_ADDR
wdenke2211742002-11-02 23:30:20 +0000276
277/* Offset for data I/O */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200278#define CONFIG_SYS_ATA_DATA_OFFSET (CONFIG_SYS_PCMCIA_MEM_SIZE + 0x320)
wdenke2211742002-11-02 23:30:20 +0000279
280/* Offset for normal register accesses */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200281#define CONFIG_SYS_ATA_REG_OFFSET (2 * CONFIG_SYS_PCMCIA_MEM_SIZE + 0x320)
wdenke2211742002-11-02 23:30:20 +0000282
283/* Offset for alternate registers */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200284#define CONFIG_SYS_ATA_ALT_OFFSET 0x0100
wdenke2211742002-11-02 23:30:20 +0000285
286/*-----------------------------------------------------------------------
287 * Debug Entry Mode
288 *-----------------------------------------------------------------------
289 *
290 */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200291#define CONFIG_SYS_DER 0
wdenke2211742002-11-02 23:30:20 +0000292
wdenke2211742002-11-02 23:30:20 +0000293#endif /* __CONFIG_H */