Add a new Kconfig option CONFIG_MVEBU_SPL_BOOT_DEVICE_PEX which instruct
make to generate kwbimage with PEX header. This image is used for booting
from PCI Express device which is in the Root Complex mode.

Support is very simple, SPL after finishes DDR training returns back to the
BootROM (via CONFIG_SPL_BOOTROM_SUPPORT option) and BootROM then start
executing U-Boot proper.

Signed-off-by: Pali Rohár <p...@kernel.org>
---
 arch/arm/mach-mvebu/Kconfig  | 4 ++++
 arch/arm/mach-mvebu/Makefile | 3 +++
 2 files changed, 7 insertions(+)

diff --git a/arch/arm/mach-mvebu/Kconfig b/arch/arm/mach-mvebu/Kconfig
index 5e9480aed291..5abcdc4972ab 100644
--- a/arch/arm/mach-mvebu/Kconfig
+++ b/arch/arm/mach-mvebu/Kconfig
@@ -345,6 +345,10 @@ config MVEBU_SPL_BOOT_DEVICE_SATA
        imply SPL_LIBDISK_SUPPORT
        select SPL_BOOTROM_SUPPORT
 
+config MVEBU_SPL_BOOT_DEVICE_PEX
+       bool "PCI Express"
+       select SPL_BOOTROM_SUPPORT
+
 config MVEBU_SPL_BOOT_DEVICE_UART
        bool "UART"
        select SPL_BOOTROM_SUPPORT
diff --git a/arch/arm/mach-mvebu/Makefile b/arch/arm/mach-mvebu/Makefile
index 4b7b9ff8b2f2..00014375e7fb 100644
--- a/arch/arm/mach-mvebu/Makefile
+++ b/arch/arm/mach-mvebu/Makefile
@@ -59,6 +59,9 @@ endif
 ifneq ($(CONFIG_MVEBU_SPL_BOOT_DEVICE_SATA),)
        KWB_CFG_BOOT_FROM=sata
 endif
+ifneq ($(CONFIG_MVEBU_SPL_BOOT_DEVICE_PEX),)
+       KWB_CFG_BOOT_FROM=pex
+endif
 ifneq ($(CONFIG_MVEBU_SPL_BOOT_DEVICE_UART),)
        KWB_CFG_BOOT_FROM=uart
 endif
-- 
2.20.1

Reply via email to