xref: /rk3399_rockchip-uboot/include/configs/microblaze-generic.h (revision 4632b1ea2080cab08c6e2062de1a05059fd41e5f)
152a822edSMichal Simek /*
24aecfb16SMichal Simek  * (C) Copyright 2007-2010 Michal Simek
352a822edSMichal Simek  *
452a822edSMichal Simek  * Michal SIMEK <monstr@monstr.eu>
552a822edSMichal Simek  *
61a459660SWolfgang Denk  * SPDX-License-Identifier:	GPL-2.0+
752a822edSMichal Simek  */
852a822edSMichal Simek 
952a822edSMichal Simek #ifndef __CONFIG_H
1052a822edSMichal Simek #define __CONFIG_H
1152a822edSMichal Simek 
1252a822edSMichal Simek #include "../board/xilinx/microblaze-generic/xparameters.h"
1352a822edSMichal Simek 
144aecfb16SMichal Simek /* MicroBlaze CPU */
1552a822edSMichal Simek #define	MICROBLAZE_V5		1
1652a822edSMichal Simek 
17bcec8f49SStephan Linz /* linear and spi flash memory */
181fe7e8faSStephan Linz #ifdef XILINX_FLASH_START
191fe7e8faSStephan Linz #define	FLASH
20bcec8f49SStephan Linz #undef	SPIFLASH
21bcec8f49SStephan Linz #undef	RAMENV	/* hold environment in flash */
22bcec8f49SStephan Linz #else
23bcec8f49SStephan Linz #ifdef XILINX_SPI_FLASH_BASEADDR
24bcec8f49SStephan Linz #undef	FLASH
25bcec8f49SStephan Linz #define	SPIFLASH
261fe7e8faSStephan Linz #undef	RAMENV	/* hold environment in flash */
271fe7e8faSStephan Linz #else
281fe7e8faSStephan Linz #undef	FLASH
29bcec8f49SStephan Linz #undef	SPIFLASH
301fe7e8faSStephan Linz #define	RAMENV	/* hold environment in RAM */
311fe7e8faSStephan Linz #endif
32bcec8f49SStephan Linz #endif
331fe7e8faSStephan Linz 
3452a822edSMichal Simek /* uart */
3552a822edSMichal Simek #ifdef XILINX_UARTLITE_BASEADDR
3652a822edSMichal Simek # define CONFIG_XILINX_UARTLITE
3752a822edSMichal Simek # define CONFIG_SERIAL_BASE	XILINX_UARTLITE_BASEADDR
3852a822edSMichal Simek # define CONFIG_BAUDRATE	XILINX_UARTLITE_BAUDRATE
3952a822edSMichal Simek # define CONFIG_SYS_BAUDRATE_TABLE	{ CONFIG_BAUDRATE }
40330e5545SMichal Simek # define CONSOLE_ARG	"console=console=ttyUL0,115200\0"
4152a822edSMichal Simek #elif XILINX_UART16550_BASEADDR
4252a822edSMichal Simek # define CONFIG_SYS_NS16550_SERIAL
431de55ef1SStephan Linz # if defined(__MICROBLAZEEL__)
4452a822edSMichal Simek #  define CONFIG_SYS_NS16550_REG_SIZE	-4
451de55ef1SStephan Linz # else
461de55ef1SStephan Linz #  define CONFIG_SYS_NS16550_REG_SIZE	4
471de55ef1SStephan Linz # endif
4852a822edSMichal Simek # define CONFIG_CONS_INDEX		1
494aecfb16SMichal Simek # define CONFIG_SYS_NS16550_COM1 \
501de55ef1SStephan Linz 		((XILINX_UART16550_BASEADDR & ~0xF) + 0x1000)
5152a822edSMichal Simek # define CONFIG_SYS_NS16550_CLK	XILINX_UART16550_CLOCK_HZ
5252a822edSMichal Simek # define CONFIG_BAUDRATE	115200
5352a822edSMichal Simek 
5452a822edSMichal Simek /* The following table includes the supported baudrates */
5552a822edSMichal Simek # define CONFIG_SYS_BAUDRATE_TABLE \
5652a822edSMichal Simek 	{300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400}
57330e5545SMichal Simek # define CONSOLE_ARG	"console=console=ttyS0,115200\0"
5852a822edSMichal Simek #else
5952a822edSMichal Simek # error Undefined uart
6052a822edSMichal Simek #endif
6152a822edSMichal Simek 
6252a822edSMichal Simek /* setting reset address */
6314d0a02aSWolfgang Denk /*#define	CONFIG_SYS_RESET_ADDRESS	CONFIG_SYS_TEXT_BASE*/
6452a822edSMichal Simek 
6552a822edSMichal Simek /* ethernet */
661252df06SMichal Simek #undef CONFIG_SYS_ENET
67d1d37b5cSStephan Linz #if defined(XILINX_EMACLITE_BASEADDR) || defined(CONFIG_OF_CONTROL)
6852a822edSMichal Simek # define CONFIG_XILINX_EMACLITE	1
6952a822edSMichal Simek # define CONFIG_SYS_ENET
708422a35eSStephan Linz #endif
71e634138eSMichal Simek #if defined(XILINX_AXIEMAC_BASEADDR)
72e634138eSMichal Simek # define CONFIG_XILINX_AXIEMAC	1
73e634138eSMichal Simek # define CONFIG_SYS_ENET
74e634138eSMichal Simek #endif
75330e5545SMichal Simek 
7652a822edSMichal Simek #undef ET_DEBUG
7752a822edSMichal Simek 
7852a822edSMichal Simek /* gpio */
7952a822edSMichal Simek #ifdef XILINX_GPIO_BASEADDR
804e779ad2SMichal Simek # define CONFIG_XILINX_GPIO
8152a822edSMichal Simek # define CONFIG_SYS_GPIO_0_ADDR		XILINX_GPIO_BASEADDR
8252a822edSMichal Simek #endif
8352a822edSMichal Simek 
8452a822edSMichal Simek /* interrupt controller */
8552a822edSMichal Simek #ifdef XILINX_INTC_BASEADDR
8652a822edSMichal Simek # define CONFIG_SYS_INTC_0_ADDR		XILINX_INTC_BASEADDR
8752a822edSMichal Simek # define CONFIG_SYS_INTC_0_NUM		XILINX_INTC_NUM_INTR_INPUTS
8852a822edSMichal Simek #endif
8952a822edSMichal Simek 
9052a822edSMichal Simek /* timer */
91bcbb046bSMichal Simek #if defined(XILINX_TIMER_BASEADDR) && defined(XILINX_TIMER_IRQ)
9252a822edSMichal Simek #  define CONFIG_SYS_TIMER_0_ADDR	XILINX_TIMER_BASEADDR
9352a822edSMichal Simek #  define CONFIG_SYS_TIMER_0_IRQ	XILINX_TIMER_IRQ
9452a822edSMichal Simek #endif
95bcbb046bSMichal Simek 
960f21f98dSMichal Simek /* watchdog */
970f21f98dSMichal Simek #if defined(XILINX_WATCHDOG_BASEADDR) && defined(XILINX_WATCHDOG_IRQ)
980f21f98dSMichal Simek # define CONFIG_WATCHDOG_BASEADDR	XILINX_WATCHDOG_BASEADDR
990f21f98dSMichal Simek # define CONFIG_WATCHDOG_IRQ		XILINX_WATCHDOG_IRQ
1000f21f98dSMichal Simek # define CONFIG_HW_WATCHDOG
1010f21f98dSMichal Simek # define CONFIG_XILINX_TB_WATCHDOG
1020f21f98dSMichal Simek #endif
1030f21f98dSMichal Simek 
1040f925822SMasahiro Yamada #if !defined(CONFIG_OF_CONTROL) || \
1050f925822SMasahiro Yamada 	(defined(CONFIG_SPL_BUILD) && !defined(CONFIG_SPL_OF_CONTROL))
10652a822edSMichal Simek /* ddr sdram - main memory */
10752a822edSMichal Simek # define CONFIG_SYS_SDRAM_BASE	XILINX_RAM_START
10852a822edSMichal Simek # define CONFIG_SYS_SDRAM_SIZE	XILINX_RAM_SIZE
109e945f6dcSMichal Simek #endif
11052a822edSMichal Simek 
111e945f6dcSMichal Simek #define CONFIG_SYS_MALLOC_LEN	0xC0000
11252a822edSMichal Simek 
113e945f6dcSMichal Simek /* Stack location before relocation */
1144fcd0b33SMichal Simek #define CONFIG_SYS_INIT_SP_OFFSET	(CONFIG_SYS_TEXT_BASE - \
1154fcd0b33SMichal Simek 					 CONFIG_SYS_MALLOC_F_LEN)
11652a822edSMichal Simek 
1178f371b18SStephan Linz /*
1188f371b18SStephan Linz  * CFI flash memory layout - Example
1198f371b18SStephan Linz  * CONFIG_SYS_FLASH_BASE = 0x2200_0000;
1208f371b18SStephan Linz  * CONFIG_SYS_FLASH_SIZE = 0x0080_0000;	  8MB
1218f371b18SStephan Linz  *
1228f371b18SStephan Linz  * SECT_SIZE = 0x20000;			128kB is one sector
1238f371b18SStephan Linz  * CONFIG_ENV_SIZE = SECT_SIZE;		128kB environment store
1248f371b18SStephan Linz  *
1258f371b18SStephan Linz  * 0x2200_0000	CONFIG_SYS_FLASH_BASE
1268f371b18SStephan Linz  *					FREE		256kB
1278f371b18SStephan Linz  * 0x2204_0000	CONFIG_ENV_ADDR
1288f371b18SStephan Linz  *					ENV_AREA	128kB
1298f371b18SStephan Linz  * 0x2206_0000
1308f371b18SStephan Linz  *					FREE
1318f371b18SStephan Linz  * 0x2280_0000	CONFIG_SYS_FLASH_BASE + CONFIG_SYS_FLASH_SIZE
1328f371b18SStephan Linz  *
1338f371b18SStephan Linz  */
1348f371b18SStephan Linz 
13552a822edSMichal Simek #ifdef FLASH
13652a822edSMichal Simek # define CONFIG_SYS_FLASH_BASE		XILINX_FLASH_START
13752a822edSMichal Simek # define CONFIG_SYS_FLASH_SIZE		XILINX_FLASH_SIZE
13852a822edSMichal Simek # define CONFIG_SYS_FLASH_CFI		1
13952a822edSMichal Simek # define CONFIG_FLASH_CFI_DRIVER	1
1404aecfb16SMichal Simek /* ?empty sector */
1414aecfb16SMichal Simek # define CONFIG_SYS_FLASH_EMPTY_INFO	1
1424aecfb16SMichal Simek /* max number of memory banks */
1434aecfb16SMichal Simek # define CONFIG_SYS_MAX_FLASH_BANKS	1
1444aecfb16SMichal Simek /* max number of sectors on one chip */
1454aecfb16SMichal Simek # define CONFIG_SYS_MAX_FLASH_SECT	512
1464aecfb16SMichal Simek /* hardware flash protection */
1474aecfb16SMichal Simek # define CONFIG_SYS_FLASH_PROTECTION
14822ff7f4dSMichal Simek /* use buffered writes (20x faster) */
14922ff7f4dSMichal Simek # define	CONFIG_SYS_FLASH_USE_BUFFER_WRITE	1
15052a822edSMichal Simek # ifdef	RAMENV
15152a822edSMichal Simek #  define CONFIG_ENV_IS_NOWHERE	1
15252a822edSMichal Simek #  define CONFIG_ENV_SIZE	0x1000
15352a822edSMichal Simek #  define CONFIG_ENV_ADDR	(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SIZE)
15452a822edSMichal Simek 
155bcec8f49SStephan Linz # else	/* FLASH && !RAMENV */
15652a822edSMichal Simek #  define CONFIG_ENV_IS_IN_FLASH	1
1574aecfb16SMichal Simek /* 128K(one sector) for env */
1584aecfb16SMichal Simek #  define CONFIG_ENV_SECT_SIZE	0x20000
1594aecfb16SMichal Simek #  define CONFIG_ENV_ADDR \
1604aecfb16SMichal Simek 			(CONFIG_SYS_FLASH_BASE + (2 * CONFIG_ENV_SECT_SIZE))
161330e5545SMichal Simek #  define CONFIG_ENV_SIZE	0x20000
162bcec8f49SStephan Linz # endif /* FLASH && !RAMBOOT */
16352a822edSMichal Simek #else /* !FLASH */
164bcec8f49SStephan Linz 
165bcec8f49SStephan Linz #ifdef SPIFLASH
166bcec8f49SStephan Linz # define CONFIG_SYS_NO_FLASH		1
167bcec8f49SStephan Linz # define CONFIG_SYS_SPI_BASE		XILINX_SPI_FLASH_BASEADDR
168bcec8f49SStephan Linz # define CONFIG_SPI			1
169bcec8f49SStephan Linz # define CONFIG_SF_DEFAULT_MODE		SPI_MODE_3
170bcec8f49SStephan Linz # define CONFIG_SF_DEFAULT_SPEED	XILINX_SPI_FLASH_MAX_FREQ
171bcec8f49SStephan Linz # define CONFIG_SF_DEFAULT_CS		XILINX_SPI_FLASH_CS
172bcec8f49SStephan Linz 
173bcec8f49SStephan Linz # ifdef	RAMENV
174bcec8f49SStephan Linz #  define CONFIG_ENV_IS_NOWHERE	1
175bcec8f49SStephan Linz #  define CONFIG_ENV_SIZE	0x1000
176bcec8f49SStephan Linz #  define CONFIG_ENV_ADDR	(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SIZE)
177bcec8f49SStephan Linz 
178bcec8f49SStephan Linz # else	/* SPIFLASH && !RAMENV */
179bcec8f49SStephan Linz #  define CONFIG_ENV_IS_IN_SPI_FLASH	1
180bcec8f49SStephan Linz #  define CONFIG_ENV_SPI_MODE		SPI_MODE_3
181bcec8f49SStephan Linz #  define CONFIG_ENV_SPI_MAX_HZ		CONFIG_SF_DEFAULT_SPEED
182bcec8f49SStephan Linz #  define CONFIG_ENV_SPI_CS		CONFIG_SF_DEFAULT_CS
183bcec8f49SStephan Linz /* 128K(two sectors) for env */
184bcec8f49SStephan Linz #  define CONFIG_ENV_SECT_SIZE	0x10000
185bcec8f49SStephan Linz #  define CONFIG_ENV_SIZE	(2 * CONFIG_ENV_SECT_SIZE)
186bcec8f49SStephan Linz /* Warning: adjust the offset in respect of other flash content and size */
187bcec8f49SStephan Linz #  define CONFIG_ENV_OFFSET	(128 * CONFIG_ENV_SECT_SIZE) /* at 8MB */
188bcec8f49SStephan Linz # endif /* SPIFLASH && !RAMBOOT */
189bcec8f49SStephan Linz #else /* !SPIFLASH */
190bcec8f49SStephan Linz 
19152a822edSMichal Simek /* ENV in RAM */
19252a822edSMichal Simek # define CONFIG_SYS_NO_FLASH	1
19352a822edSMichal Simek # define CONFIG_ENV_IS_NOWHERE	1
19452a822edSMichal Simek # define CONFIG_ENV_SIZE	0x1000
19552a822edSMichal Simek # define CONFIG_ENV_ADDR	(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SIZE)
196bcec8f49SStephan Linz #endif /* !SPIFLASH */
19752a822edSMichal Simek #endif /* !FLASH */
19852a822edSMichal Simek 
19952a822edSMichal Simek /* system ace */
20052a822edSMichal Simek #ifdef XILINX_SYSACE_BASEADDR
20152a822edSMichal Simek # define CONFIG_SYSTEMACE
20252a822edSMichal Simek /* #define DEBUG_SYSTEMACE */
20352a822edSMichal Simek # define SYSTEMACE_CONFIG_FPGA
20452a822edSMichal Simek # define CONFIG_SYS_SYSTEMACE_BASE	XILINX_SYSACE_BASEADDR
20552a822edSMichal Simek # define CONFIG_SYS_SYSTEMACE_WIDTH	XILINX_SYSACE_MEM_WIDTH
20652a822edSMichal Simek # define CONFIG_DOS_PARTITION
20752a822edSMichal Simek #endif
20852a822edSMichal Simek 
209e9b737deSMichal Simek #if defined(XILINX_USE_ICACHE)
210e9b737deSMichal Simek # define CONFIG_ICACHE
211e9b737deSMichal Simek #else
212e9b737deSMichal Simek # undef CONFIG_ICACHE
213e9b737deSMichal Simek #endif
214e9b737deSMichal Simek 
215e9b737deSMichal Simek #if defined(XILINX_USE_DCACHE)
216e9b737deSMichal Simek # define CONFIG_DCACHE
217e9b737deSMichal Simek #else
218e9b737deSMichal Simek # undef CONFIG_DCACHE
219e9b737deSMichal Simek #endif
220e9b737deSMichal Simek 
2215811830fSMichal Simek #ifndef XILINX_DCACHE_BYTE_SIZE
2225811830fSMichal Simek #define XILINX_DCACHE_BYTE_SIZE	32768
2235811830fSMichal Simek #endif
2245811830fSMichal Simek 
22552a822edSMichal Simek /*
22652a822edSMichal Simek  * BOOTP options
22752a822edSMichal Simek  */
22852a822edSMichal Simek #define CONFIG_BOOTP_BOOTFILESIZE
22952a822edSMichal Simek #define CONFIG_BOOTP_BOOTPATH
23052a822edSMichal Simek #define CONFIG_BOOTP_GATEWAY
23152a822edSMichal Simek #define CONFIG_BOOTP_HOSTNAME
23252a822edSMichal Simek 
23352a822edSMichal Simek /*
23452a822edSMichal Simek  * Command line configuration.
23552a822edSMichal Simek  */
23652a822edSMichal Simek #define CONFIG_CMD_ASKENV
23752a822edSMichal Simek #define CONFIG_CMD_IRQ
23852a822edSMichal Simek #define CONFIG_CMD_MFSL
23952a822edSMichal Simek 
240e9b737deSMichal Simek #if defined(CONFIG_DCACHE) || defined(CONFIG_ICACHE)
241e9b737deSMichal Simek # define CONFIG_CMD_CACHE
242e9b737deSMichal Simek #else
243e9b737deSMichal Simek # undef CONFIG_CMD_CACHE
244e9b737deSMichal Simek #endif
245e9b737deSMichal Simek 
246ef0f2f57SJoe Hershberger #ifdef CONFIG_SYS_ENET
24752a822edSMichal Simek # define CONFIG_CMD_PING
2483faf987dSStephan Linz # define CONFIG_CMD_DHCP
2494eb29cf0SStephan Linz # define CONFIG_CMD_TFTPPUT
25052a822edSMichal Simek #endif
25152a822edSMichal Simek 
25252a822edSMichal Simek #if defined(CONFIG_SYSTEMACE)
25352a822edSMichal Simek # define CONFIG_CMD_EXT2
25452a822edSMichal Simek # define CONFIG_CMD_FAT
25552a822edSMichal Simek #endif
25652a822edSMichal Simek 
25752a822edSMichal Simek #if defined(FLASH)
25852a822edSMichal Simek # define CONFIG_CMD_JFFS2
2597cfb13a7SStephan Linz # define CONFIG_CMD_UBI
2607cfb13a7SStephan Linz # undef CONFIG_CMD_UBIFS
26152a822edSMichal Simek 
26252a822edSMichal Simek # if !defined(RAMENV)
26352a822edSMichal Simek #  define CONFIG_CMD_SAVES
26452a822edSMichal Simek # endif
265bcec8f49SStephan Linz 
266bcec8f49SStephan Linz #else
267bcec8f49SStephan Linz #if defined(SPIFLASH)
268bcec8f49SStephan Linz # define CONFIG_CMD_SF
269bcec8f49SStephan Linz 
270bcec8f49SStephan Linz # if !defined(RAMENV)
271bcec8f49SStephan Linz #  define CONFIG_CMD_SAVES
272bcec8f49SStephan Linz # endif
27352a822edSMichal Simek #else
274330e5545SMichal Simek # undef CONFIG_CMD_JFFS2
2752cce2d32SStephan Linz # undef CONFIG_CMD_UBI
2762cce2d32SStephan Linz # undef CONFIG_CMD_UBIFS
27752a822edSMichal Simek #endif
278bcec8f49SStephan Linz #endif
27952a822edSMichal Simek 
28052a822edSMichal Simek #if defined(CONFIG_CMD_JFFS2)
2817cfb13a7SStephan Linz # define CONFIG_MTD_PARTITIONS
2827cfb13a7SStephan Linz #endif
2837cfb13a7SStephan Linz 
2847cfb13a7SStephan Linz #if defined(CONFIG_CMD_UBIFS)
2857cfb13a7SStephan Linz # define CONFIG_CMD_UBI
2867cfb13a7SStephan Linz # define CONFIG_LZO
2877cfb13a7SStephan Linz #endif
2887cfb13a7SStephan Linz 
2897cfb13a7SStephan Linz #if defined(CONFIG_CMD_UBI)
2907cfb13a7SStephan Linz # define CONFIG_MTD_PARTITIONS
2917cfb13a7SStephan Linz # define CONFIG_RBTREE
2927cfb13a7SStephan Linz #endif
2937cfb13a7SStephan Linz 
2947cfb13a7SStephan Linz #if defined(CONFIG_MTD_PARTITIONS)
2957cfb13a7SStephan Linz /* MTD partitions */
29668d7d651SStefan Roese #define CONFIG_CMD_MTDPARTS	/* mtdparts command line support */
297942556a9SStefan Roese #define CONFIG_MTD_DEVICE	/* needed for mtdparts commands */
298942556a9SStefan Roese #define CONFIG_FLASH_CFI_MTD
299c82a541dSStephan Linz #define MTDIDS_DEFAULT		"nor0=flash-0"
30052a822edSMichal Simek 
30152a822edSMichal Simek /* default mtd partition table */
302c82a541dSStephan Linz #define MTDPARTS_DEFAULT	"mtdparts=flash-0:256k(u-boot),"\
30352a822edSMichal Simek 				"256k(env),3m(kernel),1m(romfs),"\
30452a822edSMichal Simek 				"1m(cramfs),-(jffs2)"
30552a822edSMichal Simek #endif
30652a822edSMichal Simek 
3074aecfb16SMichal Simek /* size of console buffer */
3084aecfb16SMichal Simek #define	CONFIG_SYS_CBSIZE	512
3094aecfb16SMichal Simek  /* print buffer size */
3104aecfb16SMichal Simek #define	CONFIG_SYS_PBSIZE \
3114aecfb16SMichal Simek 		(CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16)
3124aecfb16SMichal Simek /* max number of command args */
3134aecfb16SMichal Simek #define	CONFIG_SYS_MAXARGS	15
31452a822edSMichal Simek #define	CONFIG_SYS_LONGHELP
3154aecfb16SMichal Simek /* default load address */
3164aecfb16SMichal Simek #define	CONFIG_SYS_LOAD_ADDR	XILINX_RAM_START
31752a822edSMichal Simek 
318330e5545SMichal Simek #define	CONFIG_BOOTDELAY	-1	/* -1 disables auto-boot */
31952a822edSMichal Simek #define	CONFIG_BOOTARGS		"root=romfs"
320330e5545SMichal Simek #define	CONFIG_HOSTNAME		XILINX_BOARD_NAME
32152a822edSMichal Simek #define	CONFIG_BOOTCOMMAND	"base 0;tftp 11000000 image.img;bootm"
32252a822edSMichal Simek #define	CONFIG_IPADDR		192.168.0.3
32352a822edSMichal Simek #define	CONFIG_SERVERIP		192.168.0.5
32452a822edSMichal Simek #define	CONFIG_GATEWAYIP	192.168.0.1
32552a822edSMichal Simek 
32652a822edSMichal Simek /* architecture dependent code */
32752a822edSMichal Simek #define	CONFIG_SYS_USR_EXCEP	/* user exception */
32852a822edSMichal Simek 
3290900bee9SMichal Simek #define	CONFIG_PREBOOT	"echo U-BOOT for ${hostname};setenv preboot;echo"
33052a822edSMichal Simek 
3314aecfb16SMichal Simek #define	CONFIG_EXTRA_ENV_SETTINGS	"unlock=yes\0" \
332c82a541dSStephan Linz 					"nor0=flash-0\0"\
333c82a541dSStephan Linz 					"mtdparts=mtdparts=flash-0:"\
33452a822edSMichal Simek 					"256k(u-boot),256k(env),3m(kernel),"\
33578376452SMichal Simek 					"1m(romfs),1m(cramfs),-(jffs2)\0"\
33678376452SMichal Simek 					"nc=setenv stdout nc;"\
33778376452SMichal Simek 					"setenv stdin nc\0" \
33878376452SMichal Simek 					"serial=setenv stdout serial;"\
33978376452SMichal Simek 					"setenv stdin serial\0"
34052a822edSMichal Simek 
34152a822edSMichal Simek #define CONFIG_CMDLINE_EDITING
34252a822edSMichal Simek 
34378376452SMichal Simek #define CONFIG_NETCONSOLE
34478376452SMichal Simek #define CONFIG_SYS_CONSOLE_IS_IN_ENV
34578376452SMichal Simek 
3460900bee9SMichal Simek /* Use the HUSH parser */
3470900bee9SMichal Simek #define CONFIG_SYS_HUSH_PARSER
3480900bee9SMichal Simek 
34937e892d9SMichal Simek /* Enable flat device tree support */
35037e892d9SMichal Simek #define CONFIG_LMB		1
35137e892d9SMichal Simek #define CONFIG_FIT		1
35237e892d9SMichal Simek #define CONFIG_OF_LIBFDT	1
35337e892d9SMichal Simek 
354*4632b1eaSMichal Simek #if defined(CONFIG_XILINX_AXIEMAC)
355f5e5e1ffSStephan Linz # define CONFIG_MII		1
356f5e5e1ffSStephan Linz # define CONFIG_CMD_MII		1
357f5e5e1ffSStephan Linz # define CONFIG_PHY_GIGE	1
358f5e5e1ffSStephan Linz # define CONFIG_SYS_FAULT_ECHO_LINK_DOWN	1
359f5e5e1ffSStephan Linz # define CONFIG_PHYLIB		1
360f5e5e1ffSStephan Linz # define CONFIG_PHY_ATHEROS	1
361f5e5e1ffSStephan Linz # define CONFIG_PHY_BROADCOM	1
362f5e5e1ffSStephan Linz # define CONFIG_PHY_DAVICOM	1
363f5e5e1ffSStephan Linz # define CONFIG_PHY_LXT		1
364f5e5e1ffSStephan Linz # define CONFIG_PHY_MARVELL	1
365f5e5e1ffSStephan Linz # define CONFIG_PHY_MICREL	1
366f5e5e1ffSStephan Linz # define CONFIG_PHY_NATSEMI	1
367f5e5e1ffSStephan Linz # define CONFIG_PHY_REALTEK	1
368f5e5e1ffSStephan Linz # define CONFIG_PHY_VITESSE	1
369f5e5e1ffSStephan Linz #else
370f5e5e1ffSStephan Linz # undef CONFIG_MII
371f5e5e1ffSStephan Linz # undef CONFIG_CMD_MII
372f5e5e1ffSStephan Linz # undef CONFIG_PHYLIB
373f5e5e1ffSStephan Linz #endif
374f5e5e1ffSStephan Linz 
3759d242745SMichal Simek /* SPL part */
3769d242745SMichal Simek #define CONFIG_CMD_SPL
3779d242745SMichal Simek #define CONFIG_SPL_FRAMEWORK
3789d242745SMichal Simek #define CONFIG_SPL_LIBCOMMON_SUPPORT
3799d242745SMichal Simek #define CONFIG_SPL_LIBGENERIC_SUPPORT
3809d242745SMichal Simek #define CONFIG_SPL_SERIAL_SUPPORT
3819d242745SMichal Simek #define CONFIG_SPL_BOARD_INIT
3829d242745SMichal Simek 
3839d242745SMichal Simek #define CONFIG_SPL_LDSCRIPT	"arch/microblaze/cpu/u-boot-spl.lds"
3849d242745SMichal Simek 
3859d242745SMichal Simek #define CONFIG_SPL_RAM_DEVICE
3864dd09742SMichal Simek #ifdef CONFIG_SYS_FLASH_BASE
3879d242745SMichal Simek # define CONFIG_SPL_NOR_SUPPORT
3884dd09742SMichal Simek # define CONFIG_SYS_UBOOT_BASE		CONFIG_SYS_FLASH_BASE
3894dd09742SMichal Simek #endif
3909d242745SMichal Simek 
3919d242745SMichal Simek /* for booting directly linux */
3929d242745SMichal Simek #define CONFIG_SPL_OS_BOOT
3939d242745SMichal Simek 
3949d242745SMichal Simek #define CONFIG_SYS_OS_BASE		(CONFIG_SYS_FLASH_BASE + \
3959d242745SMichal Simek 					 0x60000)
3969d242745SMichal Simek #define CONFIG_SYS_FDT_BASE		(CONFIG_SYS_FLASH_BASE + \
3979d242745SMichal Simek 					 0x40000)
3989d242745SMichal Simek #define CONFIG_SYS_SPL_ARGS_ADDR	(CONFIG_SYS_TEXT_BASE + \
3999d242745SMichal Simek 					 0x1000000)
4009d242745SMichal Simek 
4019d242745SMichal Simek /* SP location before relocation, must use scratch RAM */
4029d242745SMichal Simek /* BRAM start */
4039d242745SMichal Simek #define CONFIG_SYS_INIT_RAM_ADDR	0x0
4049d242745SMichal Simek /* BRAM size - will be generated */
405ca7d2266SMichal Simek #define CONFIG_SYS_INIT_RAM_SIZE	0x100000
406ca7d2266SMichal Simek 
407ca7d2266SMichal Simek # define CONFIG_SPL_STACK_ADDR		(CONFIG_SYS_INIT_RAM_ADDR + \
4089d242745SMichal Simek 					 CONFIG_SYS_INIT_RAM_SIZE - \
409ca7d2266SMichal Simek 					 CONFIG_SYS_MALLOC_F_LEN)
4109d242745SMichal Simek 
4119d242745SMichal Simek /* Just for sure that there is a space for stack */
4129d242745SMichal Simek #define CONFIG_SPL_STACK_SIZE		0x100
4139d242745SMichal Simek 
4149d242745SMichal Simek #define CONFIG_SYS_UBOOT_START		CONFIG_SYS_TEXT_BASE
4159d242745SMichal Simek 
4169d242745SMichal Simek #define CONFIG_SPL_MAX_FOOTPRINT	(CONFIG_SYS_INIT_RAM_SIZE - \
4179d242745SMichal Simek 					 CONFIG_SYS_INIT_RAM_ADDR - \
418ca7d2266SMichal Simek 					 CONFIG_SYS_MALLOC_F_LEN - \
4199d242745SMichal Simek 					 CONFIG_SPL_STACK_SIZE)
4209d242745SMichal Simek 
42152a822edSMichal Simek #endif	/* __CONFIG_H */
422