patch: uboot: v2023.07.02: bananapicm4: nvme boot support (#5840)

HACK: BOOT ORDER: NVMe SDCARD eMMC.

NOTES:
In my testing there has been no false starts or hangs up. Meaning
the boot process has been stable.

The downside to this in my opinion is that if there is an OS on
the NVMe it will always take boot priority. The drive would need
to be pulled or DD'd in order for SD eMMC boot to kick in.

Tested-on: Waveshare CM4-IO-BASE-B

Signed-off-by: Patrick Yavitz <pyavitz@xxxxx.com>
Co-authored-by: Patrick Yavitz <pyavitz@xxxxx.com>
This commit is contained in:
c0rnelius
2023-10-18 11:31:39 -04:00
committed by GitHub
parent b3fb316346
commit 5b30b9250a
3 changed files with 67 additions and 2 deletions

View File

@@ -0,0 +1,35 @@
From 7bb76be10f204d422a766ff08fc5e9cfc24eab88 Mon Sep 17 00:00:00 2001
From: Patrick Yavitz <pyavitz@xxxxx.com>
Date: Sun, 15 Oct 2023 09:22:12 -0400
Subject: [PATCH] configs: bananapi-cm4-cm4io_defconfig: nvme support
Enable NVME PCI SUPPORT.
Signed-off-by: Patrick Yavitz <pyavitz@xxxxx.com>
---
configs/bananapi-cm4-cm4io_defconfig | 2 ++
1 file changed, 2 insertions(+)
diff --git a/configs/bananapi-cm4-cm4io_defconfig b/configs/bananapi-cm4-cm4io_defconfig
index bb43cc41e5..066c5dca4a 100644
--- a/configs/bananapi-cm4-cm4io_defconfig
+++ b/configs/bananapi-cm4-cm4io_defconfig
@@ -20,6 +20,7 @@ CONFIG_REMAKE_ELF=y
CONFIG_OF_BOARD_SETUP=y
# CONFIG_DISPLAY_CPUINFO is not set
CONFIG_MISC_INIT_R=y
+CONFIG_PCI_INIT_R=y
CONFIG_SYS_MAXARGS=32
# CONFIG_CMD_BDI is not set
# CONFIG_CMD_IMI is not set
@@ -43,6 +44,7 @@ CONFIG_DM_MDIO=y
CONFIG_DM_MDIO_MUX=y
CONFIG_ETH_DESIGNWARE_MESON8B=y
CONFIG_MDIO_MUX_MESON_G12A=y
+CONFIG_NVME_PCI=y
CONFIG_PCIE_DW_MESON=y
CONFIG_MESON_G12A_USB_PHY=y
CONFIG_PINCTRL=y
--
2.39.2

View File

@@ -0,0 +1,30 @@
From c70fd3829e8625898b493ac083ab41adcc875946 Mon Sep 17 00:00:00 2001
From: Patrick Yavitz <pyavitz@xxxxx.com>
Date: Sun, 15 Oct 2023 09:08:48 -0400
Subject: [PATCH] meson64 boot target nvme
Signed-off-by: Patrick Yavitz <pyavitz@xxxxx.com>
---
include/configs/meson64.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/configs/meson64.h b/include/configs/meson64.h
index 801cdae470..0c3fc676dd 100644
--- a/include/configs/meson64.h
+++ b/include/configs/meson64.h
@@ -74,11 +74,11 @@
#ifndef BOOT_TARGET_DEVICES
#define BOOT_TARGET_DEVICES(func) \
func(ROMUSB, romusb, na) \
+ BOOT_TARGET_NVME(func) \
func(MMC, mmc, 0) \
func(MMC, mmc, 1) \
func(MMC, mmc, 2) \
BOOT_TARGET_DEVICES_USB(func) \
- BOOT_TARGET_NVME(func) \
BOOT_TARGET_SCSI(func) \
func(PXE, pxe, na) \
func(DHCP, dhcp, na)
--
2.39.2