mirror of
https://github.com/smaeul/u-boot.git
synced 2025-11-02 04:58:14 +00:00
The zynqmp cmds.c is currently tied to the board but the commands contained within are more closely tied to the architecture. To allow usage of those commands when the architecture is ZynqMP but the board is not, this change moves the cmds into the arch/ tree. The source file is renamed to zynqmp.c to reflect the command name as well. Signed-off-by: Charlie Johnston <charlie.johnston@loftorbital.com> Link: https://lore.kernel.org/r/20240410195008.405061-2-charlie.johnston@loftorbital.com Signed-off-by: Michal Simek <michal.simek@amd.com>
207 lines
4.8 KiB
Plaintext
207 lines
4.8 KiB
Plaintext
if ARCH_ZYNQMP
|
|
|
|
config SYS_BOARD
|
|
string "Board name"
|
|
default "zynqmp"
|
|
|
|
config SYS_VENDOR
|
|
string "Vendor name"
|
|
default "xilinx"
|
|
|
|
config SYS_SOC
|
|
default "zynqmp"
|
|
|
|
config SYS_MEM_RSVD_FOR_MMU
|
|
bool "Reserve memory for MMU Table"
|
|
help
|
|
If defined this option is used to setup different space for
|
|
MMU table than the one which will be allocated during
|
|
relocation.
|
|
|
|
config BOOT_INIT_FILE
|
|
string "boot.bin init register filename"
|
|
depends on SPL
|
|
default ""
|
|
help
|
|
Add register writes to boot.bin format (max 256 pairs).
|
|
Expect a table of register-value pairs, e.g. "0x12345678 0x4321"
|
|
|
|
config PMUFW_INIT_FILE
|
|
string "PMU firmware"
|
|
depends on SPL
|
|
default ""
|
|
help
|
|
Include external PMUFW (Platform Management Unit FirmWare) to
|
|
a Xilinx bootable image (boot.bin).
|
|
|
|
config ZYNQMP_SPL_PM_CFG_OBJ_FILE
|
|
string "PMU firmware configuration object to load at runtime by SPL"
|
|
depends on SPL
|
|
help
|
|
Path to a binary PMU firmware configuration object to be linked
|
|
into U-Boot SPL and loaded at runtime into the PMU firmware.
|
|
|
|
The ZynqMP Power Management Unit (PMU) needs a configuration
|
|
object for most SoC peripherals to work. To have it loaded by
|
|
U-Boot SPL set here the file name (absolute path or relative to
|
|
the top source tree) of your configuration, which must be a
|
|
binary blob. It will be linked in the SPL binary and loaded
|
|
into the PMU firmware by U-Boot SPL during board
|
|
initialization.
|
|
|
|
Leave this option empty if your PMU firmware has a hard-coded
|
|
configuration object or you are loading it by any other means.
|
|
|
|
config ZYNQMP_NO_DDR
|
|
bool "Disable DDR MMU mapping"
|
|
help
|
|
This option configures MMU with no DDR to avoid speculative
|
|
access to DDR memory where DDR is not present.
|
|
|
|
config SPL_ZYNQMP_DRAM_ECC_INIT
|
|
bool "Initialize DRAM ECC"
|
|
depends on SPL
|
|
help
|
|
This option initializes all memory to 0xdeadbeef. Must be set if your
|
|
memory is of ECC type.
|
|
|
|
config SPL_ZYNQMP_DRAM_BANK1_BASE
|
|
depends on SPL_ZYNQMP_DRAM_ECC_INIT
|
|
hex "DRAM Bank1 address"
|
|
default 0x00000000
|
|
help
|
|
Start address of DRAM ECC bank1
|
|
|
|
config SPL_ZYNQMP_DRAM_BANK1_LEN
|
|
depends on SPL_ZYNQMP_DRAM_ECC_INIT
|
|
hex "DRAM Bank1 size"
|
|
default 0x80000000
|
|
help
|
|
Size in bytes of the DRAM ECC bank1
|
|
|
|
config SPL_ZYNQMP_DRAM_BANK2_BASE
|
|
depends on SPL_ZYNQMP_DRAM_ECC_INIT
|
|
hex "DRAM Bank2 address"
|
|
default 0x800000000
|
|
help
|
|
Start address of DRAM ECC bank2
|
|
|
|
config SPL_ZYNQMP_DRAM_BANK2_LEN
|
|
depends on SPL_ZYNQMP_DRAM_ECC_INIT
|
|
hex "DRAM Bank2 size"
|
|
default 0x0
|
|
help
|
|
Size in bytes of the DRAM ECC bank2. A null size takes no action.
|
|
|
|
config SYS_MALLOC_F_LEN
|
|
default 0x600
|
|
|
|
config DEFINE_TCM_OCM_MMAP
|
|
bool "Define TCM and OCM memory in MMU Table"
|
|
default y if MP
|
|
help
|
|
This option if enabled defines the TCM and OCM memory and its
|
|
memory attributes in MMU table entry.
|
|
|
|
config ZYNQMP_PSU_INIT_ENABLED
|
|
bool "Include psu_init"
|
|
select BOARD_EARLY_INIT_F
|
|
help
|
|
Include psu_init to full u-boot.
|
|
|
|
config SPL_ZYNQMP_PSU_INIT_ENABLED
|
|
bool "Include psu_init in SPL"
|
|
depends on SPL
|
|
default y
|
|
select BOARD_EARLY_INIT_F
|
|
help
|
|
Include psu_init by default in SPL.
|
|
|
|
config SPL_ZYNQMP_ALT_BOOTMODE_ENABLED
|
|
bool "Overwrite SPL bootmode"
|
|
depends on SPL
|
|
help
|
|
Overwrite bootmode selected via boot mode pins to tell SPL what should
|
|
be the next boot device.
|
|
|
|
config SPL_ZYNQMP_RESTORE_JTAG
|
|
bool "Restore JTAG"
|
|
depends on SPL
|
|
help
|
|
Booting SPL in secure mode causes the CSU to disable the JTAG interface
|
|
even if no eFuses were burnt. This option restores the interface if
|
|
possible.
|
|
|
|
config ZYNQ_SDHCI_MAX_FREQ
|
|
default 200000000
|
|
|
|
config SPL_ZYNQMP_ALT_BOOTMODE
|
|
hex
|
|
default 0x0 if JTAG_MODE
|
|
default 0x1 if QSPI_MODE_24BIT
|
|
default 0x2 if QSPI_MODE_32BIT
|
|
default 0x3 if SD_MODE
|
|
default 0x4 if NAND_MODE
|
|
default 0x5 if SD_MODE1
|
|
default 0x6 if EMMC_MODE
|
|
default 0x7 if USB_MODE
|
|
default 0xa if SW_USBHOST_MODE
|
|
default 0xb if SW_SATA_MODE
|
|
default 0xe if SD1_LSHFT_MODE
|
|
|
|
choice
|
|
prompt "Boot mode"
|
|
depends on SPL_ZYNQMP_ALT_BOOTMODE_ENABLED
|
|
default JTAG_MODE
|
|
|
|
config JTAG_MODE
|
|
bool "JTAG_MODE"
|
|
|
|
config QSPI_MODE_24BIT
|
|
bool "QSPI_MODE_24BIT"
|
|
|
|
config QSPI_MODE_32BIT
|
|
bool "QSPI_MODE_32BIT"
|
|
|
|
config SD_MODE
|
|
bool "SD_MODE"
|
|
|
|
config SD_MODE1
|
|
bool "SD_MODE1"
|
|
|
|
config NAND_MODE
|
|
bool "NAND_MODE"
|
|
|
|
config EMMC_MODE
|
|
bool "EMMC_MODE"
|
|
|
|
config USB_MODE
|
|
bool "USB"
|
|
|
|
config SW_USBHOST_MODE
|
|
bool "SW USBHOST_MODE"
|
|
|
|
config SW_SATA_MODE
|
|
bool "SW SATA_MODE"
|
|
|
|
config SD1_LSHFT_MODE
|
|
bool "SD1_LSHFT_MODE"
|
|
|
|
endchoice
|
|
|
|
config CMD_ZYNQMP
|
|
bool "Enable ZynqMP specific commands"
|
|
depends on ZYNQMP_FIRMWARE
|
|
default y
|
|
help
|
|
Enable ZynqMP specific commands like "zynqmp secure"
|
|
which is used for zynqmp secure image verification.
|
|
The secure image is a xilinx specific BOOT.BIN with
|
|
either authentication or encryption or both encryption
|
|
and authentication feature enabled while generating
|
|
BOOT.BIN using Xilinx bootgen tool.
|
|
|
|
source "board/xilinx/Kconfig"
|
|
|
|
endif
|