Merge branch 'master' of git://git.denx.de/u-boot-usb
[platform/kernel/u-boot.git] / include / configs / dvlhost.h
1 /*
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
33 #define CONFIG_MACH_TYPE                1343
34
35 #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
156 /* 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 */