Blame view

include/configs/zynq-common.h 6.29 KB
f22651cfc   Michal Simek   xilinx: Add new Z...
1
2
  /*
   * (C) Copyright 2012 Michal Simek <monstr@monstr.eu>
06fe8daeb   Jagannadha Sutradharudu Teki   zynq-common: Rena...
3
4
5
   * (C) Copyright 2013 Xilinx, Inc.
   *
   * Common configuration options for all Zynq boards.
f22651cfc   Michal Simek   xilinx: Add new Z...
6
   *
1a4596601   Wolfgang Denk   Add GPL-2.0+ SPDX...
7
   * SPDX-License-Identifier:	GPL-2.0+
f22651cfc   Michal Simek   xilinx: Add new Z...
8
   */
06fe8daeb   Jagannadha Sutradharudu Teki   zynq-common: Rena...
9
10
  #ifndef __CONFIG_ZYNQ_COMMON_H
  #define __CONFIG_ZYNQ_COMMON_H
f22651cfc   Michal Simek   xilinx: Add new Z...
11

53e49f746   Jagannadha Sutradharudu Teki   zynq: Minor confi...
12
13
  /* High Level configuration Options */
  #define CONFIG_ARMV7
f22651cfc   Michal Simek   xilinx: Add new Z...
14
15
16
  #define CONFIG_ZYNQ
  
  /* CPU clock */
53e49f746   Jagannadha Sutradharudu Teki   zynq: Minor confi...
17
18
19
  #ifndef CONFIG_CPU_FREQ_HZ
  # define CONFIG_CPU_FREQ_HZ	800000000
  #endif
f22651cfc   Michal Simek   xilinx: Add new Z...
20

8cfac5044   Jagannadha Sutradharudu Teki   zynq: Enable cach...
21
22
23
24
25
26
27
28
29
  /* Cache options */
  #define CONFIG_CMD_CACHE
  #define CONFIG_SYS_CACHELINE_SIZE	32
  
  #define CONFIG_SYS_L2CACHE_OFF
  #ifndef CONFIG_SYS_L2CACHE_OFF
  # define CONFIG_SYS_L2_PL310
  # define CONFIG_SYS_PL310_BASE		0xf8f02000
  #endif
53e49f746   Jagannadha Sutradharudu Teki   zynq: Minor confi...
30
31
  /* Serial drivers */
  #define CONFIG_BAUDRATE		115200
f22651cfc   Michal Simek   xilinx: Add new Z...
32
33
34
  /* The following table includes the supported baudrates */
  #define CONFIG_SYS_BAUDRATE_TABLE  \
  	{300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400}
53e49f746   Jagannadha Sutradharudu Teki   zynq: Minor confi...
35
  /* Zynq Serial driver */
625d76375   Jagannadha Sutradharudu Teki   zynq: Add UART0, ...
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
  #ifdef CONFIG_ZYNQ_SERIAL_UART0
  # define CONFIG_ZYNQ_SERIAL_BASEADDR0	0xE0000000
  # define CONFIG_ZYNQ_SERIAL_BAUDRATE0	CONFIG_BAUDRATE
  # define CONFIG_ZYNQ_SERIAL_CLOCK0	50000000
  #endif
  
  #ifdef CONFIG_ZYNQ_SERIAL_UART1
  # define CONFIG_ZYNQ_SERIAL_BASEADDR1	0xE0001000
  # define CONFIG_ZYNQ_SERIAL_BAUDRATE1	CONFIG_BAUDRATE
  # define CONFIG_ZYNQ_SERIAL_CLOCK1	50000000
  #endif
  
  #if defined(CONFIG_ZYNQ_SERIAL_UART0) || defined(CONFIG_ZYNQ_SERIAL_UART1)
  # define CONFIG_ZYNQ_SERIAL
  #endif
f22651cfc   Michal Simek   xilinx: Add new Z...
51

53e49f746   Jagannadha Sutradharudu Teki   zynq: Minor confi...
52
53
54
55
56
  /* DCC driver */
  #if defined(CONFIG_ZYNQ_DCC)
  # define CONFIG_ARM_DCC
  # define CONFIG_CPU_V6 /* Required by CONFIG_ARM_DCC */
  #endif
