summary refs log tree commit diff
path: root/gnu/bootloader
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/bootloader')
-rw-r--r--gnu/bootloader/u-boot.scm17
1 files changed, 17 insertions, 0 deletions
diff --git a/gnu/bootloader/u-boot.scm b/gnu/bootloader/u-boot.scm
index 20eabc370c..e21526eb7e 100644
--- a/gnu/bootloader/u-boot.scm
+++ b/gnu/bootloader/u-boot.scm
@@ -28,6 +28,7 @@
             u-boot-a20-olinuxino-micro-bootloader
             u-boot-bananapi-m2-ultra-bootloader
             u-boot-beaglebone-black-bootloader
+            u-boot-firefly-rk3399-bootloader
             u-boot-mx6cuboxi-bootloader
             u-boot-nintendo-nes-classic-edition-bootloader
             u-boot-novena-bootloader
@@ -92,6 +93,15 @@
         (write-file-on-device u-boot (stat:size (stat u-boot))
                               device (* 512 512)))))
 
+(define install-firefly-rk3399-u-boot
+  #~(lambda (bootloader device mount-point)
+      (let ((idb (string-append bootloader "/libexec/idbloader.img"))
+            (u-boot (string-append bootloader "/libexec/u-boot.itb")))
+        (write-file-on-device idb (stat:size (stat idb))
+                              device (* 64 512))
+        (write-file-on-device u-boot (stat:size (stat u-boot))
+                              device (* 16384 512)))))
+
 (define install-rock64-rk3328-u-boot
   #~(lambda (bootloader device mount-point)
       (let ((idb (string-append bootloader "/libexec/idbloader.img"))
@@ -169,6 +179,13 @@
    (inherit u-boot-allwinner-bootloader)
    (package u-boot-bananapi-m2-ultra)))
 
+(define u-boot-firefly-rk3399-bootloader
+  ;; SD and eMMC use the same format
+  (bootloader
+   (inherit u-boot-bootloader)
+   (package u-boot-firefly-rk3399)
+   (installer install-firefly-rk3399-u-boot)))
+
 (define u-boot-mx6cuboxi-bootloader
   (bootloader
    (inherit u-boot-imx-bootloader)