]> git.kernelconcepts.de Git - karo-tx-uboot.git/blob - include/configs/zynq-common.h
9fe06e84593f67b5acf37c92e61ac0662d087c87
[karo-tx-uboot.git] / include / configs / zynq-common.h
1 /*
2  * (C) Copyright 2012 Michal Simek <monstr@monstr.eu>
3  * (C) Copyright 2013 Xilinx, Inc.
4  *
5  * Common configuration options for all Zynq boards.
6  *
7  * SPDX-License-Identifier:     GPL-2.0+
8  */
9
10 #ifndef __CONFIG_ZYNQ_COMMON_H
11 #define __CONFIG_ZYNQ_COMMON_H
12
13 /* High Level configuration Options */
14 #define CONFIG_ARMV7
15 #define CONFIG_ZYNQ
16
17 /* CPU clock */
18 #ifndef CONFIG_CPU_FREQ_HZ
19 # define CONFIG_CPU_FREQ_HZ     800000000
20 #endif
21
22 /* Cache options */
23 #define CONFIG_CMD_CACHE
24 #define CONFIG_SYS_CACHELINE_SIZE       32
25
26 #define CONFIG_SYS_L2CACHE_OFF
27 #ifndef CONFIG_SYS_L2CACHE_OFF
28 # define CONFIG_SYS_L2_PL310
29 # define CONFIG_SYS_PL310_BASE          0xf8f02000
30 #endif
31
32 /* Serial drivers */
33 #define CONFIG_BAUDRATE         115200
34 /* The following table includes the supported baudrates */
35 #define CONFIG_SYS_BAUDRATE_TABLE  \
36         {300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400}
37
38 /* Zynq Serial driver */
39 #define CONFIG_ZYNQ_SERIAL_UART1
40 #ifdef CONFIG_ZYNQ_SERIAL_UART0
41 # define CONFIG_ZYNQ_SERIAL_BASEADDR0   0xE0000000
42 # define CONFIG_ZYNQ_SERIAL_BAUDRATE0   CONFIG_BAUDRATE
43 # define CONFIG_ZYNQ_SERIAL_CLOCK0      50000000
44 #endif
45
46 #ifdef CONFIG_ZYNQ_SERIAL_UART1
47 # define CONFIG_ZYNQ_SERIAL_BASEADDR1   0xE0001000
48 # define CONFIG_ZYNQ_SERIAL_BAUDRATE1   CONFIG_BAUDRATE
49 # define CONFIG_ZYNQ_SERIAL_CLOCK1      50000000
50 #endif
51
52 #if defined(CONFIG_ZYNQ_SERIAL_UART0) || defined(CONFIG_ZYNQ_SERIAL_UART1)
53 # define CONFIG_ZYNQ_SERIAL
54 #endif
55
56 /* DCC driver */
57 #if defined(CONFIG_ZYNQ_DCC)
58 # define CONFIG_ARM_DCC
59 # define CONFIG_CPU_V6 /* Required by CONFIG_ARM_DCC */
60 #endif
61
62 /* Ethernet driver */
63 #define CONFIG_ZYNQ_GEM0
64 #define CONFIG_ZYNQ_GEM_PHY_ADDR0       7
65 #if defined(CONFIG_ZYNQ_GEM0) || defined(CONFIG_ZYNQ_GEM1)
66 # define CONFIG_NET_MULTI
67 # define CONFIG_ZYNQ_GEM
68 # define CONFIG_MII
69 # define CONFIG_SYS_FAULT_ECHO_LINK_DOWN
70 # define CONFIG_PHYLIB
71 # define CONFIG_PHY_MARVELL
72 #endif
73
74 #define CONFIG_ZYNQ_SPI
75 /* SPI */
76 #ifdef CONFIG_ZYNQ_SPI
77 # define CONFIG_SPI_FLASH
78 # define CONFIG_SPI_FLASH_SST
79 # define CONFIG_CMD_SF
80 #endif
81
82 /* NOR */
83 #define CONFIG_SYS_NO_FLASH
84
85 #define CONFIG_ZYNQ_SDHCI0
86 /* MMC */
87 #if defined(CONFIG_ZYNQ_SDHCI0) || defined(CONFIG_ZYNQ_SDHCI1)
88 # define CONFIG_MMC
89 # define CONFIG_GENERIC_MMC
90 # define CONFIG_SDHCI
91 # define CONFIG_ZYNQ_SDHCI
92 # define CONFIG_CMD_MMC
93 # define CONFIG_CMD_FAT
94 # define CONFIG_SUPPORT_VFAT
95 # define CONFIG_CMD_EXT2
96 # define CONFIG_DOS_PARTITION
97 #endif
98
99 #define CONFIG_ZYNQ_I2C0
100 /* I2C */
101 #if defined(CONFIG_ZYNQ_I2C0) || defined(CONFIG_ZYNQ_I2C1)
102 # define CONFIG_CMD_I2C
103 # define CONFIG_SYS_I2C
104 # define CONFIG_SYS_I2C_ZYNQ
105 # define CONFIG_SYS_I2C_ZYNQ_SPEED              100000
106 # define CONFIG_SYS_I2C_ZYNQ_SLAVE              1
107 #endif
108
109 #define CONFIG_BOOTP_SERVERIP
110 #define CONFIG_BOOTP_BOOTPATH
111 #define CONFIG_BOOTP_GATEWAY
112 #define CONFIG_BOOTP_HOSTNAME
113 #define CONFIG_BOOTP_MAY_FAIL
114
115 /* Environment */
116 #define CONFIG_ENV_SIZE         0x10000 /* Env. sector size */
117 #define CONFIG_ENV_IS_NOWHERE
118 #define CONFIG_SYS_LOAD_ADDR    0
119
120 /* Miscellaneous configurable options */
121 #define CONFIG_SYS_PROMPT               "zynq-uboot> "
122 #define CONFIG_SYS_HUSH_PARSER
123
124 #define CONFIG_CMDLINE_EDITING
125 #define CONFIG_AUTO_COMPLETE
126 #define CONFIG_SYS_LONGHELP
127 #define CONFIG_SYS_MAXARGS              15 /* max number of command args */
128 #define CONFIG_SYS_CBSIZE               256 /* Console I/O Buffer Size */
129 #define CONFIG_SYS_PBSIZE               (CONFIG_SYS_CBSIZE + \
130                                         sizeof(CONFIG_SYS_PROMPT) + 16)
131
132 /* Physical Memory map */
133 #define CONFIG_SYS_TEXT_BASE            0
134
135 #define CONFIG_NR_DRAM_BANKS            1
136 #define CONFIG_SYS_SDRAM_BASE           0
137 #define CONFIG_SYS_SDRAM_SIZE           0x40000000
138
139 #define CONFIG_SYS_MEMTEST_START        CONFIG_SYS_SDRAM_BASE
140 #define CONFIG_SYS_MEMTEST_END          (CONFIG_SYS_SDRAM_BASE + 0x1000)
141
142 #define CONFIG_SYS_MALLOC_LEN           0x400000
143 #define CONFIG_SYS_INIT_RAM_ADDR        CONFIG_SYS_SDRAM_BASE
144 #define CONFIG_SYS_INIT_RAM_SIZE        CONFIG_SYS_MALLOC_LEN
145 #define CONFIG_SYS_INIT_SP_ADDR         (CONFIG_SYS_INIT_RAM_ADDR + \
146                                         CONFIG_SYS_INIT_RAM_SIZE - \
147                                         GENERATED_GBL_DATA_SIZE)
148
149 /* Enable the PL to be downloaded */
150 #define CONFIG_FPGA
151 #define CONFIG_FPGA_XILINX
152 #define CONFIG_FPGA_ZYNQPL
153 #define CONFIG_CMD_FPGA
154
155 /* Open Firmware flat tree */
156 #define CONFIG_OF_LIBFDT
157
158 /* FIT support */
159 #define CONFIG_FIT
160 #define CONFIG_FIT_VERBOSE      1 /* enable fit_format_{error,warning}() */
161
162 /* Boot FreeBSD/vxWorks from an ELF image */
163 #if defined(CONFIG_ZYNQ_BOOT_FREEBSD)
164 # define CONFIG_API
165 # define CONFIG_CMD_ELF
166 # define CONFIG_SYS_MMC_MAX_DEVICE      1
167 #endif
168
169 /* Commands */
170 #include <config_cmd_default.h>
171
172 #define CONFIG_CMD_PING
173 #define CONFIG_CMD_DHCP
174 #define CONFIG_CMD_MII
175
176 #endif /* __CONFIG_ZYNQ_COMMON_H */