summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--gnu/bootloader/u-boot.scm20
-rw-r--r--gnu/system/install.scm6
2 files changed, 26 insertions, 0 deletions
diff --git a/gnu/bootloader/u-boot.scm b/gnu/bootloader/u-boot.scm
index bc8f98f32f..ea0f67b3cd 100644
--- a/gnu/bootloader/u-boot.scm
+++ b/gnu/bootloader/u-boot.scm
@@ -36,6 +36,7 @@
             u-boot-mx6cuboxi-bootloader
             u-boot-nintendo-nes-classic-edition-bootloader
             u-boot-novena-bootloader
+            u-boot-pine64-plus-bootloader
             u-boot-wandboard-bootloader))
 
 (define install-u-boot
@@ -65,6 +66,15 @@
         (write-file-on-device u-boot (stat:size (stat u-boot))
                               device (* 8 1024)))))
 
+(define install-allwinner64-u-boot
+  #~(lambda (bootloader device mount-point)
+      (let ((spl (string-append bootloader "/libexec/spl/sunxi-spl.bin"))
+            (u-boot (string-append bootloader "/libexec/u-boot.itb")))
+        (write-file-on-device spl (stat:size (stat spl))
+                              device (* 8 1024))
+        (write-file-on-device u-boot (stat:size (stat u-boot))
+                              device (* 40 1024)))))
+
 (define install-imx-u-boot
   #~(lambda (bootloader device mount-point)
       (let ((spl (string-append bootloader "/libexec/SPL"))
@@ -98,6 +108,11 @@
    (inherit u-boot-bootloader)
    (installer install-allwinner-u-boot)))
 
+(define u-boot-allwinner64-bootloader
+  (bootloader
+   (inherit u-boot-bootloader)
+   (installer install-allwinner64-u-boot)))
+
 (define u-boot-imx-bootloader
   (bootloader
    (inherit u-boot-bootloader)
@@ -142,3 +157,8 @@
   (bootloader
    (inherit u-boot-imx-bootloader)
    (package u-boot-novena)))
+
+(define u-boot-pine64-plus-bootloader
+  (bootloader
+   (inherit u-boot-allwinner64-bootloader)
+   (package u-boot-pine64-plus)))
diff --git a/gnu/system/install.scm b/gnu/system/install.scm
index a2917e485f..3efff915a8 100644
--- a/gnu/system/install.scm
+++ b/gnu/system/install.scm
@@ -52,6 +52,7 @@
             mx6cuboxi-installation-os
             nintendo-nes-classic-edition-installation-os
             novena-installation-os
+            pine64-plus-installation-os
             wandboard-installation-os))
 
 ;;; Commentary:
@@ -447,6 +448,11 @@ The bootloader BOOTLOADER is installed to BOOTLOADER-TARGET."
                             "/dev/mmcblk0" ; SD card (solder it yourself)
                             "ttyS0"))
 
+(define pine64-plus-installation-os
+  (embedded-installation-os u-boot-pine64-plus-bootloader
+                            "/dev/mmcblk0" ; SD card storage
+                            "ttyS0"))
+
 (define wandboard-installation-os
   (embedded-installation-os u-boot-wandboard-bootloader
                             "/dev/mmcblk0" ; SD card storage