aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/bootloaders.scm
diff options
context:
space:
mode:
authorVagrant Cascadian <vagrant@debian.org>2020-04-20 18:21:07 -0700
committerVagrant Cascadian <vagrant@debian.org>2020-04-20 19:13:35 -0700
commit5327b399a875a00304ccc1e6ece7190f26113539 (patch)
tree6aa9d443d6f61412455d26fe9adfc59289eabb9a /gnu/packages/bootloaders.scm
parent41169f21e67b3fdf9ee320e7f5236f686eb41538 (diff)
downloadguix-5327b399a875a00304ccc1e6ece7190f26113539.tar
guix-5327b399a875a00304ccc1e6ece7190f26113539.tar.gz
gnu: Add u-boot-pinebook-pro-rk3399.
* gnu/packages/bootloaders (u-boot-pinebook-pro-rk3399): New variable. * gnu/packages/patches/u-boot-DT-for-Pinebook-Pro.patch: New file. * gnu/packages/patches/u-boot-add-boe-nv140fhmn49-display.patch: New file. * gnu/packages/patches/u-boot-gpio-keys-binding-cons.patch: New file. * gnu/packages/patches/u-boot-leds-common-binding-con.patch: New file. * gnu/packages/patches/u-boot-support-Pinebook-Pro-laptop.patch: New file. * gnu/packages/patches/u-boot-video-rockchip-fix-build.patch: New file. * gnu/local.mk (dist_patch_DATA): Add new patches. * gnu/bootloader/u-boot.scm (install-pinebook-pro-rk3399-u-boot, u-boot-pinebook-pro-rk3399-bootloader): New variable. Co-authored-by: Jan Nieuwenhuizen <janneke@gnu.org>
Diffstat (limited to 'gnu/packages/bootloaders.scm')
-rw-r--r--gnu/packages/bootloaders.scm30
1 files changed, 30 insertions, 0 deletions
diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index 28a088a43a..750579e913 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -11,6 +11,7 @@
;;; Copyright © 2019 nee <nee@cock.li>
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
+;;; Copyright © 2018, 2019, 2020 Vagrant Cascadian <vagrant@debian.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -834,6 +835,35 @@ to Novena upstream, does not load u-boot.img from the first partition.")
`(("firmware" ,arm-trusted-firmware-rk3399)
,@(package-native-inputs base))))))
+(define-public u-boot-pinebook-pro-rk3399
+ (let ((base (make-u-boot-package "pinebook-pro-rk3399" "aarch64-linux-gnu")))
+ (package
+ (inherit base)
+ (source (origin
+ (inherit (package-source u-boot))
+ (patches
+ (search-patches "u-boot-add-boe-nv140fhmn49-display.patch"
+ "u-boot-gpio-keys-binding-cons.patch"
+ "u-boot-leds-common-binding-con.patch"
+ "u-boot-DT-for-Pinebook-Pro.patch"
+ "u-boot-support-Pinebook-Pro-laptop.patch"
+ "u-boot-video-rockchip-fix-build.patch"))))
+ (arguments
+ (substitute-keyword-arguments (package-arguments base)
+ ((#:phases phases)
+ `(modify-phases ,phases
+ (add-after 'unpack 'set-environment
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "BL31" (string-append (assoc-ref inputs "firmware")
+ "/bl31.elf"))
+ #t))
+ ;; Phases do not succeed on the bl31 ELF.
+ (delete 'strip)
+ (delete 'validate-runpath)))))
+ (native-inputs
+ `(("firmware" ,arm-trusted-firmware-rk3399)
+ ,@(package-native-inputs base))))))
+
(define-public vboot-utils
(package
(name "vboot-utils")