f22651cfc   Michal Simek   xilinx: Add new Z...
57
  /* Ethernet driver */
88fcfb1ce   Jagannadha Sutradharudu Teki   zynq: Add GEM0, G...
58
59
60
61
62
63
64
65
  #if defined(CONFIG_ZYNQ_GEM0) || defined(CONFIG_ZYNQ_GEM1)
  # define CONFIG_NET_MULTI
  # define CONFIG_ZYNQ_GEM
  # define CONFIG_MII
  # define CONFIG_SYS_FAULT_ECHO_LINK_DOWN
  # define CONFIG_PHYLIB
  # define CONFIG_PHY_MARVELL
  #endif
f22651cfc   Michal Simek   xilinx: Add new Z...
66

53e49f746   Jagannadha Sutradharudu Teki   zynq: Minor confi...
67
68
69
70
71
72
  /* SPI */
  #ifdef CONFIG_ZYNQ_SPI
  # define CONFIG_SPI_FLASH
  # define CONFIG_SPI_FLASH_SST
  # define CONFIG_CMD_SF
  #endif
fe5eddbf9   Jagannadha Sutradharudu Teki   zynq: Add zynq_zc...
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
  /* NOR */
  #ifndef CONFIG_SYS_NO_FLASH
  # define CONFIG_SYS_FLASH_BASE		0xE2000000
  # define CONFIG_SYS_FLASH_SIZE		(16 * 1024 * 1024)
  # define CONFIG_SYS_MAX_FLASH_BANKS	1
  # define CONFIG_SYS_MAX_FLASH_SECT	512
  # define CONFIG_SYS_FLASH_ERASE_TOUT	1000
  # define CONFIG_SYS_FLASH_WRITE_TOUT	5000
  # define CONFIG_FLASH_SHOW_PROGRESS	10
  # define CONFIG_SYS_FLASH_CFI
  # undef CONFIG_SYS_FLASH_EMPTY_INFO
  # define CONFIG_FLASH_CFI_DRIVER
  # undef CONFIG_SYS_FLASH_PROTECTION
  # define CONFIG_SYS_FLASH_USE_BUFFER_WRITE
  #endif
293eb33fc   Michal Simek   mmc: Add support ...
88
89
90
91
92
93
94
95
96
97
98
99
  /* MMC */
  #if defined(CONFIG_ZYNQ_SDHCI0) || defined(CONFIG_ZYNQ_SDHCI1)
  # define CONFIG_MMC
  # define CONFIG_GENERIC_MMC
  # define CONFIG_SDHCI
  # define CONFIG_ZYNQ_SDHCI
  # define CONFIG_CMD_MMC
  # define CONFIG_CMD_FAT
  # define CONFIG_SUPPORT_VFAT
  # define CONFIG_CMD_EXT2
  # define CONFIG_DOS_PARTITION
  #endif
8934f7846   Michal Simek   i2c: zynq: Add su...
100
101
102
  /* I2C */
  #if defined(CONFIG_ZYNQ_I2C0) || defined(CONFIG_ZYNQ_I2C1)
  # define CONFIG_CMD_I2C
0bdffe71f   Heiko Schocher   i2c, zynq: conver...
103
104
105
106
  # define CONFIG_SYS_I2C
  # define CONFIG_SYS_I2C_ZYNQ
  # define CONFIG_SYS_I2C_ZYNQ_SPEED		100000
  # define CONFIG_SYS_I2C_ZYNQ_SLAVE		1
8934f7846   Michal Simek   i2c: zynq: Add su...
107
  #endif
65da1efde   Jagannadha Sutradharudu Teki   zynq: zc70x: Add ...
108
109
110
111
112
113
114
115
116
  /* EEPROM */
  #ifdef CONFIG_ZYNQ_EEPROM
  # define CONFIG_CMD_EEPROM
  # define CONFIG_SYS_I2C_EEPROM_ADDR_LEN		1
  # define CONFIG_SYS_I2C_EEPROM_ADDR		0x54
  # define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS	4
  # define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS	5
  # define CONFIG_SYS_EEPROM_SIZE			1024 /* Bytes */
  #endif
