blob: aea13622b68a97eabdf656ab7e46df7fe49aefeb [file] [log] [blame]
Siva Durga Prasad Paladugu0b54a9d2015-06-10 15:50:57 +05301if ARCH_ZYNQMP
2
Michal Simek84c72042015-01-15 10:01:51 +01003config SYS_BOARD
Liam Beguin18141942021-10-20 11:25:18 -04004 string "Board name"
Michal Simek84c72042015-01-15 10:01:51 +01005 default "zynqmp"
6
7config SYS_VENDOR
Mike Looijmansef4cab92017-01-03 09:47:52 +01008 string "Vendor name"
Michal Simek84c72042015-01-15 10:01:51 +01009 default "xilinx"
10
11config SYS_SOC
12 default "zynqmp"
13
Siva Durga Prasad Paladugue042d362017-07-13 19:01:11 +053014config SYS_MEM_RSVD_FOR_MMU
15 bool "Reserve memory for MMU Table"
16 help
17 If defined this option is used to setup different space for
18 MMU table than the one which will be allocated during
19 relocation.
20
Mike Looijmans3b646082016-09-20 11:37:24 +020021config BOOT_INIT_FILE
22 string "boot.bin init register filename"
Michal Simek9cf9da72016-12-16 13:00:26 +010023 depends on SPL
Mike Looijmans3b646082016-09-20 11:37:24 +020024 default ""
25 help
26 Add register writes to boot.bin format (max 256 pairs).
27 Expect a table of register-value pairs, e.g. "0x12345678 0x4321"
28
Michal Simekc85a6b72016-10-21 12:58:17 +020029config PMUFW_INIT_FILE
30 string "PMU firmware"
31 depends on SPL
32 default ""
33 help
34 Include external PMUFW (Platform Management Unit FirmWare) to
35 a Xilinx bootable image (boot.bin).
36
Luca Ceresolic28a9cf2019-05-21 18:06:43 +020037config ZYNQMP_SPL_PM_CFG_OBJ_FILE
38 string "PMU firmware configuration object to load at runtime by SPL"
39 depends on SPL
40 help
41 Path to a binary PMU firmware configuration object to be linked
42 into U-Boot SPL and loaded at runtime into the PMU firmware.
43
44 The ZynqMP Power Management Unit (PMU) needs a configuration
45 object for most SoC peripherals to work. To have it loaded by
46 U-Boot SPL set here the file name (absolute path or relative to
47 the top source tree) of your configuration, which must be a
48 binary blob. It will be linked in the SPL binary and loaded
49 into the PMU firmware by U-Boot SPL during board
50 initialization.
51
52 Leave this option empty if your PMU firmware has a hard-coded
53 configuration object or you are loading it by any other means.
54
Siva Durga Prasad Paladugu3b644a32018-01-12 15:35:46 +053055config ZYNQMP_NO_DDR
56 bool "Disable DDR MMU mapping"
57 help
58 This option configures MMU with no DDR to avoid speculative
59 access to DDR memory where DDR is not present.
60
Jorge Ramirez-Ortiz01c77142021-06-13 20:55:53 +020061config SPL_ZYNQMP_DRAM_ECC_INIT
62 bool "Initialize DRAM ECC"
63 depends on SPL
64 help
65 This option initializes all memory to 0xdeadbeef. Must be set if your
66 memory is of ECC type.
67
68config SPL_ZYNQMP_DRAM_BANK1_BASE
69 depends on SPL_ZYNQMP_DRAM_ECC_INIT
70 hex "DRAM Bank1 address"
Michal Simeka156b6c2023-10-26 08:34:31 +020071 default 0x00000000
72 help
73 Start address of DRAM ECC bank1
Jorge Ramirez-Ortiz01c77142021-06-13 20:55:53 +020074
75config SPL_ZYNQMP_DRAM_BANK1_LEN
76 depends on SPL_ZYNQMP_DRAM_ECC_INIT
77 hex "DRAM Bank1 size"
Michal Simeka156b6c2023-10-26 08:34:31 +020078 default 0x80000000
79 help
80 Size in bytes of the DRAM ECC bank1
Jorge Ramirez-Ortiz01c77142021-06-13 20:55:53 +020081
82config SPL_ZYNQMP_DRAM_BANK2_BASE
83 depends on SPL_ZYNQMP_DRAM_ECC_INIT
84 hex "DRAM Bank2 address"
Michal Simeka156b6c2023-10-26 08:34:31 +020085 default 0x800000000
86 help
87 Start address of DRAM ECC bank2
Jorge Ramirez-Ortiz01c77142021-06-13 20:55:53 +020088
89config SPL_ZYNQMP_DRAM_BANK2_LEN
90 depends on SPL_ZYNQMP_DRAM_ECC_INIT
91 hex "DRAM Bank2 size"
Michal Simeka156b6c2023-10-26 08:34:31 +020092 default 0x0
93 help
94 Size in bytes of the DRAM ECC bank2. A null size takes no action.
Jorge Ramirez-Ortiz01c77142021-06-13 20:55:53 +020095
Simon Glass04e38902016-07-05 17:10:13 -060096config SYS_MALLOC_F_LEN
97 default 0x600
98
Siva Durga Prasad Paladugu189bec42017-07-13 19:01:10 +053099config DEFINE_TCM_OCM_MMAP
100 bool "Define TCM and OCM memory in MMU Table"
Siva Durga Prasad Paladugu89401482017-08-01 16:24:50 +0530101 default y if MP
Siva Durga Prasad Paladugu189bec42017-07-13 19:01:10 +0530102 help
103 This option if enabled defines the TCM and OCM memory and its
104 memory attributes in MMU table entry.
105
Michal Simekfd1b6352017-07-12 13:21:27 +0200106config ZYNQMP_PSU_INIT_ENABLED
107 bool "Include psu_init"
Michal Simek83d29412022-02-17 14:28:40 +0100108 select BOARD_EARLY_INIT_F
Michal Simekfd1b6352017-07-12 13:21:27 +0200109 help
Michal Simek74673ca2022-12-02 09:18:06 +0100110 Include psu_init to full u-boot.
111
112config SPL_ZYNQMP_PSU_INIT_ENABLED
113 bool "Include psu_init in SPL"
Michal Simek425b8512024-03-12 16:51:21 +0100114 depends on SPL
115 default y
Michal Simek74673ca2022-12-02 09:18:06 +0100116 select BOARD_EARLY_INIT_F
117 help
118 Include psu_init by default in SPL.
Michal Simekfd1b6352017-07-12 13:21:27 +0200119
Michal Simek7f491d72016-08-30 16:17:27 +0200120config SPL_ZYNQMP_ALT_BOOTMODE_ENABLED
121 bool "Overwrite SPL bootmode"
122 depends on SPL
123 help
124 Overwrite bootmode selected via boot mode pins to tell SPL what should
125 be the next boot device.
126
Jorge Ramirez-Ortiz398a74a2021-10-13 15:48:00 +0200127config SPL_ZYNQMP_RESTORE_JTAG
128 bool "Restore JTAG"
129 depends on SPL
130 help
131 Booting SPL in secure mode causes the CSU to disable the JTAG interface
132 even if no eFuses were burnt. This option restores the interface if
133 possible.
134
Vipul Kumar5dc5a532018-02-28 15:53:28 +0530135config ZYNQ_SDHCI_MAX_FREQ
136 default 200000000
137
Michal Simek7f491d72016-08-30 16:17:27 +0200138config SPL_ZYNQMP_ALT_BOOTMODE
139 hex
140 default 0x0 if JTAG_MODE
141 default 0x1 if QSPI_MODE_24BIT
142 default 0x2 if QSPI_MODE_32BIT
143 default 0x3 if SD_MODE
144 default 0x4 if NAND_MODE
145 default 0x5 if SD_MODE1
146 default 0x6 if EMMC_MODE
147 default 0x7 if USB_MODE
Michal Simek26610812016-10-26 09:24:32 +0200148 default 0xa if SW_USBHOST_MODE
149 default 0xb if SW_SATA_MODE
Michal Simek011f0c42017-02-15 09:41:53 +0100150 default 0xe if SD1_LSHFT_MODE
Michal Simek7f491d72016-08-30 16:17:27 +0200151
152choice
153 prompt "Boot mode"
Michal Simeke3672402016-08-30 16:17:27 +0200154 depends on SPL_ZYNQMP_ALT_BOOTMODE_ENABLED
Ulf Magnussone7563c22018-01-30 14:02:01 +0100155 default JTAG_MODE
Michal Simek7f491d72016-08-30 16:17:27 +0200156
157config JTAG_MODE
158 bool "JTAG_MODE"
159
160config QSPI_MODE_24BIT
161 bool "QSPI_MODE_24BIT"
162
163config QSPI_MODE_32BIT
164 bool "QSPI_MODE_32BIT"
165
166config SD_MODE
167 bool "SD_MODE"
168
169config SD_MODE1
170 bool "SD_MODE1"
171
172config NAND_MODE
173 bool "NAND_MODE"
174
175config EMMC_MODE
176 bool "EMMC_MODE"
177
178config USB_MODE
179 bool "USB"
180
Michal Simek26610812016-10-26 09:24:32 +0200181config SW_USBHOST_MODE
182 bool "SW USBHOST_MODE"
183
184config SW_SATA_MODE
185 bool "SW SATA_MODE"
186
Michal Simek011f0c42017-02-15 09:41:53 +0100187config SD1_LSHFT_MODE
188 bool "SD1_LSHFT_MODE"
189
Michal Simek7f491d72016-08-30 16:17:27 +0200190endchoice
Simon Glass04e38902016-07-05 17:10:13 -0600191
Charlie Johnston7abd4352024-04-10 12:50:08 -0700192config CMD_ZYNQMP
193 bool "Enable ZynqMP specific commands"
194 depends on ZYNQMP_FIRMWARE
195 default y
196 help
197 Enable ZynqMP specific commands like "zynqmp secure"
198 which is used for zynqmp secure image verification.
199 The secure image is a xilinx specific BOOT.BIN with
200 either authentication or encryption or both encryption
201 and authentication feature enabled while generating
202 BOOT.BIN using Xilinx bootgen tool.
203
Michal Simek6ba36c02020-08-27 15:34:11 +0200204source "board/xilinx/Kconfig"
Michal Simek6ba36c02020-08-27 15:34:11 +0200205
Michal Simek84c72042015-01-15 10:01:51 +0100206endif