blob: 66045067d2fe1adf1b908f9a9babc2cbb322e5cd [file] [log] [blame]
Siva Durga Prasad Paladugu650fb402015-06-10 15:50:57 +05301if ARCH_ZYNQMP
2
Tien Fong Chee6fd0a712019-01-23 14:20:03 +08003config SPL_FS_FAT
Simon Glass6172e2e2016-09-12 23:18:38 -06004 default y
5
Simon Glassf2a89462016-09-12 23:18:41 -06006config SPL_LIBCOMMON_SUPPORT
7 default y
8
Simon Glassf6de2572016-09-12 23:18:42 -06009config SPL_LIBDISK_SUPPORT
10 default y
11
Simon Glassb16c92c2016-09-12 23:18:43 -060012config SPL_LIBGENERIC_SUPPORT
13 default y
14
Simon Glassb58bfe02021-08-08 12:20:09 -060015config SPL_MMC
Alexandru Gagniucd5a75992017-04-04 10:02:58 -070016 default y if MMC_SDHCI_ZYNQ
Simon Glassbd58f1d2016-09-12 23:18:44 -060017
Simon Glassf4d60392021-08-08 12:20:12 -060018config SPL_SERIAL
Simon Glasse076d6f2016-09-12 23:18:56 -060019 default y
20
Simon Glass219d6122016-09-12 23:18:57 -060021config SPL_SPI_FLASH_SUPPORT
22 default y if ZYNQ_QSPI
23
Simon Glassa5820472021-08-08 12:20:14 -060024config SPL_SPI
Simon Glassb24fdca2016-09-12 23:18:58 -060025 default y if ZYNQ_QSPI
26
Michal Simek04b7e622015-01-15 10:01:51 +010027config SYS_BOARD
Liam Beguindda9e212021-10-20 11:25:18 -040028 string "Board name"
Michal Simek04b7e622015-01-15 10:01:51 +010029 default "zynqmp"
30
31config SYS_VENDOR
Mike Looijmans61d245c2017-01-03 09:47:52 +010032 string "Vendor name"
Michal Simek04b7e622015-01-15 10:01:51 +010033 default "xilinx"
34
35config SYS_SOC
36 default "zynqmp"
37
38config SYS_CONFIG_NAME
Michal Simek7b5413e2016-03-18 18:21:36 +010039 string "Board configuration name"
40 default "xilinx_zynqmp"
41 help
42 This option contains information about board configuration name.
43 Based on this option include/configs/<CONFIG_SYS_CONFIG_NAME>.h header
44 will be used for board configuration.
Michal Simek04b7e622015-01-15 10:01:51 +010045
Siva Durga Prasad Paladugu4628c502017-07-13 19:01:11 +053046config SYS_MEM_RSVD_FOR_MMU
47 bool "Reserve memory for MMU Table"
48 help
49 If defined this option is used to setup different space for
50 MMU table than the one which will be allocated during
51 relocation.
52
Mike Looijmans96e706f2016-09-20 11:37:24 +020053config BOOT_INIT_FILE
54 string "boot.bin init register filename"
Michal Simek5d359092016-12-16 13:00:26 +010055 depends on SPL
Mike Looijmans96e706f2016-09-20 11:37:24 +020056 default ""
57 help
58 Add register writes to boot.bin format (max 256 pairs).
59 Expect a table of register-value pairs, e.g. "0x12345678 0x4321"
60
Michal Simekdde5a882016-10-21 12:58:17 +020061config PMUFW_INIT_FILE
62 string "PMU firmware"
63 depends on SPL
64 default ""
65 help
66 Include external PMUFW (Platform Management Unit FirmWare) to
67 a Xilinx bootable image (boot.bin).
68
Luca Ceresoli23e65002019-05-21 18:06:43 +020069config ZYNQMP_SPL_PM_CFG_OBJ_FILE
70 string "PMU firmware configuration object to load at runtime by SPL"
71 depends on SPL
72 help
73 Path to a binary PMU firmware configuration object to be linked
74 into U-Boot SPL and loaded at runtime into the PMU firmware.
75
76 The ZynqMP Power Management Unit (PMU) needs a configuration
77 object for most SoC peripherals to work. To have it loaded by
78 U-Boot SPL set here the file name (absolute path or relative to
79 the top source tree) of your configuration, which must be a
80 binary blob. It will be linked in the SPL binary and loaded
81 into the PMU firmware by U-Boot SPL during board
82 initialization.
83
84 Leave this option empty if your PMU firmware has a hard-coded
85 configuration object or you are loading it by any other means.
86
Siva Durga Prasad Paladuguba1f68e2015-08-04 13:03:26 +053087config ZYNQMP_USB
88 bool "Configure ZynqMP USB"
89
Siva Durga Prasad Paladugucafb6312018-01-12 15:35:46 +053090config ZYNQMP_NO_DDR
91 bool "Disable DDR MMU mapping"
92 help
93 This option configures MMU with no DDR to avoid speculative
94 access to DDR memory where DDR is not present.
95
Jorge Ramirez-Ortiz35456962021-06-13 20:55:53 +020096config SPL_ZYNQMP_DRAM_ECC_INIT
97 bool "Initialize DRAM ECC"
98 depends on SPL
99 help
100 This option initializes all memory to 0xdeadbeef. Must be set if your
101 memory is of ECC type.
102
103config SPL_ZYNQMP_DRAM_BANK1_BASE
104 depends on SPL_ZYNQMP_DRAM_ECC_INIT
105 hex "DRAM Bank1 address"
106 default 0x00000000
107 help
108 Start address of DRAM ECC bank1
109
110config SPL_ZYNQMP_DRAM_BANK1_LEN
111 depends on SPL_ZYNQMP_DRAM_ECC_INIT
112 hex "DRAM Bank1 size"
113 default 0x80000000
114 help
115 Size in bytes of the DRAM ECC bank1
116
117config SPL_ZYNQMP_DRAM_BANK2_BASE
118 depends on SPL_ZYNQMP_DRAM_ECC_INIT
119 hex "DRAM Bank2 address"
120 default 0x800000000
121 help
122 Start address of DRAM ECC bank2
123
124config SPL_ZYNQMP_DRAM_BANK2_LEN
125 depends on SPL_ZYNQMP_DRAM_ECC_INIT
126 hex "DRAM Bank2 size"
127 default 0x0
128 help
129 Size in bytes of the DRAM ECC bank2. A null size takes no action.
130
Simon Glasscb3e4892016-07-05 17:10:13 -0600131config SYS_MALLOC_F_LEN
132 default 0x600
133
Siva Durga Prasad Paladugu9ed4e812017-07-13 19:01:10 +0530134config DEFINE_TCM_OCM_MMAP
135 bool "Define TCM and OCM memory in MMU Table"
Siva Durga Prasad Paladuguc3dfac92017-08-01 16:24:50 +0530136 default y if MP
Siva Durga Prasad Paladugu9ed4e812017-07-13 19:01:10 +0530137 help
138 This option if enabled defines the TCM and OCM memory and its
139 memory attributes in MMU table entry.
140
Michal Simekd8218792017-07-12 13:21:27 +0200141config ZYNQMP_PSU_INIT_ENABLED
142 bool "Include psu_init"
Michal Simekba6fb832022-02-17 14:28:40 +0100143 select BOARD_EARLY_INIT_F
Michal Simekd8218792017-07-12 13:21:27 +0200144 help
145 Include psu_init to full u-boot. SPL include psu_init by default.
146
Michal Simek94ddcaa2016-08-30 16:17:27 +0200147config SPL_ZYNQMP_ALT_BOOTMODE_ENABLED
148 bool "Overwrite SPL bootmode"
149 depends on SPL
150 help
151 Overwrite bootmode selected via boot mode pins to tell SPL what should
152 be the next boot device.
153
Jorge Ramirez-Ortiz34deca52021-10-13 15:48:00 +0200154config SPL_ZYNQMP_RESTORE_JTAG
155 bool "Restore JTAG"
156 depends on SPL
157 help
158 Booting SPL in secure mode causes the CSU to disable the JTAG interface
159 even if no eFuses were burnt. This option restores the interface if
160 possible.
161
Vipul Kumar62548002018-02-28 15:53:28 +0530162config ZYNQ_SDHCI_MAX_FREQ
163 default 200000000
164
Michal Simek94ddcaa2016-08-30 16:17:27 +0200165config SPL_ZYNQMP_ALT_BOOTMODE
166 hex
167 default 0x0 if JTAG_MODE
168 default 0x1 if QSPI_MODE_24BIT
169 default 0x2 if QSPI_MODE_32BIT
170 default 0x3 if SD_MODE
171 default 0x4 if NAND_MODE
172 default 0x5 if SD_MODE1
173 default 0x6 if EMMC_MODE
174 default 0x7 if USB_MODE
Michal Simek2740d372016-10-26 09:24:32 +0200175 default 0xa if SW_USBHOST_MODE
176 default 0xb if SW_SATA_MODE
Michal Simeke1c4d392017-02-15 09:41:53 +0100177 default 0xe if SD1_LSHFT_MODE
Michal Simek94ddcaa2016-08-30 16:17:27 +0200178
179choice
180 prompt "Boot mode"
Michal Simek8ffddc32016-08-30 16:17:27 +0200181 depends on SPL_ZYNQMP_ALT_BOOTMODE_ENABLED
Ulf Magnusson3e3b16a2018-01-30 14:02:01 +0100182 default JTAG_MODE
Michal Simek94ddcaa2016-08-30 16:17:27 +0200183
184config JTAG_MODE
185 bool "JTAG_MODE"
186
187config QSPI_MODE_24BIT
188 bool "QSPI_MODE_24BIT"
189
190config QSPI_MODE_32BIT
191 bool "QSPI_MODE_32BIT"
192
193config SD_MODE
194 bool "SD_MODE"
195
196config SD_MODE1
197 bool "SD_MODE1"
198
199config NAND_MODE
200 bool "NAND_MODE"
201
202config EMMC_MODE
203 bool "EMMC_MODE"
204
205config USB_MODE
206 bool "USB"
207
Michal Simek2740d372016-10-26 09:24:32 +0200208config SW_USBHOST_MODE
209 bool "SW USBHOST_MODE"
210
211config SW_SATA_MODE
212 bool "SW SATA_MODE"
213
Michal Simeke1c4d392017-02-15 09:41:53 +0100214config SD1_LSHFT_MODE
215 bool "SD1_LSHFT_MODE"
216
Michal Simek94ddcaa2016-08-30 16:17:27 +0200217endchoice
Simon Glasscb3e4892016-07-05 17:10:13 -0600218
Michal Simek5f884852020-08-27 15:34:11 +0200219source "board/xilinx/Kconfig"
220source "board/xilinx/zynqmp/Kconfig"
221
Michal Simek04b7e622015-01-15 10:01:51 +0100222endif