diff options
Diffstat (limited to 'gnu/packages/bootloaders.scm')
-rw-r--r-- | gnu/packages/bootloaders.scm | 43 |
1 files changed, 27 insertions, 16 deletions
diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm index 6093e0d9e6..56bef57cb7 100644 --- a/gnu/packages/bootloaders.scm +++ b/gnu/packages/bootloaders.scm @@ -475,11 +475,19 @@ menu to select one of the installed operating systems.") tree binary files. These are board description files used by Linux and BSD.") (license license:gpl2+))) +(define %u-boot-rockchip-inno-usb-patch + ;; Fix regression in 2020.10 causing freezes on boot with USB boot enabled. + ;; See https://gitlab.manjaro.org/manjaro-arm/packages/core/uboot-rockpro64/-/issues/4 + ;; and https://patchwork.ozlabs.org/project/uboot/patch/20210406151059.1187379-1-icenowy@aosc.io + (search-patch "u-boot-rockchip-inno-usb.patch")) + (define u-boot (package (name "u-boot") (version "2021.04") (source (origin + (patches + (list %u-boot-rockchip-inno-usb-patch)) (method url-fetch) (uri (string-append "https://ftp.denx.de/pub/u-boot/" @@ -505,6 +513,21 @@ tree binary files. These are board description files used by Linux and BSD.") also initializes the boards (RAM etc).") (license license:gpl2+))) +(define-public u-boot-2021.07 + (package + (inherit u-boot) + (version "2021.07-rc1") + (source (origin + (patches + (list %u-boot-rockchip-inno-usb-patch)) + (method url-fetch) + (uri (string-append + "https://ftp.denx.de/pub/u-boot/" + "u-boot-" version ".tar.bz2")) + (sha256 + (base32 + "12krpy85iwy40xlhqb61d0d4bzj0sbn9sdf8brn57m4cjh1svaya")))))) + (define-public u-boot-tools (package (inherit u-boot) @@ -889,13 +912,6 @@ to Novena upstream, does not load u-boot.img from the first partition.") (substitute-keyword-arguments (package-arguments base) ((#:phases phases) `(modify-phases ,phases - (add-after 'unpack 'patch-rockpro64-config - ;; Fix regression in 2020.10 causing freezes on boot with USB boot enabled. - ;; See https://gitlab.manjaro.org/manjaro-arm/packages/core/uboot-rockpro64/-/issues/4 - (lambda _ - (substitute* "configs/rockpro64-rk3399_defconfig" - (("CONFIG_USE_PREBOOT=y") "CONFIG_USE_PREBOOT=n")) - #t)) (add-after 'patch-rockpro64-config 'set-environment (lambda* (#:key inputs #:allow-other-keys) (setenv "BL31" (string-append (assoc-ref inputs "firmware") @@ -912,17 +928,12 @@ to Novena upstream, does not load u-boot.img from the first partition.") (let ((base (make-u-boot-package "pinebook-pro-rk3399" "aarch64-linux-gnu"))) (package (inherit base) + (version (package-version u-boot-2021.07)) + (source (package-source u-boot-2021.07)) (arguments (substitute-keyword-arguments (package-arguments base) ((#:phases phases) `(modify-phases ,phases - (add-after 'unpack 'patch-pinebook-pro-config - ;; Fix regression in 2020.10 causing freezes on boot with USB boot enabled. - ;; See https://gitlab.manjaro.org/manjaro-arm/packages/core/uboot-rockpro64/-/issues/4 - (lambda _ - (substitute* "configs/pinebook-pro-rk3399_defconfig" - (("CONFIG_USE_PREBOOT=y") "CONFIG_USE_PREBOOT=n")) - #t)) (add-after 'unpack 'set-environment (lambda* (#:key inputs #:allow-other-keys) (setenv "BL31" (string-append (assoc-ref inputs "firmware") @@ -1207,8 +1218,8 @@ order to add a suitable bootloader menu entry.") (description "iPXE is a network boot firmware. It provides a full PXE implementation enhanced with additional features such as booting from: a web server via HTTP, an iSCSI SAN, a Fibre Channel SAN via FCoE, an AoE SAN, a -wireless network, a wide-area network, an Infiniband network. It allows to -control the boot process with a script. You can use iPXE to replace the +wireless network, a wide-area network, an Infiniband network. It +controls the boot process with a script. You can use iPXE to replace the existing PXE ROM on your network card, or you can chainload into iPXE to obtain the features of iPXE without the hassle of reflashing.") (license license:gpl2+)))) |