blob: 4eda91e7f40dfb4e8a889153635880e30273f0d6 [file] [log] [blame]
Michael Schwingen10c97872011-05-23 00:00:09 +02001/*
2 * (C) Copyright 2009
3 * Michael Schwingen, michael@schwingen.org
4 *
5 * Configuration settings for the
6 * dLAN200 AV Wireless G ("dvlhost") board.
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#ifndef __CONFIG_H
28#define __CONFIG_H
29
30#define CONFIG_IXP425 1
31#define CONFIG_DVLHOST 1
32
Marek Vasut8e807ec2012-03-06 00:45:35 +010033#define CONFIG_MACH_TYPE 1343
34
Michael Schwingen10c97872011-05-23 00:00:09 +020035#define CONFIG_DISPLAY_CPUINFO 1
36#define CONFIG_DISPLAY_BOARDINFO 1
37
38#define CONFIG_IXP_SERIAL
39#define CONFIG_SYS_IXP425_CONSOLE IXP425_UART2
40#define CONFIG_BAUDRATE 115200
41#define CONFIG_BOOTDELAY 3
42#define CONFIG_ZERO_BOOTDELAY_CHECK /* check for keypress on bootdelay==0 */
43#define CONFIG_BOARD_EARLY_INIT_F 1
44#define CONFIG_SYS_LDSCRIPT "board/dvlhost/u-boot.lds"
45
46/***************************************************************
47 * U-boot generic defines start here.
48 ***************************************************************/
49/* Size of malloc() pool */
50#define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + 128*1024)
51
52/* allow to overwrite serial and ethaddr */
53#define CONFIG_ENV_OVERWRITE
54
55/* Command line configuration. */
56#include <config_cmd_default.h>
57
58#define CONFIG_CMD_ELF
59#define CONFIG_PCI
60#ifdef CONFIG_PCI
61#define CONFIG_CMD_PCI
62#define CONFIG_PCI_PNP
63#define CONFIG_IXP_PCI
64#define CONFIG_PCI_SCAN_SHOW
65#define CONFIG_CMD_PCI_ENUM
66#endif
67
68#define CONFIG_BOOTCOMMAND "run boot_flash"
69/* enable passing of ATAGs */
70#define CONFIG_CMDLINE_TAG 1
71#define CONFIG_SETUP_MEMORY_TAGS 1
72#define CONFIG_INITRD_TAG 1
73
74#if defined(CONFIG_CMD_KGDB)
75# define CONFIG_KGDB_BAUDRATE 230400
76/* which serial port to use */
77# define CONFIG_KGDB_SER_INDEX 1
78#endif
79
80/* Miscellaneous configurable options */
81#define CONFIG_SYS_LONGHELP
82#define CONFIG_SYS_PROMPT "=> "
83/* Console I/O Buffer Size */
84#define CONFIG_SYS_CBSIZE 256
85/* Print Buffer Size */
86#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE+sizeof(CONFIG_SYS_PROMPT)+16)
87/* max number of command args */
88#define CONFIG_SYS_MAXARGS 16
89/* Boot Argument Buffer Size */
90#define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE
91
92#define CONFIG_SYS_MEMTEST_START 0x00000000
93#define CONFIG_SYS_MEMTEST_END 0x01D80000
94
95/* timer clock - 2* OSC_IN system clock */
96#define CONFIG_IXP425_TIMER_CLK 66666666
97#define CONFIG_SYS_HZ 1000
98
99/* default load address */
100#define CONFIG_SYS_LOAD_ADDR 0x00010000
101
102/* valid baudrates */
103#define CONFIG_SYS_BAUDRATE_TABLE { 9600, 19200, 38400, 57600, \
104 115200, 230400 }
105#define CONFIG_SERIAL_RTS_ACTIVE 1
106
107/*
108 * Stack sizes
109 *
110 * The stack sizes are set up in start.S using the settings below
111 */
112#define CONFIG_STACKSIZE (128*1024) /* regular stack */
113
114/* Expansion bus settings */
115#define CONFIG_SYS_EXP_CS0 0xbd113442
116
117/* SDRAM settings */
118#define CONFIG_NR_DRAM_BANKS 1
119#define PHYS_SDRAM_1 0x00000000
120#define CONFIG_SYS_SDRAM_BASE 0x00000000
121
122/* 32MB SDRAM: 2* 8Mx16, CL3 */
123#define CONFIG_SYS_SDR_CONFIG 0x18
124#define PHYS_SDRAM_1_SIZE 0x02000000
125#define CONFIG_SYS_SDRAM_REFRESH_CNT 0x800
126#define CONFIG_SYS_SDR_MODE_CONFIG 0x1
127#define CONFIG_SYS_DRAM_SIZE PHYS_SDRAM_1_SIZE
128
129/* FLASH organization: one Spansion S29AL032D-04 Flash */
130#define CONFIG_SYS_TEXT_BASE 0x50000000
131#define CONFIG_SYS_MAX_FLASH_BANKS 1
132/* max number of sectors on one chip */
133#define CONFIG_SYS_MAX_FLASH_SECT 140
134#define PHYS_FLASH_1 0x50000000
135#define CONFIG_SYS_FLASH_BANKS_LIST { PHYS_FLASH_1 }
136
137#define CONFIG_SYS_FLASH_BASE PHYS_FLASH_1
138#define CONFIG_SYS_MONITOR_BASE PHYS_FLASH_1
139#define CONFIG_SYS_MONITOR_LEN (256 << 10)
140#define CONFIG_BOARD_SIZE_LIMIT 262144
141
142/* Use common CFI driver */
143#define CONFIG_SYS_FLASH_CFI
144#define CONFIG_FLASH_CFI_DRIVER
145/* no byte writes on IXP4xx */
146#define CONFIG_SYS_FLASH_CFI_WIDTH FLASH_CFI_16BIT
147
148/* print 'E' for empty sector on flinfo */
149#define CONFIG_SYS_FLASH_EMPTY_INFO
150
151/* Ethernet */
152
153/* include IXP4xx NPE support */
154#define CONFIG_IXP4XX_NPE 1
155
Michael Schwingen10c97872011-05-23 00:00:09 +0200156/* NPE0 PHY: MII dLAN200 AVmodule, 100BaseT-FDX fixed */
157#define CONFIG_PHY_ADDR 0x18
158/* NPE1 PHY: MII IP175 switch, port 5 is host port */
159#define CONFIG_PHY1_ADDR 0x05
160/* MII PHY management */
161#define CONFIG_MII 1
162/* fixed-speed powerline modem without standard PHY registers on MII */
163#define CONFIG_MII_NPE0_FIXEDLINK 1
164#define CONFIG_MII_NPE0_SPEED 100
165#define CONFIG_MII_NPE0_FULLDUPLEX 1
166/* fixed-speed switch without standard PHY registers on MII */
167#define CONFIG_MII_NPE1_FIXEDLINK 1
168#define CONFIG_MII_NPE1_SPEED 100
169#define CONFIG_MII_NPE1_FULLDUPLEX 1
170
171/* Number of ethernet rx buffers & descriptors */
172#define CONFIG_SYS_RX_ETH_BUFFER 16
173#define CONFIG_RESET_PHY_R 1
174/* ethernet switch connected to MII port */
175#define CONFIG_MII_ETHSWITCH 1
176#define CONFIG_HAS_ETH1 1
177
178#define CONFIG_CMD_DHCP
179#define CONFIG_CMD_NET
180#define CONFIG_CMD_MII
181#define CONFIG_CMD_PING
182#undef CONFIG_CMD_NFS
183
184/* BOOTP options */
185#define CONFIG_BOOTP_BOOTFILESIZE
186#define CONFIG_BOOTP_BOOTPATH
187#define CONFIG_BOOTP_GATEWAY
188#define CONFIG_BOOTP_HOSTNAME
189
190/* Cache Configuration */
191#define CONFIG_SYS_CACHELINE_SIZE 32
192
193/*
194 * environment organization:
195 * one flash sector, embedded in uboot area (bottom bootblock flash)
196 */
197#define CONFIG_ENV_IS_IN_FLASH 1
198#define CONFIG_ENV_SIZE 0x2000
199#define CONFIG_ENV_ADDR (PHYS_FLASH_1 + 0x4000)
200#define CONFIG_SYS_USE_PPCENV 1
201
202#define CONFIG_EXTRA_ENV_SETTINGS \
203 "npe_ucode=50040000\0" \
204 "ethprime=NPE1\0" \
205 "ethrotate=no\0" \
206 "mtd=IXP4XX-Flash.0:256k(uboot),64k(ucode),1152k(linux),-(root),\0" \
207 "kerneladdr=50050000\0" \
208 "kernelfile=dvlhost/uImage\0" \
209 "rootfile=dvlhost/rootfs\0" \
210 "rootaddr=50170000\0" \
211 "loadaddr=10000\0" \
212 "updateboot_ser=mw.b 10000 ff 40000;" \
213 " loady ${loadaddr};" \
214 " run eraseboot writeboot\0" \
215 "updateboot_net=mw.b 10000 ff 40000;" \
216 " tftp ${loadaddr} dvlhost/u-boot.bin;" \
217 " run eraseboot writeboot\0" \
218 "eraseboot=protect off 50000000 50003fff;" \
219 " protect off 50006000 5003ffff;" \
220 " erase 50000000 50003fff;" \
221 " erase 50006000 5003ffff\0" \
222 "writeboot=cp.b 10000 50000000 4000;" \
223 " cp.b 16000 50006000 3a000\0" \
224 "updateucode=loady;" \
225 " era ${npe_ucode} +${filesize};" \
226 " cp.b ${loadaddr} ${npe_ucode} ${filesize}\0" \
227 "updateroot=tftp ${loadaddr} ${rootfile};" \
228 " era ${rootaddr} +${filesize};" \
229 " cp.b ${loadaddr} ${rootaddr} ${filesize}\0" \
230 "updatekern=tftp ${loadaddr} ${kernelfile};" \
231 " era ${kerneladdr} +${filesize};" \
232 " cp.b ${loadaddr} ${kerneladdr} ${filesize}\0" \
233 "flashargs=setenv bootargs mtdparts=${mtd} root=/dev/mtdblock3" \
234 " rootfstype=squashfs,jffs2 init=/etc/preinit\0" \
235 "netargs=setenv bootargs mtdparts=${mtd} root=/dev/mtdblock3" \
236 " rootfstype=squashfs,jffs2 init=/etc/preinit\0" \
237 "addtty=setenv bootargs ${bootargs} console=ttyS0,${baudrate}\0" \
238 "addeth=setenv bootargs ${bootargs} ethaddr=${ethaddr}\0" \
239 "boot_flash=run flashargs addtty addeth;" \
240 " bootm ${kerneladdr}\0" \
241 "boot_net=run netargs addtty addeth;" \
242 " tftpboot ${loadaddr} ${kernelfile};" \
243 " bootm\0"
244
245/* additions for new relocation code, must be added to all boards */
246#define CONFIG_SYS_INIT_SP_ADDR \
247 (CONFIG_SYS_SDRAM_BASE + 0x1000 - GENERATED_GBL_DATA_SIZE)
248
249#endif /* __CONFIG_H */