f22651cfc   Michal Simek   xilinx: Add new Z...
117
118
119
120
121
  #define CONFIG_BOOTP_SERVERIP
  #define CONFIG_BOOTP_BOOTPATH
  #define CONFIG_BOOTP_GATEWAY
  #define CONFIG_BOOTP_HOSTNAME
  #define CONFIG_BOOTP_MAY_FAIL
18eee22f4   Jagannadha Sutradharudu Teki   zynq-common: Chan...
122
123
  /* Total Size of Environment Sector */
  #define CONFIG_ENV_SIZE			(128 << 10)
b660ca13a   Jagannadha Sutradharudu Teki   zynq-common: Defi...
124
125
  /* Allow to overwrite serial and ethaddr */
  #define CONFIG_ENV_OVERWRITE
f22651cfc   Michal Simek   xilinx: Add new Z...
126
  /* Environment */
ed53e4d69   Jagannadha Sutradharudu Teki   zynq-common: Defi...
127
128
129
130
131
132
133
134
135
136
137
  #ifndef CONFIG_ENV_IS_NOWHERE
  # ifndef CONFIG_SYS_NO_FLASH
  #  define CONFIG_ENV_IS_IN_FLASH
  # elif defined(CONFIG_SYS_NO_FLASH)
  #  define CONFIG_ENV_IS_NOWHERE
  # endif
  
  # define CONFIG_ENV_SECT_SIZE		CONFIG_ENV_SIZE
  # define CONFIG_ENV_OFFSET		0xE0000
  # define CONFIG_CMD_SAVEENV
  #endif
e83f61a6b   Jagannadha Sutradharudu Teki   zynq-common: Defi...
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
  
  /* Default environment */
  #define CONFIG_EXTRA_ENV_SETTINGS	\
  	"fit_image=fit.itb\0"		\
  	"load_addr=0x2000000\0"		\
  	"fit_size=0x800000\0"		\
  	"flash_off=0x100000\0"		\
  	"nor_flash_off=0xE2100000\0"	\
  	"fdt_high=0x20000000\0"		\
  	"initrd_high=0x20000000\0"	\
  	"norboot=echo Copying FIT from NOR flash to RAM... && " \
  		"cp.b ${nor_flash_off} ${load_addr} ${fit_size} && " \
  		"bootm ${load_addr}\0" \
  	"sdboot=echo Copying FIT from SD to RAM... && " \
  		"fatload mmc 0 ${load_addr} ${fit_image} && " \
  		"bootm ${load_addr}\0" \
  	"jtagboot=echo TFTPing FIT to RAM... && " \
  		"tftp ${load_addr} ${fit_image} && " \
  		"bootm ${load_addr}\0"
  #define CONFIG_BOOTCOMMAND		"run $modeboot"
  #define CONFIG_BOOTDELAY		3 /* -1 to Disable autoboot */
  #define CONFIG_SYS_LOAD_ADDR		0 /* default? */
f22651cfc   Michal Simek   xilinx: Add new Z...
160

36e0e1973   Jagannadha Sutradharudu Teki   zynq: Cleanup on ...
161
162
163
164
165
166
  /* Miscellaneous configurable options */
  #define CONFIG_SYS_PROMPT		"zynq-uboot> "
  #define CONFIG_SYS_HUSH_PARSER
  
  #define CONFIG_CMDLINE_EDITING
  #define CONFIG_AUTO_COMPLETE
b3de92495   Jagannadha Sutradharudu Teki   zynq: Add support...
167
  #define CONFIG_BOARD_LATE_INIT
36e0e1973   Jagannadha Sutradharudu Teki   zynq: Cleanup on ...
168
169
170
171
  #define CONFIG_SYS_LONGHELP
  #define CONFIG_SYS_MAXARGS		15 /* max number of command args */
  #define CONFIG_SYS_CBSIZE		256 /* Console I/O Buffer Size */
  #define CONFIG_SYS_PBSIZE		(CONFIG_SYS_CBSIZE + \
