unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
blob 1e62a2d61d3ce233615a18fde69a1bb2f4dd0fe2 1930 bytes (raw)
name: gnu/packages/patches/u-boot-rvvm-support.patch 	 # note: path name is non-authoritative(*)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
 
Patch to support NVMe and RVVM board properly in U-Boot
 - Enables NVMe PCI support & booting from it
 - Enables framebuffer driver, passes it as EFI FB
 - Enables Realtek RTL8169 driver
 - Get rid of DHCP boot, it is confusing and not helpful

Applies cleanly over U-Boot 2023.4
Reuses QEMU virt board config, build like this:
 make qemu-riscv64_smode_defconfig
 CROSS_COMPILE=riscv64-linux-gnu- make

Resulting firmware works fine on both RVVM and QEMU

diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
index 48ca4ff4..faa17f33 100644
--- a/arch/riscv/Kconfig
+++ b/arch/riscv/Kconfig
@@ -15,7 +15,7 @@ config TARGET_MICROCHIP_ICICLE
 	bool "Support Microchip PolarFire-SoC Icicle Board"
 
 config TARGET_QEMU_VIRT
-	bool "Support QEMU Virt Board"
+	bool "Support QEMU/RVVM Virt Boards"
 
 config TARGET_SIFIVE_UNLEASHED
 	bool "Support SiFive Unleashed Board"
diff --git a/board/emulation/qemu-riscv/Kconfig b/board/emulation/qemu-riscv/Kconfig
index 6114e1b8..7c25825a 100644
--- a/board/emulation/qemu-riscv/Kconfig
+++ b/board/emulation/qemu-riscv/Kconfig
@@ -29,6 +29,7 @@ config BOARD_SPECIFIC_OPTIONS # dummy
 	def_bool y
 	select GENERIC_RISCV
 	select SUPPORT_SPL
+	imply OPTIMIZE_INLINING
 	imply AHCI
 	imply SMP
 	imply BOARD_LATE_INIT
@@ -50,7 +51,12 @@ config BOARD_SPECIFIC_OPTIONS # dummy
 	imply SCSI_AHCI
 	imply AHCI_PCI
 	imply E1000
+	imply RTL8169
 	imply NVME
+	imply NVME_PCI
+	imply VIDEO
+	imply VIDEO_SIMPLE
+	imply NO_FB_CLEAR
 	imply PCI
 	imply PCIE_ECAM_GENERIC
 	imply SCSI
diff --git a/include/configs/qemu-riscv.h b/include/configs/qemu-riscv.h
index 20135f56..821251a3 100644
--- a/include/configs/qemu-riscv.h
+++ b/include/configs/qemu-riscv.h
@@ -19,9 +19,9 @@
 
 #define BOOT_TARGET_DEVICES(func) \
 	func(QEMU, qemu, na) \
+	func(NVME, nvme, 0) \
 	func(VIRTIO, virtio, 0) \
-	func(SCSI, scsi, 0) \
-	func(DHCP, dhcp, na)
+	func(SCSI, scsi, 0)
 
 #include <config_distro_bootcmd.h>
 

debug log:

solving 1e62a2d61d ...
found 1e62a2d61d in https://yhetil.org/guix-patches/62cefdc5d6a4b0e3d6e611a6b6541f00acc19d9f.1690488628.git.juli@incana.org/

applying [1/1] https://yhetil.org/guix-patches/62cefdc5d6a4b0e3d6e611a6b6541f00acc19d9f.1690488628.git.juli@incana.org/
diff --git a/gnu/packages/patches/u-boot-rvvm-support.patch b/gnu/packages/patches/u-boot-rvvm-support.patch
new file mode 100644
index 0000000000..1e62a2d61d

1:25: space before tab in indent.
 	bool "Support Microchip PolarFire-SoC Icicle Board"
1:26: trailing whitespace.
 
1:30: trailing whitespace.
 
1:32: space before tab in indent.
 	bool "Support SiFive Unleashed Board"
1:38: space before tab in indent.
 	def_bool y
Checking patch gnu/packages/patches/u-boot-rvvm-support.patch...
Applied patch gnu/packages/patches/u-boot-rvvm-support.patch cleanly.
warning: squelched 18 whitespace errors
warning: 23 lines add whitespace errors.

index at:
100644 1e62a2d61d3ce233615a18fde69a1bb2f4dd0fe2	gnu/packages/patches/u-boot-rvvm-support.patch

(*) Git path names are given by the tree(s) the blob belongs to.
    Blobs themselves have no identifier aside from the hash of its contents.^

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).