xref: /rk3399_rockchip-uboot/include/configs/microblaze-generic.h (revision bcec8f49d1c5570f806f9cc33eb0bcc56a6551d5)
152a822edSMichal Simek /*
24aecfb16SMichal Simek  * (C) Copyright 2007-2010 Michal Simek
352a822edSMichal Simek  *
452a822edSMichal Simek  * Michal SIMEK <monstr@monstr.eu>
552a822edSMichal Simek  *
652a822edSMichal Simek  * See file CREDITS for list of people who contributed to this
752a822edSMichal Simek  * project.
852a822edSMichal Simek  *
952a822edSMichal Simek  * This program is free software; you can redistribute it and/or
1052a822edSMichal Simek  * modify it under the terms of the GNU General Public License as
1152a822edSMichal Simek  * published by the Free Software Foundation; either version 2 of
1252a822edSMichal Simek  * the License, or (at your option) any later version.
1352a822edSMichal Simek  *
1452a822edSMichal Simek  * This program is distributed in the hope that it will be useful,
1552a822edSMichal Simek  * but WITHOUT ANY WARRANTY; without even the implied warranty of
1652a822edSMichal Simek  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1752a822edSMichal Simek  * GNU General Public License for more details.
1852a822edSMichal Simek  *
1952a822edSMichal Simek  * You should have received a copy of the GNU General Public License
2052a822edSMichal Simek  * along with this program; if not, write to the Free Software
2152a822edSMichal Simek  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
2252a822edSMichal Simek  * MA 02111-1307 USA
2352a822edSMichal Simek  */
2452a822edSMichal Simek 
2552a822edSMichal Simek #ifndef __CONFIG_H
2652a822edSMichal Simek #define __CONFIG_H
2752a822edSMichal Simek 
2852a822edSMichal Simek #include "../board/xilinx/microblaze-generic/xparameters.h"
2952a822edSMichal Simek 
304aecfb16SMichal Simek /* MicroBlaze CPU */
314aecfb16SMichal Simek #define	CONFIG_MICROBLAZE	1
3252a822edSMichal Simek #define	MICROBLAZE_V5		1
3352a822edSMichal Simek 
34920c3587SStephan Linz /* Open Firmware DTS */
35920c3587SStephan Linz #define CONFIG_OF_CONTROL	1
36920c3587SStephan Linz #define CONFIG_OF_EMBED		1
37920c3587SStephan Linz #define CONFIG_DEFAULT_DEVICE_TREE microblaze
38920c3587SStephan Linz 
39*bcec8f49SStephan Linz /* linear and spi flash memory */
401fe7e8faSStephan Linz #ifdef XILINX_FLASH_START
411fe7e8faSStephan Linz #define	FLASH
42*bcec8f49SStephan Linz #undef	SPIFLASH
43*bcec8f49SStephan Linz #undef	RAMENV	/* hold environment in flash */
44*bcec8f49SStephan Linz #else
45*bcec8f49SStephan Linz #ifdef XILINX_SPI_FLASH_BASEADDR
46*bcec8f49SStephan Linz #undef	FLASH
47*bcec8f49SStephan Linz #define	SPIFLASH
481fe7e8faSStephan Linz #undef	RAMENV	/* hold environment in flash */
491fe7e8faSStephan Linz #else
501fe7e8faSStephan Linz #undef	FLASH
51*bcec8f49SStephan Linz #undef	SPIFLASH
521fe7e8faSStephan Linz #define	RAMENV	/* hold environment in RAM */
531fe7e8faSStephan Linz #endif
54*bcec8f49SStephan Linz #endif
551fe7e8faSStephan Linz 
5652a822edSMichal Simek /* uart */
5752a822edSMichal Simek #ifdef XILINX_UARTLITE_BASEADDR
5852a822edSMichal Simek # define CONFIG_XILINX_UARTLITE
5952a822edSMichal Simek # define CONFIG_SERIAL_BASE	XILINX_UARTLITE_BASEADDR
6052a822edSMichal Simek # define CONFIG_BAUDRATE	XILINX_UARTLITE_BAUDRATE
6152a822edSMichal Simek # define CONFIG_SYS_BAUDRATE_TABLE	{ CONFIG_BAUDRATE }
62330e5545SMichal Simek # define CONSOLE_ARG	"console=console=ttyUL0,115200\0"
6352a822edSMichal Simek #elif XILINX_UART16550_BASEADDR
6452a822edSMichal Simek # define CONFIG_SYS_NS16550		1
6552a822edSMichal Simek # define CONFIG_SYS_NS16550_SERIAL
661de55ef1SStephan Linz # if defined(__MICROBLAZEEL__)
6752a822edSMichal Simek #  define CONFIG_SYS_NS16550_REG_SIZE	-4
681de55ef1SStephan Linz # else
691de55ef1SStephan Linz #  define CONFIG_SYS_NS16550_REG_SIZE	4
701de55ef1SStephan Linz # endif
7152a822edSMichal Simek # define CONFIG_CONS_INDEX		1
724aecfb16SMichal Simek # define CONFIG_SYS_NS16550_COM1 \
731de55ef1SStephan Linz 		((XILINX_UART16550_BASEADDR & ~0xF) + 0x1000)
7452a822edSMichal Simek # define CONFIG_SYS_NS16550_CLK	XILINX_UART16550_CLOCK_HZ
7552a822edSMichal Simek # define CONFIG_BAUDRATE	115200
7652a822edSMichal Simek 
7752a822edSMichal Simek /* The following table includes the supported baudrates */
7852a822edSMichal Simek # define CONFIG_SYS_BAUDRATE_TABLE \
7952a822edSMichal Simek 	{300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400}
80330e5545SMichal Simek # define CONSOLE_ARG	"console=console=ttyS0,115200\0"
8152a822edSMichal Simek #else
8252a822edSMichal Simek # error Undefined uart
8352a822edSMichal Simek #endif
8452a822edSMichal Simek 
8552a822edSMichal Simek /* setting reset address */
8614d0a02aSWolfgang Denk /*#define	CONFIG_SYS_RESET_ADDRESS	CONFIG_SYS_TEXT_BASE*/
8752a822edSMichal Simek 
8852a822edSMichal Simek /* ethernet */
891252df06SMichal Simek #undef CONFIG_SYS_ENET
908422a35eSStephan Linz #if defined(XILINX_EMACLITE_BASEADDR)
9152a822edSMichal Simek # define CONFIG_XILINX_EMACLITE	1
9252a822edSMichal Simek # define CONFIG_SYS_ENET
938422a35eSStephan Linz #endif
948422a35eSStephan Linz #if defined(XILINX_LLTEMAC_BASEADDR)
95330e5545SMichal Simek # define CONFIG_XILINX_LL_TEMAC	1
96330e5545SMichal Simek # define CONFIG_SYS_ENET
9752a822edSMichal Simek #endif
98e634138eSMichal Simek #if defined(XILINX_AXIEMAC_BASEADDR)
99e634138eSMichal Simek # define CONFIG_XILINX_AXIEMAC	1
100e634138eSMichal Simek # define CONFIG_SYS_ENET
101e634138eSMichal Simek #endif
102330e5545SMichal Simek 
10352a822edSMichal Simek #undef ET_DEBUG
10452a822edSMichal Simek 
10552a822edSMichal Simek /* gpio */
10652a822edSMichal Simek #ifdef XILINX_GPIO_BASEADDR
10752a822edSMichal Simek # define CONFIG_SYS_GPIO_0		1
10852a822edSMichal Simek # define CONFIG_SYS_GPIO_0_ADDR		XILINX_GPIO_BASEADDR
10952a822edSMichal Simek #endif
11052a822edSMichal Simek 
11152a822edSMichal Simek /* interrupt controller */
11252a822edSMichal Simek #ifdef XILINX_INTC_BASEADDR
11352a822edSMichal Simek # define CONFIG_SYS_INTC_0_ADDR		XILINX_INTC_BASEADDR
11452a822edSMichal Simek # define CONFIG_SYS_INTC_0_NUM		XILINX_INTC_NUM_INTR_INPUTS
11552a822edSMichal Simek #endif
11652a822edSMichal Simek 
11752a822edSMichal Simek /* timer */
11852a822edSMichal Simek #ifdef XILINX_TIMER_BASEADDR
11952a822edSMichal Simek # if (XILINX_TIMER_IRQ != -1)
12052a822edSMichal Simek #  define CONFIG_SYS_TIMER_0		1
12152a822edSMichal Simek #  define CONFIG_SYS_TIMER_0_ADDR	XILINX_TIMER_BASEADDR
12252a822edSMichal Simek #  define CONFIG_SYS_TIMER_0_IRQ	XILINX_TIMER_IRQ
12352a822edSMichal Simek #  define FREQUENCE	XILINX_CLOCK_FREQ
12452a822edSMichal Simek #  define CONFIG_SYS_TIMER_0_PRELOAD	( FREQUENCE/1000 )
12552a822edSMichal Simek # endif
126330e5545SMichal Simek #elif XILINX_CLOCK_FREQ
12752a822edSMichal Simek # define CONFIG_XILINX_CLOCK_FREQ	XILINX_CLOCK_FREQ
12852a822edSMichal Simek #else
12952a822edSMichal Simek # error BAD CLOCK FREQ
13052a822edSMichal Simek #endif
13152a822edSMichal Simek /* FSL */
13252a822edSMichal Simek /* #define	CONFIG_SYS_FSL_2 */
13352a822edSMichal Simek /* #define	FSL_INTR_2	1 */
13452a822edSMichal Simek 
13552a822edSMichal Simek /*
13652a822edSMichal Simek  * memory layout - Example
1378f371b18SStephan Linz  * CONFIG_SYS_TEXT_BASE = 0x1200_0000;	defined in config.mk
13852a822edSMichal Simek  * CONFIG_SYS_SRAM_BASE = 0x1000_0000;
1398f371b18SStephan Linz  * CONFIG_SYS_SRAM_SIZE = 0x0400_0000;	64MB
1408f371b18SStephan Linz  *
1418f371b18SStephan Linz  * CONFIG_SYS_MONITOR_LEN = 0x40000
1428f371b18SStephan Linz  * CONFIG_SYS_MALLOC_LEN = 3 * CONFIG_SYS_MONITOR_LEN = 0xC0000
14352a822edSMichal Simek  *
14452a822edSMichal Simek  * CONFIG_SYS_GBL_DATA_OFFSET = 0x1000_0000 + 0x0400_0000 - 0x1000 = 0x13FF_F000
1458f371b18SStephan Linz  * CONFIG_SYS_MONITOR_BASE = 0x13FF_F000 - CONFIG_SYS_MONITOR_LEN = 0x13FB_F000
1468f371b18SStephan Linz  * CONFIG_SYS_MALLOC_BASE = 0x13FB_F000 - CONFIG_SYS_MALLOC_LEN = 0x13EF_F000
14752a822edSMichal Simek  *
14852a822edSMichal Simek  * 0x1000_0000	CONFIG_SYS_SDRAM_BASE
1498f371b18SStephan Linz  *					MEMTEST_AREA	 64kB
15052a822edSMichal Simek  *					FREE
15114d0a02aSWolfgang Denk  * 0x1200_0000	CONFIG_SYS_TEXT_BASE
15252a822edSMichal Simek  *		U-BOOT code
15352a822edSMichal Simek  * 0x1202_0000
15452a822edSMichal Simek  *					FREE
15552a822edSMichal Simek  *
15652a822edSMichal Simek  *					STACK
1578f371b18SStephan Linz  * 0x13EF_F000	CONFIG_SYS_MALLOC_BASE
1588f371b18SStephan Linz  *					MALLOC_AREA	768kB	Alloc
1598f371b18SStephan Linz  * 0x13FB_F000	CONFIG_SYS_MONITOR_BASE
16052a822edSMichal Simek  *					MONITOR_CODE	256kB	Env
16152a822edSMichal Simek  * 0x13FF_F000	CONFIG_SYS_GBL_DATA_OFFSET
16252a822edSMichal Simek  *					GLOBAL_DATA	4kB	bd, gd
16352a822edSMichal Simek  * 0x1400_0000	CONFIG_SYS_SDRAM_BASE + CONFIG_SYS_SDRAM_SIZE
16452a822edSMichal Simek  */
16552a822edSMichal Simek 
16652a822edSMichal Simek /* ddr sdram - main memory */
16752a822edSMichal Simek #define	CONFIG_SYS_SDRAM_BASE		XILINX_RAM_START
16852a822edSMichal Simek #define	CONFIG_SYS_SDRAM_SIZE		XILINX_RAM_SIZE
16952a822edSMichal Simek #define	CONFIG_SYS_MEMTEST_START	CONFIG_SYS_SDRAM_BASE
17052a822edSMichal Simek #define	CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_SDRAM_BASE + 0x1000)
17152a822edSMichal Simek 
17252a822edSMichal Simek /* global pointer */
17352a822edSMichal Simek /* start of global data */
1744aecfb16SMichal Simek #define	CONFIG_SYS_GBL_DATA_OFFSET \
1751020286eSMichal Simek 		(CONFIG_SYS_SDRAM_SIZE - GENERATED_GBL_DATA_SIZE)
17652a822edSMichal Simek 
17752a822edSMichal Simek /* monitor code */
17852a822edSMichal Simek #define	SIZE				0x40000
1791020286eSMichal Simek #define	CONFIG_SYS_MONITOR_LEN		SIZE
1804aecfb16SMichal Simek #define	CONFIG_SYS_MONITOR_BASE	\
1811020286eSMichal Simek 		(CONFIG_SYS_SDRAM_BASE + CONFIG_SYS_GBL_DATA_OFFSET \
1821020286eSMichal Simek 			- CONFIG_SYS_MONITOR_LEN - GENERATED_BD_INFO_SIZE)
1834aecfb16SMichal Simek #define	CONFIG_SYS_MONITOR_END \
1844aecfb16SMichal Simek 			(CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN)
1857cfb13a7SStephan Linz #define	CONFIG_SYS_MALLOC_LEN		(SIZE * 3)
1864aecfb16SMichal Simek #define	CONFIG_SYS_MALLOC_BASE \
1874aecfb16SMichal Simek 			(CONFIG_SYS_MONITOR_BASE - CONFIG_SYS_MALLOC_LEN)
18852a822edSMichal Simek 
18952a822edSMichal Simek /* stack */
1908fe7b29fSGraeme Smecher #define	CONFIG_SYS_INIT_SP_OFFSET	CONFIG_SYS_MALLOC_BASE
19152a822edSMichal Simek 
1928f371b18SStephan Linz /*
1938f371b18SStephan Linz  * CFI flash memory layout - Example
1948f371b18SStephan Linz  * CONFIG_SYS_FLASH_BASE = 0x2200_0000;
1958f371b18SStephan Linz  * CONFIG_SYS_FLASH_SIZE = 0x0080_0000;	  8MB
1968f371b18SStephan Linz  *
1978f371b18SStephan Linz  * SECT_SIZE = 0x20000;			128kB is one sector
1988f371b18SStephan Linz  * CONFIG_ENV_SIZE = SECT_SIZE;		128kB environment store
1998f371b18SStephan Linz  *
2008f371b18SStephan Linz  * 0x2200_0000	CONFIG_SYS_FLASH_BASE
2018f371b18SStephan Linz  *					FREE		256kB
2028f371b18SStephan Linz  * 0x2204_0000	CONFIG_ENV_ADDR
2038f371b18SStephan Linz  *					ENV_AREA	128kB
2048f371b18SStephan Linz  * 0x2206_0000
2058f371b18SStephan Linz  *					FREE
2068f371b18SStephan Linz  * 0x2280_0000	CONFIG_SYS_FLASH_BASE + CONFIG_SYS_FLASH_SIZE
2078f371b18SStephan Linz  *
2088f371b18SStephan Linz  */
2098f371b18SStephan Linz 
21052a822edSMichal Simek #ifdef FLASH
21152a822edSMichal Simek # define CONFIG_SYS_FLASH_BASE		XILINX_FLASH_START
21252a822edSMichal Simek # define CONFIG_SYS_FLASH_SIZE		XILINX_FLASH_SIZE
21352a822edSMichal Simek # define CONFIG_SYS_FLASH_CFI		1
21452a822edSMichal Simek # define CONFIG_FLASH_CFI_DRIVER	1
2154aecfb16SMichal Simek /* ?empty sector */
2164aecfb16SMichal Simek # define CONFIG_SYS_FLASH_EMPTY_INFO	1
2174aecfb16SMichal Simek /* max number of memory banks */
2184aecfb16SMichal Simek # define CONFIG_SYS_MAX_FLASH_BANKS	1
2194aecfb16SMichal Simek /* max number of sectors on one chip */
2204aecfb16SMichal Simek # define CONFIG_SYS_MAX_FLASH_SECT	512
2214aecfb16SMichal Simek /* hardware flash protection */
2224aecfb16SMichal Simek # define CONFIG_SYS_FLASH_PROTECTION
22352a822edSMichal Simek 
22452a822edSMichal Simek # ifdef	RAMENV
22552a822edSMichal Simek #  define CONFIG_ENV_IS_NOWHERE	1
22652a822edSMichal Simek #  define CONFIG_ENV_SIZE	0x1000
22752a822edSMichal Simek #  define CONFIG_ENV_ADDR	(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SIZE)
22852a822edSMichal Simek 
229*bcec8f49SStephan Linz # else	/* FLASH && !RAMENV */
23052a822edSMichal Simek #  define CONFIG_ENV_IS_IN_FLASH	1
2314aecfb16SMichal Simek /* 128K(one sector) for env */
2324aecfb16SMichal Simek #  define CONFIG_ENV_SECT_SIZE	0x20000
2334aecfb16SMichal Simek #  define CONFIG_ENV_ADDR \
2344aecfb16SMichal Simek 			(CONFIG_SYS_FLASH_BASE + (2 * CONFIG_ENV_SECT_SIZE))
235330e5545SMichal Simek #  define CONFIG_ENV_SIZE	0x20000
236*bcec8f49SStephan Linz # endif /* FLASH && !RAMBOOT */
23752a822edSMichal Simek #else /* !FLASH */
238*bcec8f49SStephan Linz 
239*bcec8f49SStephan Linz #ifdef SPIFLASH
240*bcec8f49SStephan Linz # define CONFIG_SYS_NO_FLASH		1
241*bcec8f49SStephan Linz # define CONFIG_SYS_SPI_BASE		XILINX_SPI_FLASH_BASEADDR
242*bcec8f49SStephan Linz # define CONFIG_XILINX_SPI		1
243*bcec8f49SStephan Linz # define CONFIG_SPI			1
244*bcec8f49SStephan Linz # define CONFIG_SPI_FLASH		1
245*bcec8f49SStephan Linz # define CONFIG_SPI_FLASH_STMICRO	1
246*bcec8f49SStephan Linz # define CONFIG_SF_DEFAULT_MODE		SPI_MODE_3
247*bcec8f49SStephan Linz # define CONFIG_SF_DEFAULT_SPEED	XILINX_SPI_FLASH_MAX_FREQ
248*bcec8f49SStephan Linz # define CONFIG_SF_DEFAULT_CS		XILINX_SPI_FLASH_CS
249*bcec8f49SStephan Linz 
250*bcec8f49SStephan Linz # ifdef	RAMENV
251*bcec8f49SStephan Linz #  define CONFIG_ENV_IS_NOWHERE	1
252*bcec8f49SStephan Linz #  define CONFIG_ENV_SIZE	0x1000
253*bcec8f49SStephan Linz #  define CONFIG_ENV_ADDR	(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SIZE)
254*bcec8f49SStephan Linz 
255*bcec8f49SStephan Linz # else	/* SPIFLASH && !RAMENV */
256*bcec8f49SStephan Linz #  define CONFIG_ENV_IS_IN_SPI_FLASH	1
257*bcec8f49SStephan Linz #  define CONFIG_ENV_SPI_MODE		SPI_MODE_3
258*bcec8f49SStephan Linz #  define CONFIG_ENV_SPI_MAX_HZ		CONFIG_SF_DEFAULT_SPEED
259*bcec8f49SStephan Linz #  define CONFIG_ENV_SPI_CS		CONFIG_SF_DEFAULT_CS
260*bcec8f49SStephan Linz /* 128K(two sectors) for env */
261*bcec8f49SStephan Linz #  define CONFIG_ENV_SECT_SIZE	0x10000
262*bcec8f49SStephan Linz #  define CONFIG_ENV_SIZE	(2 * CONFIG_ENV_SECT_SIZE)
263*bcec8f49SStephan Linz /* Warning: adjust the offset in respect of other flash content and size */
264*bcec8f49SStephan Linz #  define CONFIG_ENV_OFFSET	(128 * CONFIG_ENV_SECT_SIZE) /* at 8MB */
265*bcec8f49SStephan Linz # endif /* SPIFLASH && !RAMBOOT */
266*bcec8f49SStephan Linz #else /* !SPIFLASH */
267*bcec8f49SStephan Linz 
26852a822edSMichal Simek /* ENV in RAM */
26952a822edSMichal Simek # define CONFIG_SYS_NO_FLASH	1
27052a822edSMichal Simek # define CONFIG_ENV_IS_NOWHERE	1
27152a822edSMichal Simek # define CONFIG_ENV_SIZE	0x1000
27252a822edSMichal Simek # define CONFIG_ENV_ADDR	(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SIZE)
273*bcec8f49SStephan Linz #endif /* !SPIFLASH */
27452a822edSMichal Simek #endif /* !FLASH */
27552a822edSMichal Simek 
27652a822edSMichal Simek /* system ace */
27752a822edSMichal Simek #ifdef XILINX_SYSACE_BASEADDR
27852a822edSMichal Simek # define CONFIG_SYSTEMACE
27952a822edSMichal Simek /* #define DEBUG_SYSTEMACE */
28052a822edSMichal Simek # define SYSTEMACE_CONFIG_FPGA
28152a822edSMichal Simek # define CONFIG_SYS_SYSTEMACE_BASE	XILINX_SYSACE_BASEADDR
28252a822edSMichal Simek # define CONFIG_SYS_SYSTEMACE_WIDTH	XILINX_SYSACE_MEM_WIDTH
28352a822edSMichal Simek # define CONFIG_DOS_PARTITION
28452a822edSMichal Simek #endif
28552a822edSMichal Simek 
286e9b737deSMichal Simek #if defined(XILINX_USE_ICACHE)
287e9b737deSMichal Simek # define CONFIG_ICACHE
288e9b737deSMichal Simek #else
289e9b737deSMichal Simek # undef CONFIG_ICACHE
290e9b737deSMichal Simek #endif
291e9b737deSMichal Simek 
292e9b737deSMichal Simek #if defined(XILINX_USE_DCACHE)
293e9b737deSMichal Simek # define CONFIG_DCACHE
294e9b737deSMichal Simek #else
295e9b737deSMichal Simek # undef CONFIG_DCACHE
296e9b737deSMichal Simek #endif
297e9b737deSMichal Simek 
29852a822edSMichal Simek /*
29952a822edSMichal Simek  * BOOTP options
30052a822edSMichal Simek  */
30152a822edSMichal Simek #define CONFIG_BOOTP_BOOTFILESIZE
30252a822edSMichal Simek #define CONFIG_BOOTP_BOOTPATH
30352a822edSMichal Simek #define CONFIG_BOOTP_GATEWAY
30452a822edSMichal Simek #define CONFIG_BOOTP_HOSTNAME
30552a822edSMichal Simek 
30652a822edSMichal Simek /*
30752a822edSMichal Simek  * Command line configuration.
30852a822edSMichal Simek  */
30952a822edSMichal Simek #include <config_cmd_default.h>
31052a822edSMichal Simek 
31152a822edSMichal Simek #define CONFIG_CMD_ASKENV
31252a822edSMichal Simek #define CONFIG_CMD_IRQ
31352a822edSMichal Simek #define CONFIG_CMD_MFSL
314330e5545SMichal Simek #define CONFIG_CMD_ECHO
31552a822edSMichal Simek 
316e9b737deSMichal Simek #if defined(CONFIG_DCACHE) || defined(CONFIG_ICACHE)
317e9b737deSMichal Simek # define CONFIG_CMD_CACHE
318e9b737deSMichal Simek #else
319e9b737deSMichal Simek # undef CONFIG_CMD_CACHE
320e9b737deSMichal Simek #endif
321e9b737deSMichal Simek 
32252a822edSMichal Simek #ifndef CONFIG_SYS_ENET
32352a822edSMichal Simek # undef CONFIG_CMD_NET
3241252df06SMichal Simek # undef CONFIG_CMD_NFS
32552a822edSMichal Simek #else
32652a822edSMichal Simek # define CONFIG_CMD_PING
3273faf987dSStephan Linz # define CONFIG_CMD_DHCP
3284eb29cf0SStephan Linz # define CONFIG_CMD_TFTPPUT
32952a822edSMichal Simek #endif
33052a822edSMichal Simek 
33152a822edSMichal Simek #if defined(CONFIG_SYSTEMACE)
33252a822edSMichal Simek # define CONFIG_CMD_EXT2
33352a822edSMichal Simek # define CONFIG_CMD_FAT
33452a822edSMichal Simek #endif
33552a822edSMichal Simek 
33652a822edSMichal Simek #if defined(FLASH)
33752a822edSMichal Simek # define CONFIG_CMD_ECHO
33852a822edSMichal Simek # define CONFIG_CMD_FLASH
33952a822edSMichal Simek # define CONFIG_CMD_IMLS
34052a822edSMichal Simek # define CONFIG_CMD_JFFS2
3417cfb13a7SStephan Linz # define CONFIG_CMD_UBI
3427cfb13a7SStephan Linz # undef CONFIG_CMD_UBIFS
34352a822edSMichal Simek 
34452a822edSMichal Simek # if !defined(RAMENV)
345bdab39d3SMike Frysinger #  define CONFIG_CMD_SAVEENV
34652a822edSMichal Simek #  define CONFIG_CMD_SAVES
34752a822edSMichal Simek # endif
348*bcec8f49SStephan Linz 
349*bcec8f49SStephan Linz #else
350*bcec8f49SStephan Linz #if defined(SPIFLASH)
351*bcec8f49SStephan Linz # define CONFIG_CMD_SF
352*bcec8f49SStephan Linz 
353*bcec8f49SStephan Linz # if !defined(RAMENV)
354*bcec8f49SStephan Linz #  define CONFIG_CMD_SAVEENV
355*bcec8f49SStephan Linz #  define CONFIG_CMD_SAVES
356*bcec8f49SStephan Linz # endif
35752a822edSMichal Simek #else
358330e5545SMichal Simek # undef CONFIG_CMD_IMLS
35952a822edSMichal Simek # undef CONFIG_CMD_FLASH
360330e5545SMichal Simek # undef CONFIG_CMD_JFFS2
3612cce2d32SStephan Linz # undef CONFIG_CMD_UBI
3622cce2d32SStephan Linz # undef CONFIG_CMD_UBIFS
36352a822edSMichal Simek #endif
364*bcec8f49SStephan Linz #endif
36552a822edSMichal Simek 
36652a822edSMichal Simek #if defined(CONFIG_CMD_JFFS2)
3677cfb13a7SStephan Linz # define CONFIG_MTD_PARTITIONS
3687cfb13a7SStephan Linz #endif
3697cfb13a7SStephan Linz 
3707cfb13a7SStephan Linz #if defined(CONFIG_CMD_UBIFS)
3717cfb13a7SStephan Linz # define CONFIG_CMD_UBI
3727cfb13a7SStephan Linz # define CONFIG_LZO
3737cfb13a7SStephan Linz #endif
3747cfb13a7SStephan Linz 
3757cfb13a7SStephan Linz #if defined(CONFIG_CMD_UBI)
3767cfb13a7SStephan Linz # define CONFIG_MTD_PARTITIONS
3777cfb13a7SStephan Linz # define CONFIG_RBTREE
3787cfb13a7SStephan Linz #endif
3797cfb13a7SStephan Linz 
3807cfb13a7SStephan Linz #if defined(CONFIG_MTD_PARTITIONS)
3817cfb13a7SStephan Linz /* MTD partitions */
38268d7d651SStefan Roese #define CONFIG_CMD_MTDPARTS	/* mtdparts command line support */
383942556a9SStefan Roese #define CONFIG_MTD_DEVICE	/* needed for mtdparts commands */
384942556a9SStefan Roese #define CONFIG_FLASH_CFI_MTD
385c82a541dSStephan Linz #define MTDIDS_DEFAULT		"nor0=flash-0"
38652a822edSMichal Simek 
38752a822edSMichal Simek /* default mtd partition table */
388c82a541dSStephan Linz #define MTDPARTS_DEFAULT	"mtdparts=flash-0:256k(u-boot),"\
38952a822edSMichal Simek 				"256k(env),3m(kernel),1m(romfs),"\
39052a822edSMichal Simek 				"1m(cramfs),-(jffs2)"
39152a822edSMichal Simek #endif
39252a822edSMichal Simek 
39352a822edSMichal Simek /* Miscellaneous configurable options */
39452a822edSMichal Simek #define	CONFIG_SYS_PROMPT	"U-Boot-mONStR> "
3954aecfb16SMichal Simek /* size of console buffer */
3964aecfb16SMichal Simek #define	CONFIG_SYS_CBSIZE	512
3974aecfb16SMichal Simek  /* print buffer size */
3984aecfb16SMichal Simek #define	CONFIG_SYS_PBSIZE \
3994aecfb16SMichal Simek 		(CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16)
4004aecfb16SMichal Simek /* max number of command args */
4014aecfb16SMichal Simek #define	CONFIG_SYS_MAXARGS	15
40252a822edSMichal Simek #define	CONFIG_SYS_LONGHELP
4034aecfb16SMichal Simek /* default load address */
4044aecfb16SMichal Simek #define	CONFIG_SYS_LOAD_ADDR	XILINX_RAM_START
40552a822edSMichal Simek 
406330e5545SMichal Simek #define	CONFIG_BOOTDELAY	-1	/* -1 disables auto-boot */
40752a822edSMichal Simek #define	CONFIG_BOOTARGS		"root=romfs"
408330e5545SMichal Simek #define	CONFIG_HOSTNAME		XILINX_BOARD_NAME
40952a822edSMichal Simek #define	CONFIG_BOOTCOMMAND	"base 0;tftp 11000000 image.img;bootm"
41052a822edSMichal Simek #define	CONFIG_IPADDR		192.168.0.3
41152a822edSMichal Simek #define	CONFIG_SERVERIP		192.168.0.5
41252a822edSMichal Simek #define	CONFIG_GATEWAYIP	192.168.0.1
41352a822edSMichal Simek #define	CONFIG_ETHADDR		00:E0:0C:00:00:FD
41452a822edSMichal Simek 
41552a822edSMichal Simek /* architecture dependent code */
41652a822edSMichal Simek #define	CONFIG_SYS_USR_EXCEP	/* user exception */
41752a822edSMichal Simek #define CONFIG_SYS_HZ	1000
41852a822edSMichal Simek 
4190900bee9SMichal Simek #define	CONFIG_PREBOOT	"echo U-BOOT for ${hostname};setenv preboot;echo"
42052a822edSMichal Simek 
4214aecfb16SMichal Simek #define	CONFIG_EXTRA_ENV_SETTINGS	"unlock=yes\0" \
422c82a541dSStephan Linz 					"nor0=flash-0\0"\
423c82a541dSStephan Linz 					"mtdparts=mtdparts=flash-0:"\
42452a822edSMichal Simek 					"256k(u-boot),256k(env),3m(kernel),"\
42552a822edSMichal Simek 					"1m(romfs),1m(cramfs),-(jffs2)\0"
42652a822edSMichal Simek 
42752a822edSMichal Simek #define CONFIG_CMDLINE_EDITING
42852a822edSMichal Simek 
4290900bee9SMichal Simek /* Use the HUSH parser */
4300900bee9SMichal Simek #define CONFIG_SYS_HUSH_PARSER
4310900bee9SMichal Simek 
43237e892d9SMichal Simek /* Enable flat device tree support */
43337e892d9SMichal Simek #define CONFIG_LMB		1
43437e892d9SMichal Simek #define CONFIG_FIT		1
43537e892d9SMichal Simek #define CONFIG_OF_LIBFDT	1
43637e892d9SMichal Simek 
4378422a35eSStephan Linz #if defined(CONFIG_XILINX_LL_TEMAC) || defined(CONFIG_XILINX_AXIEMAC)
438f5e5e1ffSStephan Linz # define CONFIG_MII		1
439f5e5e1ffSStephan Linz # define CONFIG_CMD_MII		1
440f5e5e1ffSStephan Linz # define CONFIG_PHY_GIGE	1
441f5e5e1ffSStephan Linz # define CONFIG_SYS_FAULT_ECHO_LINK_DOWN	1
442f5e5e1ffSStephan Linz # define CONFIG_PHYLIB		1
443f5e5e1ffSStephan Linz # define CONFIG_PHY_ATHEROS	1
444f5e5e1ffSStephan Linz # define CONFIG_PHY_BROADCOM	1
445f5e5e1ffSStephan Linz # define CONFIG_PHY_DAVICOM	1
446f5e5e1ffSStephan Linz # define CONFIG_PHY_LXT		1
447f5e5e1ffSStephan Linz # define CONFIG_PHY_MARVELL	1
448f5e5e1ffSStephan Linz # define CONFIG_PHY_MICREL	1
449f5e5e1ffSStephan Linz # define CONFIG_PHY_NATSEMI	1
450f5e5e1ffSStephan Linz # define CONFIG_PHY_REALTEK	1
451f5e5e1ffSStephan Linz # define CONFIG_PHY_VITESSE	1
452f5e5e1ffSStephan Linz #else
453f5e5e1ffSStephan Linz # undef CONFIG_MII
454f5e5e1ffSStephan Linz # undef CONFIG_CMD_MII
455f5e5e1ffSStephan Linz # undef CONFIG_PHYLIB
456f5e5e1ffSStephan Linz #endif
457f5e5e1ffSStephan Linz 
45852a822edSMichal Simek #endif	/* __CONFIG_H */
459