f22651cfc   Michal Simek   xilinx: Add new Z...
172
  					sizeof(CONFIG_SYS_PROMPT) + 16)
7cd04192f   Jagannadha Sutradharudu Teki   zynq: Cleanup on ...
173
  /* Physical Memory map */
0f5c21565   Jagannadha Sutradharudu Teki   zynq-common: Defi...
174
  #define CONFIG_SYS_TEXT_BASE		0x4000000
f22651cfc   Michal Simek   xilinx: Add new Z...
175

7cd04192f   Jagannadha Sutradharudu Teki   zynq: Cleanup on ...
176
177
  #define CONFIG_NR_DRAM_BANKS		1
  #define CONFIG_SYS_SDRAM_BASE		0
7cd04192f   Jagannadha Sutradharudu Teki   zynq: Cleanup on ...
178
179
180
  
  #define CONFIG_SYS_MEMTEST_START	CONFIG_SYS_SDRAM_BASE
  #define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_SDRAM_BASE + 0x1000)
53e49f746   Jagannadha Sutradharudu Teki   zynq: Minor confi...
181
  #define CONFIG_SYS_MALLOC_LEN		0x400000
7cd04192f   Jagannadha Sutradharudu Teki   zynq: Cleanup on ...
182
183
184
185
186
  #define CONFIG_SYS_INIT_RAM_ADDR	CONFIG_SYS_SDRAM_BASE
  #define CONFIG_SYS_INIT_RAM_SIZE	CONFIG_SYS_MALLOC_LEN
  #define CONFIG_SYS_INIT_SP_ADDR		(CONFIG_SYS_INIT_RAM_ADDR + \
  					CONFIG_SYS_INIT_RAM_SIZE - \
  					GENERATED_GBL_DATA_SIZE)
53e49f746   Jagannadha Sutradharudu Teki   zynq: Minor confi...
187
188
189
190
191
192
193
194
195
196
197
  
  /* Enable the PL to be downloaded */
  #define CONFIG_FPGA
  #define CONFIG_FPGA_XILINX
  #define CONFIG_FPGA_ZYNQPL
  #define CONFIG_CMD_FPGA
  
  /* Open Firmware flat tree */
  #define CONFIG_OF_LIBFDT
  
  /* FIT support */
f22651cfc   Michal Simek   xilinx: Add new Z...
198
  #define CONFIG_FIT
773590eba   Jagannadha Sutradharudu Teki   zynq: Enable CONF...
199
  #define CONFIG_FIT_VERBOSE	1 /* enable fit_format_{error,warning}() */
f22651cfc   Michal Simek   xilinx: Add new Z...
200

f8f36c5dd   Jagannadha Sutradharudu Teki   dts: zynq: Add ba...
201
202
203
204
  /* FDT support */
  #define CONFIG_OF_CONTROL
  #define CONFIG_OF_SEPARATE
  #define CONFIG_DISPLAY_BOARDINFO_LATE
a8826eb4b   Jagannadha Sutradharudu Teki   zynq-common: Enab...
205
206
207
  /* RSA support */
  #define CONFIG_FIT_SIGNATURE
  #define CONFIG_RSA
09ed635bc   Jagannadha Sutradharudu Teki   zynq: Enable Boot...
208
209
210
211
212
213
  /* Boot FreeBSD/vxWorks from an ELF image */
  #if defined(CONFIG_ZYNQ_BOOT_FREEBSD)
  # define CONFIG_API
  # define CONFIG_CMD_ELF
  # define CONFIG_SYS_MMC_MAX_DEVICE	1
  #endif
f22651cfc   Michal Simek   xilinx: Add new Z...
214
215
216
217
218
219
  /* Commands */
  #include <config_cmd_default.h>
  
  #define CONFIG_CMD_PING
  #define CONFIG_CMD_DHCP
  #define CONFIG_CMD_MII
06fe8daeb   Jagannadha Sutradharudu Teki   zynq-common: Rena...
220
  #endif /* __CONFIG_ZYNQ_COMMON_H */