summary refs log tree commit diff
path: root/gnu/bootloader/u-boot.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/bootloader/u-boot.scm')
-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 54abfe1c69..4f98be2483 100644
--- a/gnu/bootloader/u-boot.scm
+++ b/gnu/bootloader/u-boot.scm
@@ -34,6 +34,7 @@
             u-boot-pine64-plus-bootloader
             u-boot-pinebook-bootloader
             u-boot-puma-rk3399-bootloader
+            u-boot-rockpro64-rk3399-bootloader
             u-boot-wandboard-bootloader))
 
 (define install-u-boot
@@ -90,6 +91,15 @@
         (write-file-on-device u-boot (stat:size (stat u-boot))
                               device (* 512 512)))))
 
+(define install-rockpro64-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)))))
+
 
 
 ;;;
@@ -179,3 +189,10 @@
    (inherit u-boot-bootloader)
    (package u-boot-puma-rk3399)
    (installer install-puma-rk3399-u-boot)))
+
+(define u-boot-rockpro64-rk3399-bootloader
+  ;; SD and eMMC use the same format
+  (bootloader
+   (inherit u-boot-bootloader)
+   (package u-boot-rockpro64-rk3399)
+   (installer install-rockpro64-rk3399-u-boot)))