guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

01/03: system: Add Banana Pi M2 Ultra installer.


From: Danny Milosavljevic
Subject: 01/03: system: Add Banana Pi M2 Ultra installer.
Date: Sat, 20 Jan 2018 14:34:06 -0500 (EST)

dannym pushed a commit to branch master
in repository guix.

commit 30aeb846d7516d534aebeee76be4a920195e8d50
Author: Danny Milosavljevic <address@hidden>
Date:   Fri Jan 19 00:25:13 2018 +0100

    system: Add Banana Pi M2 Ultra installer.
    
    * gnu/bootloader/u-boot.scm (u-boot-banana-pi-m2-ultra-bootloader): New
    exported variable.
    (install-allwinner-u-boot): New variable.
    (u-boot-allwinner-bootloader): New variable.
    * gnu/packages/bootloaders.scm (u-boot-banana-pi-m2-ultra): New exported
    variable.
    * gnu/system/install.scm (banana-pi-m2-ultra-installation-os): New exported
    variable.
---
 gnu/bootloader/u-boot.scm    | 18 ++++++++++++++++++
 gnu/packages/bootloaders.scm |  3 +++
 gnu/system/install.scm       | 17 +++++++++++++++++
 3 files changed, 38 insertions(+)

diff --git a/gnu/bootloader/u-boot.scm b/gnu/bootloader/u-boot.scm
index 397eb81..1e3178a 100644
--- a/gnu/bootloader/u-boot.scm
+++ b/gnu/bootloader/u-boot.scm
@@ -28,6 +28,7 @@
   #:use-module (guix records)
   #:use-module (guix utils)
   #:export (u-boot-bootloader
+            u-boot-banana-pi-m2-ultra-bootloader
             u-boot-beaglebone-black-bootloader))
 
 (define install-u-boot
@@ -50,6 +51,13 @@
         (write-file-on-device u-boot (* 1024 512)
                               device (* 768 512)))))
 
+(define install-allwinner-u-boot
+  #~(lambda (bootloader device mount-point)
+      (let ((u-boot (string-append bootloader
+                                   "/libexec/u-boot-sunxi-with-spl.bin")))
+        (write-file-on-device u-boot (stat:size (stat u-boot))
+                              device (* 8 1024)))))
+
 
 
 ;;;
@@ -68,3 +76,13 @@
    (inherit u-boot-bootloader)
    (package u-boot-beagle-bone-black)
    (installer install-beaglebone-black-u-boot)))
+
+(define u-boot-allwinner-bootloader
+  (bootloader
+   (inherit u-boot-bootloader)
+   (installer install-allwinner-u-boot)))
+
+(define u-boot-banana-pi-m2-ultra-bootloader
+  (bootloader
+   (inherit u-boot-allwinner-bootloader)
+   (package u-boot-banana-pi-m2-ultra)))
diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index 79a3c5f..50e55d7 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -423,6 +423,9 @@ also initializes the boards (RAM etc).")
 (define-public u-boot-odroid-c2
   (make-u-boot-package "odroid-c2" "aarch64-linux-gnu"))
 
+(define-public u-boot-banana-pi-m2-ultra
+  (make-u-boot-package "Bananapi_M2_Ultra" "arm-linux-gnueabihf"))
+
 (define-public vboot-utils
   (package
     (name "vboot-utils")
diff --git a/gnu/system/install.scm b/gnu/system/install.scm
index 1cc3db1..c7bfdb2 100644
--- a/gnu/system/install.scm
+++ b/gnu/system/install.scm
@@ -44,6 +44,7 @@
   #:use-module (ice-9 match)
   #:use-module (srfi srfi-26)
   #:export (installation-os
+            banana-pi-m2-ultra-installation-os
             beaglebone-black-installation-os))
 
 ;;; Commentary:
@@ -399,6 +400,22 @@ You have been warned.  Thanks for being so brave.\x1b[0m
                        (tty "ttyO0"))))
                (operating-system-user-services installation-os)))))
 
+(define banana-pi-m2-ultra-installation-os
+  (operating-system
+    (inherit installation-os)
+    (bootloader (bootloader-configuration
+                 (bootloader u-boot-banana-pi-m2-ultra-bootloader)
+                 (target "/dev/mmcblk1"))) ; eMMC storage
+    (kernel linux-libre)
+    (services (append
+               (list (agetty-service
+                      (agetty-configuration
+                       (extra-options '("-L"))
+                       (baud-rate "115200")
+                       (term "vt100")
+                       (tty "ttyS0"))))
+               (operating-system-user-services installation-os)))))
+
 ;; Return the default os here so 'guix system' can consume it directly.
 installation-os
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]