From unknown Tue Aug 19 23:28:18 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#31416 <31416@debbugs.gnu.org> To: bug#31416 <31416@debbugs.gnu.org> Subject: Status: [PATCH 0/4] Generalize bootloader installer selection. Reply-To: bug#31416 <31416@debbugs.gnu.org> Date: Wed, 20 Aug 2025 06:28:18 +0000 retitle 31416 [PATCH 0/4] Generalize bootloader installer selection. reassign 31416 guix-patches submitter 31416 Danny Milosavljevic severity 31416 normal tag 31416 patch thanks From debbugs-submit-bounces@debbugs.gnu.org Fri May 11 10:35:47 2018 Received: (at submit) by debbugs.gnu.org; 11 May 2018 14:35:47 +0000 Received: from localhost ([127.0.0.1]:58541 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fH997-0006ru-Q7 for submit@debbugs.gnu.org; Fri, 11 May 2018 10:35:47 -0400 Received: from eggs.gnu.org ([208.118.235.92]:39577) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fH996-0006rc-Ua for submit@debbugs.gnu.org; Fri, 11 May 2018 10:35:45 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fH991-0004JB-2a for submit@debbugs.gnu.org; Fri, 11 May 2018 10:35:39 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:47717) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1fH990-0004J7-VC for submit@debbugs.gnu.org; Fri, 11 May 2018 10:35:38 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:58778) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fH98x-0002mE-7H for guix-patches@gnu.org; Fri, 11 May 2018 10:35:38 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fH98u-0004HZ-58 for guix-patches@gnu.org; Fri, 11 May 2018 10:35:35 -0400 Received: from dd26836.kasserver.com ([85.13.145.193]:48248) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1fH98t-0004H0-Ua for guix-patches@gnu.org; Fri, 11 May 2018 10:35:32 -0400 Received: from dayas.3.home (178.113.179.231.wireless.dyn.drei.com [178.113.179.231]) by dd26836.kasserver.com (Postfix) with ESMTPSA id 0D9DB336034F; Fri, 11 May 2018 16:35:27 +0200 (CEST) From: Danny Milosavljevic To: guix-patches@gnu.org Subject: [PATCH 0/4] Generalize bootloader installer selection. Date: Fri, 11 May 2018 16:35:15 +0200 Message-Id: <20180511143515.23435-1-dannym@scratchpost.org> X-Mailer: git-send-email 2.16.2 Tags: patch X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: submit Cc: Danny Milosavljevic X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) Danny Milosavljevic (4): system: Add os-with-u-boot. bootloader: install-u-boot: Automatically select the correct installer. bootloader: Add make-u-boot-bootloader. bootloader: Simplify bootloader installer selection. doc/guix.texi | 21 ++++++++ gnu/bootloader/u-boot.scm | 88 ++++++++----------------------- gnu/packages/bootloaders.scm | 4 +- gnu/system/examples/beaglebone-black.tmpl | 2 +- gnu/system/install.scm | 33 ++++++++---- 5 files changed, 70 insertions(+), 78 deletions(-) From debbugs-submit-bounces@debbugs.gnu.org Fri May 11 10:37:02 2018 Received: (at 31416) by debbugs.gnu.org; 11 May 2018 14:37:02 +0000 Received: from localhost ([127.0.0.1]:58547 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fH9AM-0006uY-Et for submit@debbugs.gnu.org; Fri, 11 May 2018 10:37:02 -0400 Received: from dd26836.kasserver.com ([85.13.145.193]:52802) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fH9AK-0006u1-Ot for 31416@debbugs.gnu.org; Fri, 11 May 2018 10:37:01 -0400 Received: from dayas.3.home (178.113.179.231.wireless.dyn.drei.com [178.113.179.231]) by dd26836.kasserver.com (Postfix) with ESMTPSA id 5494A3360DA7; Fri, 11 May 2018 16:36:59 +0200 (CEST) From: Danny Milosavljevic To: 31416@debbugs.gnu.org Subject: [PATCH 1/4] system: Add os-with-u-boot. Date: Fri, 11 May 2018 16:36:49 +0200 Message-Id: <20180511143652.26935-1-dannym@scratchpost.org> X-Mailer: git-send-email 2.16.2 In-Reply-To: <20180511143515.23435-1-dannym@scratchpost.org> References: <20180511143515.23435-1-dannym@scratchpost.org> Tags: patch X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 31416 Cc: Danny Milosavljevic X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/system/install.scm (os-with-u-boot): New procedure. * gnu/packages/bootloaders.scm (make-u-boot-package): Export. * doc/guix.texi (Building the Installation Image for ARM boards): New subsection. --- doc/guix.texi | 21 +++++++++++++++++++++ gnu/packages/bootloaders.scm | 2 +- gnu/system/install.scm | 16 +++++++++++++++- 3 files changed, 37 insertions(+), 2 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 637c9c3f4..b2b173ded 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -8733,6 +8733,27 @@ Have a look at @file{gnu/system/install.scm} in the source tree, and see also @ref{Invoking guix system} for more information about the installation image. +@subsection Building the Installation Image for ARM boards + +Many ARM boards require a board-specific bootloader in order to boot. + +If you build an entire disk image and the is not still available otherwise +(on another available drive etc), it's advisable to build an image that +includes the bootloader, specifically: + +@example +guix system disk-image --system=armhf-linux -e '((@ (gnu system install) os-with-u-boot) (@ (gnu system install) installation-os) "A20-OLinuXino-Lime2")' +@end example + +Or if you don't cross compile: + +@example +guix system disk-image -e '((@ (gnu system install) os-with-u-boot) (@ (gnu system install) installation-os) "A20-OLinuXino-Lime2")' +@end example + +"A20-OLinuXino-Lime2" is the name of the board. If you specify an invalid +board, you get a list. + @node System Configuration @section System Configuration diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm index c0a0101c5..526e53384 100644 --- a/gnu/packages/bootloaders.scm +++ b/gnu/packages/bootloaders.scm @@ -359,7 +359,7 @@ tree binary files. These are board description files used by Linux and BSD.") also initializes the boards (RAM etc).") (license license:gpl2+))) -(define (make-u-boot-package board triplet) +(define-public (make-u-boot-package board triplet) "Returns a u-boot package for BOARD cross-compiled for TRIPLET." (let ((same-arch? (if (string-prefix? (%current-system) (gnu-triplet->nix-system triplet)) diff --git a/gnu/system/install.scm b/gnu/system/install.scm index a2917e485..b563e8b5b 100644 --- a/gnu/system/install.scm +++ b/gnu/system/install.scm @@ -52,7 +52,8 @@ mx6cuboxi-installation-os nintendo-nes-classic-edition-installation-os novena-installation-os - wandboard-installation-os)) + wandboard-installation-os + os-with-u-boot)) ;;; Commentary: ;;; @@ -386,6 +387,19 @@ You have been warned. Thanks for being so brave.\x1b[0m nvi ;:wq! %base-packages)))) +(define* (os-with-u-boot os board #:key (bootloader-target "/dev/mmcblk0") + (triplet "arm-linux-gnueabihf")) + "Given OS, amend it with the u-boot bootloader for BOARD, +installed to BOOTLOADER-TARGET (a drive), compiled for TRIPLET. + +If you want a serial console, make sure to specify one in your +operating-system's kernel-arguments (\"console=ttyS0\" or similar)." + (operating-system (inherit os) + (bootloader (bootloader-configuration + (bootloader (bootloader (inherit u-boot-bootloader) + (package (make-u-boot-package board triplet)))) + (target bootloader-target))))) + (define* (embedded-installation-os bootloader bootloader-target tty #:key (extra-modules '())) "Return an installation os for embedded systems. From debbugs-submit-bounces@debbugs.gnu.org Fri May 11 10:37:04 2018 Received: (at 31416) by debbugs.gnu.org; 11 May 2018 14:37:04 +0000 Received: from localhost ([127.0.0.1]:58550 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fH9AN-0006un-Nb for submit@debbugs.gnu.org; Fri, 11 May 2018 10:37:03 -0400 Received: from dd26836.kasserver.com ([85.13.145.193]:52810) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fH9AL-0006u3-Es for 31416@debbugs.gnu.org; Fri, 11 May 2018 10:37:01 -0400 Received: from dayas.3.home (178.113.179.231.wireless.dyn.drei.com [178.113.179.231]) by dd26836.kasserver.com (Postfix) with ESMTPSA id 7DDC43361628; Fri, 11 May 2018 16:37:00 +0200 (CEST) From: Danny Milosavljevic To: 31416@debbugs.gnu.org Subject: [PATCH 2/4] bootloader: install-u-boot: Automatically select the correct installer. Date: Fri, 11 May 2018 16:36:50 +0200 Message-Id: <20180511143652.26935-2-dannym@scratchpost.org> X-Mailer: git-send-email 2.16.2 In-Reply-To: <20180511143652.26935-1-dannym@scratchpost.org> References: <20180511143515.23435-1-dannym@scratchpost.org> <20180511143652.26935-1-dannym@scratchpost.org> Tags: patch X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 31416 Cc: Danny Milosavljevic X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/bootloader/u-boot.scm (install-u-boot): Automatically select the correct installer. --- gnu/bootloader/u-boot.scm | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/gnu/bootloader/u-boot.scm b/gnu/bootloader/u-boot.scm index bc8f98f32..e0941c961 100644 --- a/gnu/bootloader/u-boot.scm +++ b/gnu/bootloader/u-boot.scm @@ -41,7 +41,24 @@ (define install-u-boot #~(lambda (bootloader device mount-point) (if bootloader - (error "Failed to install U-Boot")))) + (let* ((config-file-name (string-append bootloader "/libexec/.config")) + (soc (call-with-input-file config-file-name + (let loop ((line (read-line port))) + (if (not (eof-object? line)) + (let ((match + (string-match + "^CONFIG_SYS_SOC=\"([^\"]*)\"" + line))) + (if match + (match:substring match 1) + (loop (read-line port)))) + #f))))) + (match soc + ("am33xx" (install-beaglebone-black-u-boot bootloader device mount-point)) + ("mx6" (install-imx-u-boot bootloader device mount-point)) + ("sunxi" (install-allwinner-u-boot bootloader device mount-point)) + (_ (error "Failed to install U-Boot (no installation method found)" + soc))))))) (define install-beaglebone-black-u-boot ;; http://wiki.beyondlogic.org/index.php?title=BeagleBoneBlack_Upgrading_uBoot From debbugs-submit-bounces@debbugs.gnu.org Fri May 11 10:37:06 2018 Received: (at 31416) by debbugs.gnu.org; 11 May 2018 14:37:06 +0000 Received: from localhost ([127.0.0.1]:58553 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fH9AQ-0006v1-1G for submit@debbugs.gnu.org; Fri, 11 May 2018 10:37:06 -0400 Received: from dd26836.kasserver.com ([85.13.145.193]:52818) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fH9AM-0006uW-HW for 31416@debbugs.gnu.org; Fri, 11 May 2018 10:37:02 -0400 Received: from dayas.3.home (178.113.179.231.wireless.dyn.drei.com [178.113.179.231]) by dd26836.kasserver.com (Postfix) with ESMTPSA id 76E293360DA7; Fri, 11 May 2018 16:37:01 +0200 (CEST) From: Danny Milosavljevic To: 31416@debbugs.gnu.org Subject: [PATCH 3/4] bootloader: Add make-u-boot-bootloader. Date: Fri, 11 May 2018 16:36:51 +0200 Message-Id: <20180511143652.26935-3-dannym@scratchpost.org> X-Mailer: git-send-email 2.16.2 In-Reply-To: <20180511143652.26935-1-dannym@scratchpost.org> References: <20180511143515.23435-1-dannym@scratchpost.org> <20180511143652.26935-1-dannym@scratchpost.org> Tags: patch X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 31416 Cc: Danny Milosavljevic X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/bootloader/u-boot.scm (make-u-boot-bootloader): New procedure. (u-boot-allwinner-bootloader): Delete variable. (u-boot-imx-bootloader): Delete variable. (u-boot-beaglebone-black-bootloader): Modify. (u-boot-nintendo-nes-classic-edition-bootloader): Modify. (u-boot-a20-olinuxino-lime-bootloader): Modify. (u-boot-a20-olinuxino-lime2-bootloader): Modify. (u-boot-a20-olinuxino-micro-bootloader): Modify. (u-boot-banana-pi-m2-ultra-bootloader): Modify. (u-boot-mx6cuboxi-bootloader): Modify. (u-boot-wandboard-bootloader): Modify. (u-boot-novena-bootloader): Modify. --- gnu/bootloader/u-boot.scm | 54 ++++++++++++++--------------------------------- 1 file changed, 16 insertions(+), 38 deletions(-) diff --git a/gnu/bootloader/u-boot.scm b/gnu/bootloader/u-boot.scm index e0941c961..feda17f99 100644 --- a/gnu/bootloader/u-boot.scm +++ b/gnu/bootloader/u-boot.scm @@ -36,7 +36,8 @@ u-boot-mx6cuboxi-bootloader u-boot-nintendo-nes-classic-edition-bootloader u-boot-novena-bootloader - u-boot-wandboard-bootloader)) + u-boot-wandboard-bootloader + make-u-boot-bootloader)) (define install-u-boot #~(lambda (bootloader device mount-point) @@ -104,58 +105,35 @@ (package #f) (installer install-u-boot))) -(define u-boot-beaglebone-black-bootloader - (bootloader - (inherit u-boot-bootloader) - (package u-boot-beagle-bone-black) - (installer install-beaglebone-black-u-boot))) - -(define u-boot-allwinner-bootloader +(define (make-u-boot-bootloader bootloader-package) + "Given BOOTLOADER-PACKAGE, make a bootloader that can install." (bootloader - (inherit u-boot-bootloader) - (installer install-allwinner-u-boot))) + (inherit u-boot-bootloader) + (package bootloader-package))) -(define u-boot-imx-bootloader - (bootloader - (inherit u-boot-bootloader) - (installer install-imx-u-boot))) +(define u-boot-beaglebone-black-bootloader + (make-u-boot-bootloader u-boot-beagle-bone-black)) (define u-boot-nintendo-nes-classic-edition-bootloader - (bootloader - (inherit u-boot-allwinner-bootloader) - (package u-boot-nintendo-nes-classic-edition))) + (make-u-boot-bootloader u-boot-nintendo-nes-classic-edition)) (define u-boot-a20-olinuxino-lime-bootloader - (bootloader - (inherit u-boot-allwinner-bootloader) - (package u-boot-a20-olinuxino-lime))) + (make-u-boot-bootloader u-boot-a20-olinuxino-lime)) (define u-boot-a20-olinuxino-lime2-bootloader - (bootloader - (inherit u-boot-allwinner-bootloader) - (package u-boot-a20-olinuxino-lime2))) + (make-u-boot-bootloader u-boot-a20-olinuxino-lime2)) (define u-boot-a20-olinuxino-micro-bootloader - (bootloader - (inherit u-boot-allwinner-bootloader) - (package u-boot-a20-olinuxino-micro))) + (make-u-boot-bootloader u-boot-a20-olinuxino-micro)) (define u-boot-banana-pi-m2-ultra-bootloader - (bootloader - (inherit u-boot-allwinner-bootloader) - (package u-boot-banana-pi-m2-ultra))) + (make-u-boot-bootloader u-boot-banana-pi-m2-ultra)) (define u-boot-mx6cuboxi-bootloader - (bootloader - (inherit u-boot-imx-bootloader) - (package u-boot-mx6cuboxi))) + (make-u-boot-bootloader u-boot-mx6cuboxi)) (define u-boot-wandboard-bootloader - (bootloader - (inherit u-boot-imx-bootloader) - (package u-boot-wandboard))) + (make-u-boot-bootloader u-boot-wandboard)) (define u-boot-novena-bootloader - (bootloader - (inherit u-boot-imx-bootloader) - (package u-boot-novena))) + (make-u-boot-bootloader u-boot-novena)) From debbugs-submit-bounces@debbugs.gnu.org Fri May 11 10:37:06 2018 Received: (at 31416) by debbugs.gnu.org; 11 May 2018 14:37:06 +0000 Received: from localhost ([127.0.0.1]:58555 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fH9AQ-0006v3-EE for submit@debbugs.gnu.org; Fri, 11 May 2018 10:37:06 -0400 Received: from dd26836.kasserver.com ([85.13.145.193]:52840) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fH9AN-0006uk-LZ for 31416@debbugs.gnu.org; Fri, 11 May 2018 10:37:04 -0400 Received: from dayas.3.home (178.113.179.231.wireless.dyn.drei.com [178.113.179.231]) by dd26836.kasserver.com (Postfix) with ESMTPSA id 96F0F336596E; Fri, 11 May 2018 16:37:02 +0200 (CEST) From: Danny Milosavljevic To: 31416@debbugs.gnu.org Subject: [PATCH 4/4] bootloader: Simplify bootloader installer selection. Date: Fri, 11 May 2018 16:36:52 +0200 Message-Id: <20180511143652.26935-4-dannym@scratchpost.org> X-Mailer: git-send-email 2.16.2 In-Reply-To: <20180511143652.26935-1-dannym@scratchpost.org> References: <20180511143515.23435-1-dannym@scratchpost.org> <20180511143652.26935-1-dannym@scratchpost.org> Tags: patch X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 31416 Cc: Danny Milosavljevic X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/bootloader/u-boot.scm (u-boot-bootloader): Delete variable. (u-boot-a20-olinuxino-lime-bootloader): Delete variable. (u-boot-a20-olinuxino-lime2-bootloader): Delete variable. (u-boot-a20-olinuxino-micro-bootloader): Delete variable. (u-boot-banana-pi-m2-ultra-bootloader): Delete variable. (u-boot-beaglebone-black-bootloader): Delete variable. (u-boot-mx6cuboxi-bootloader): Delete variable. (u-boot-nintendo-nes-classic-edition-bootloader): Delete variable. (u-boot-novena-bootloader): Delete variable. (u-boot-wandboard-bootloader): Delete variable. * gnu/packages/bootloader.scm (u-boot-beagle-bone-black): Rename to... (u-boot-beaglebone-black): ...this. * gnu/system/examples/beaglebone-black.tmpl: Use make-u-boot-bootloader. * gnu/system/install.scm (os-with-u-boot): Use make-u-boot-bootloader. (beaglebone-black-installation-os): Use make-u-boot-bootloader. (a20-olinuxino-lime-installation-os): Use make-u-boot-bootloader. (a20-olinuxino-lime2-emmc-installation-os): Use make-u-boot-bootloader. (a20-olinuxino-micro-installation-os): Use make-u-boot-bootloader. (banana-pi-m2-ultra-installation-os): Use make-u-boot-bootloader. (mx6cuboxi-installation-os): Use make-u-boot-bootloader. (novena-installation-os): Use make-u-boot-bootloader. (nintendo-nes-classic-edition-installation-os): Use make-u-boot-bootloader. (wandboard-installation-os): Use make-u-boot-bootloader. --- gnu/bootloader/u-boot.scm | 39 +------------------------------ gnu/packages/bootloaders.scm | 2 +- gnu/system/examples/beaglebone-black.tmpl | 2 +- gnu/system/install.scm | 21 ++++++++--------- 4 files changed, 13 insertions(+), 51 deletions(-) diff --git a/gnu/bootloader/u-boot.scm b/gnu/bootloader/u-boot.scm index feda17f99..f804997a4 100644 --- a/gnu/bootloader/u-boot.scm +++ b/gnu/bootloader/u-boot.scm @@ -27,17 +27,7 @@ #:use-module (guix monads) #:use-module (guix records) #:use-module (guix utils) - #:export (u-boot-bootloader - u-boot-a20-olinuxino-lime-bootloader - u-boot-a20-olinuxino-lime2-bootloader - u-boot-a20-olinuxino-micro-bootloader - u-boot-banana-pi-m2-ultra-bootloader - u-boot-beaglebone-black-bootloader - u-boot-mx6cuboxi-bootloader - u-boot-nintendo-nes-classic-edition-bootloader - u-boot-novena-bootloader - u-boot-wandboard-bootloader - make-u-boot-bootloader)) + #:export (make-u-boot-bootloader)) (define install-u-boot #~(lambda (bootloader device mount-point) @@ -110,30 +100,3 @@ (bootloader (inherit u-boot-bootloader) (package bootloader-package))) - -(define u-boot-beaglebone-black-bootloader - (make-u-boot-bootloader u-boot-beagle-bone-black)) - -(define u-boot-nintendo-nes-classic-edition-bootloader - (make-u-boot-bootloader u-boot-nintendo-nes-classic-edition)) - -(define u-boot-a20-olinuxino-lime-bootloader - (make-u-boot-bootloader u-boot-a20-olinuxino-lime)) - -(define u-boot-a20-olinuxino-lime2-bootloader - (make-u-boot-bootloader u-boot-a20-olinuxino-lime2)) - -(define u-boot-a20-olinuxino-micro-bootloader - (make-u-boot-bootloader u-boot-a20-olinuxino-micro)) - -(define u-boot-banana-pi-m2-ultra-bootloader - (make-u-boot-bootloader u-boot-banana-pi-m2-ultra)) - -(define u-boot-mx6cuboxi-bootloader - (make-u-boot-bootloader u-boot-mx6cuboxi)) - -(define u-boot-wandboard-bootloader - (make-u-boot-bootloader u-boot-wandboard)) - -(define u-boot-novena-bootloader - (make-u-boot-bootloader u-boot-novena)) diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm index 526e53384..759abdc92 100644 --- a/gnu/packages/bootloaders.scm +++ b/gnu/packages/bootloaders.scm @@ -424,7 +424,7 @@ also initializes the boards (RAM etc).") (define-public u-boot-malta (make-u-boot-package "malta" "mips64el-linux-gnuabi64")) -(define-public u-boot-beagle-bone-black +(define-public u-boot-beaglebone-black (make-u-boot-package "am335x_boneblack" "arm-linux-gnueabihf")) (define-public u-boot-pine64-plus diff --git a/gnu/system/examples/beaglebone-black.tmpl b/gnu/system/examples/beaglebone-black.tmpl index 97201330c..1fd03dab9 100644 --- a/gnu/system/examples/beaglebone-black.tmpl +++ b/gnu/system/examples/beaglebone-black.tmpl @@ -13,7 +13,7 @@ ;; Assuming /dev/mmcblk1 is the eMMC, and "my-root" is ;; the label of the target root file system. (bootloader (bootloader-configuration - (bootloader u-boot-beaglebone-black-bootloader) + (bootloader (make-u-boot-bootloader u-boot-beaglebone-black)) (target "/dev/mmcblk1"))) ;; This module is required to mount the SD card. diff --git a/gnu/system/install.scm b/gnu/system/install.scm index b563e8b5b..7508f95a8 100644 --- a/gnu/system/install.scm +++ b/gnu/system/install.scm @@ -396,8 +396,7 @@ If you want a serial console, make sure to specify one in your operating-system's kernel-arguments (\"console=ttyS0\" or similar)." (operating-system (inherit os) (bootloader (bootloader-configuration - (bootloader (bootloader (inherit u-boot-bootloader) - (package (make-u-boot-package board triplet)))) + (bootloader (make-u-boot-bootloader (make-u-boot-package board triplet))) (target bootloader-target))))) (define* (embedded-installation-os bootloader bootloader-target tty @@ -418,7 +417,7 @@ The bootloader BOOTLOADER is installed to BOOTLOADER-TARGET." (initrd-modules (append extra-modules %base-initrd-modules)))) (define beaglebone-black-installation-os - (embedded-installation-os u-boot-beaglebone-black-bootloader + (embedded-installation-os (make-u-boot-bootloader u-boot-beaglebone-black) "/dev/sda" "ttyO0" #:extra-modules @@ -427,42 +426,42 @@ The bootloader BOOTLOADER is installed to BOOTLOADER-TARGET." (define a20-olinuxino-lime-installation-os - (embedded-installation-os u-boot-a20-olinuxino-lime-bootloader + (embedded-installation-os (make-u-boot-bootloader u-boot-a20-olinuxino-lime) "/dev/mmcblk0" ; SD card storage "ttyS0")) (define a20-olinuxino-lime2-emmc-installation-os - (embedded-installation-os u-boot-a20-olinuxino-lime2-bootloader + (embedded-installation-os (make-u-boot-bootloader u-boot-a20-olinuxino-lime2) "/dev/mmcblk1" ; eMMC storage "ttyS0")) (define a20-olinuxino-micro-installation-os - (embedded-installation-os u-boot-a20-olinuxino-micro-bootloader + (embedded-installation-os (make-u-boot-bootloader u-boot-a20-olinuxino-micro) "/dev/mmcblk0" ; SD card storage "ttyS0")) (define banana-pi-m2-ultra-installation-os - (embedded-installation-os u-boot-banana-pi-m2-ultra-bootloader + (embedded-installation-os (make-u-boot-bootloader u-boot-banana-pi-m2-ultra) "/dev/mmcblk1" ; eMMC storage "ttyS0")) (define mx6cuboxi-installation-os - (embedded-installation-os u-boot-mx6cuboxi-bootloader + (embedded-installation-os (make-u-boot-bootloader u-boot-mx6cuboxi) "/dev/mmcblk0" ; SD card storage "ttymxc0")) (define novena-installation-os - (embedded-installation-os u-boot-novena-bootloader + (embedded-installation-os (make-u-boot-bootloader u-boot-novena) "/dev/mmcblk1" ; SD card storage "ttymxc1")) (define nintendo-nes-classic-edition-installation-os - (embedded-installation-os u-boot-nintendo-nes-classic-edition-bootloader + (embedded-installation-os (make-u-boot-bootloader u-boot-nintendo-nes-classic-edition) "/dev/mmcblk0" ; SD card (solder it yourself) "ttyS0")) (define wandboard-installation-os - (embedded-installation-os u-boot-wandboard-bootloader + (embedded-installation-os (make-u-boot-bootloader u-boot-wandboard) "/dev/mmcblk0" ; SD card storage "ttymxc0")) From debbugs-submit-bounces@debbugs.gnu.org Sun May 13 05:24:41 2018 Received: (at 31416) by debbugs.gnu.org; 13 May 2018 09:24:41 +0000 Received: from localhost ([127.0.0.1]:60167 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fHnFB-0003jP-Gv for submit@debbugs.gnu.org; Sun, 13 May 2018 05:24:41 -0400 Received: from eggs.gnu.org ([208.118.235.92]:44673) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fHnF9-0003jC-Tn for 31416@debbugs.gnu.org; Sun, 13 May 2018 05:24:40 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fHnF3-0000co-Ha for 31416@debbugs.gnu.org; Sun, 13 May 2018 05:24:34 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:42431) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fHnF3-0000ck-DF; Sun, 13 May 2018 05:24:33 -0400 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=40796 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1fHnF2-0006Bs-Qa; Sun, 13 May 2018 05:24:33 -0400 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Danny Milosavljevic Subject: Re: [bug#31416] [PATCH 1/4] system: Add os-with-u-boot. References: <20180511143515.23435-1-dannym@scratchpost.org> <20180511143652.26935-1-dannym@scratchpost.org> Date: Sun, 13 May 2018 11:24:30 +0200 In-Reply-To: <20180511143652.26935-1-dannym@scratchpost.org> (Danny Milosavljevic's message of "Fri, 11 May 2018 16:36:49 +0200") Message-ID: <87in7rnc1d.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: 31416 Cc: 31416@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) Hello! Great that you=E2=80=99re streamlining GuixSD on ARM! Danny Milosavljevic skribis: > * gnu/system/install.scm (os-with-u-boot): New procedure. > * gnu/packages/bootloaders.scm (make-u-boot-package): Export. > * doc/guix.texi (Building the Installation Image for ARM boards): New > subsection. [...] > +@subsection Building the Installation Image for ARM boards =E2=80=9CBoards=E2=80=9D > +Many ARM boards require a board-specific bootloader in order to boot. Maybe: =E2=80=9Crequire a specific variant of the @uref{http://www.denx.de/wiki/U-Boot/, U-Boot} bootloader.=E2=80=9D > +If you build an entire disk image and the is not still available otherwi= se > +(on another available drive etc), it's advisable to build an image that > +includes the bootloader, specifically: > + > +@example > +guix system disk-image --system=3Darmhf-linux -e '((@ (gnu system instal= l) os-with-u-boot) (@ (gnu system install) installation-os) "A20-OLinuXino-= Lime2")' > +@end example Note: In Texinfo you need to double all the at signs. > +Or if you don't cross compile: It=E2=80=99s not cross-compilation. :-) But I don=E2=80=99t think you need to repeat the command line. > +"A20-OLinuXino-Lime2" is the name of the board. If you specify an inval= id ^ @code > +board, you get a list. I think the patch is otherwise OK. Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Sun May 13 05:31:34 2018 Received: (at 31416) by debbugs.gnu.org; 13 May 2018 09:31:34 +0000 Received: from localhost ([127.0.0.1]:60172 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fHnLq-0003u6-AS for submit@debbugs.gnu.org; Sun, 13 May 2018 05:31:34 -0400 Received: from eggs.gnu.org ([208.118.235.92]:45454) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fHnLo-0003tu-OJ for 31416@debbugs.gnu.org; Sun, 13 May 2018 05:31:33 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fHnLi-0003lh-NM for 31416@debbugs.gnu.org; Sun, 13 May 2018 05:31:27 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:42486) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fHnLi-0003lb-Ix; Sun, 13 May 2018 05:31:26 -0400 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=41206 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1fHnLi-0007Ns-4v; Sun, 13 May 2018 05:31:26 -0400 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Danny Milosavljevic Subject: Re: [bug#31416] [PATCH 2/4] bootloader: install-u-boot: Automatically select the correct installer. References: <20180511143515.23435-1-dannym@scratchpost.org> <20180511143652.26935-1-dannym@scratchpost.org> <20180511143652.26935-2-dannym@scratchpost.org> Date: Sun, 13 May 2018 11:31:23 +0200 In-Reply-To: <20180511143652.26935-2-dannym@scratchpost.org> (Danny Milosavljevic's message of "Fri, 11 May 2018 16:36:50 +0200") Message-ID: <87d0xznbpw.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: 31416 Cc: 31416@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) Danny Milosavljevic skribis: > * gnu/bootloader/u-boot.scm (install-u-boot): Automatically select the co= rrect > installer. > --- > gnu/bootloader/u-boot.scm | 19 ++++++++++++++++++- > 1 file changed, 18 insertions(+), 1 deletion(-) > > diff --git a/gnu/bootloader/u-boot.scm b/gnu/bootloader/u-boot.scm > index bc8f98f32..e0941c961 100644 > --- a/gnu/bootloader/u-boot.scm > +++ b/gnu/bootloader/u-boot.scm > @@ -41,7 +41,24 @@ > (define install-u-boot > #~(lambda (bootloader device mount-point) > (if bootloader > - (error "Failed to install U-Boot")))) > + (let* ((config-file-name (string-append bootloader "/libexec/.co= nfig")) > + (soc (call-with-input-file config-file-name > + (let loop ((line (read-line po= rt))) > + (if (not (eof-object? line)) > + (let ((match > + (string-match > + "^CONFIG_SYS_SOC= =3D\"([^\"]*)\"" > + line))) > + (if match > + (match:substring m= atch 1) > + (loop (read-line p= ort)))) > + #f))))) > + (match soc > + ("am33xx" (install-beaglebone-black-u-boot bootloader device = mount-point)) > + ("mx6" (install-imx-u-boot bootloader device mount-point)) > + ("sunxi" (install-allwinner-u-boot bootloader device mount-po= int)) > + (_ (error "Failed to install U-Boot (no installation method f= ound)" > + soc))))))) Hmm =E2=80=98install-beaglebone-black-u-boot=E2=80=99 & co are not in the s= ame stage AFAICS; are you missing #$ escapes here? Also we=E2=80=99re probably missing (ice-9 rdelim) and (ice-9 regex) as in = the build stage. Last, isn=E2=80=99t it a bit hacky? :-) Previously every wou= ld contain its installation method, so this was unambiguous, but now we=E2=80= =99re back to guessing what installation method to use. Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Sun May 13 05:36:14 2018 Received: (at 31416) by debbugs.gnu.org; 13 May 2018 09:36:14 +0000 Received: from localhost ([127.0.0.1]:60177 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fHnQK-00040d-Tq for submit@debbugs.gnu.org; Sun, 13 May 2018 05:36:14 -0400 Received: from eggs.gnu.org ([208.118.235.92]:46179) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fHnQJ-00040M-Ld for 31416@debbugs.gnu.org; Sun, 13 May 2018 05:36:11 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fHnQD-0005YN-Qg for 31416@debbugs.gnu.org; Sun, 13 May 2018 05:36:06 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:42524) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fHnQD-0005YJ-N6; Sun, 13 May 2018 05:36:05 -0400 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=41358 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1fHnQC-0004WJ-ON; Sun, 13 May 2018 05:36:05 -0400 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Danny Milosavljevic Subject: Re: [bug#31416] [PATCH 3/4] bootloader: Add make-u-boot-bootloader. References: <20180511143515.23435-1-dannym@scratchpost.org> <20180511143652.26935-1-dannym@scratchpost.org> <20180511143652.26935-3-dannym@scratchpost.org> Date: Sun, 13 May 2018 11:36:02 +0200 In-Reply-To: <20180511143652.26935-3-dannym@scratchpost.org> (Danny Milosavljevic's message of "Fri, 11 May 2018 16:36:51 +0200") Message-ID: <87603rnbi5.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: 31416 Cc: 31416@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) Danny Milosavljevic skribis: > +(define (make-u-boot-bootloader bootloader-package) > + "Given BOOTLOADER-PACKAGE, make a bootloader that can install." > (bootloader > - (inherit u-boot-bootloader) > - (installer install-allwinner-u-boot))) > + (inherit u-boot-bootloader) > + (package bootloader-package))) What about making it entirely dynamic similar to the =E2=80=98cross-gcc=E2= =80=99 procedure? Like: (define (u-boot-bootloader board) (bootloader (installer (board-installer board)) (package (make-u-boot-package (board-name board) (board-triplet board))))) where: (define-record-type (board name triplet installer) =E2=80=A6) Thoughts? Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Sun May 13 06:44:00 2018 Received: (at 31416) by debbugs.gnu.org; 13 May 2018 10:44:00 +0000 Received: from localhost ([127.0.0.1]:60234 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fHoTw-00018D-IP for submit@debbugs.gnu.org; Sun, 13 May 2018 06:44:00 -0400 Received: from dd26836.kasserver.com ([85.13.145.193]:34672) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fHoTu-000184-V3 for 31416@debbugs.gnu.org; Sun, 13 May 2018 06:43:59 -0400 Received: from localhost (178.113.246.214.wireless.dyn.drei.com [178.113.246.214]) by dd26836.kasserver.com (Postfix) with ESMTPSA id 12A583360E18; Sun, 13 May 2018 12:43:56 +0200 (CEST) Date: Sun, 13 May 2018 12:43:50 +0200 From: Danny Milosavljevic To: ludo@gnu.org (Ludovic =?ISO-8859-1?Q?Court=E8s?=) Subject: Re: [bug#31416] [PATCH 2/4] bootloader: install-u-boot: Automatically select the correct installer. Message-ID: <20180513124350.0053f8e2@scratchpost.org> In-Reply-To: <87d0xznbpw.fsf@gnu.org> References: <20180511143515.23435-1-dannym@scratchpost.org> <20180511143652.26935-1-dannym@scratchpost.org> <20180511143652.26935-2-dannym@scratchpost.org> <87d0xznbpw.fsf@gnu.org> X-Mailer: Claws Mail 3.16.0 (GTK+ 2.24.31; x86_64-unknown-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; boundary="Sig_/0wph_3xynCvhJkvUzxbL4Rs"; protocol="application/pgp-signature" X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 31416 Cc: 31416@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) --Sig_/0wph_3xynCvhJkvUzxbL4Rs Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hi Ludo, On Sun, 13 May 2018 11:31:23 +0200 ludo@gnu.org (Ludovic Court=C3=A8s) wrote: > Last, isn=E2=80=99t it a bit hacky? :-) Previously every w= ould > contain its installation method, so this was unambiguous, but now we=E2= =80=99re > back to guessing what installation method to use. Yeah, it's a bit hacky. But I don't like the weird spreading-out of bootloader installers as opposed to bootloader packages either. It would be nicest if upstream just included installation scripts :P How the board will boot depends *only* on the Sytem-On-a-Chip in use - for example all the Allwinner sunxi chips boot the same way. Usually it's just what the vendor decided to use years (decades) ago and it stays the same over many many chip generations. --Sig_/0wph_3xynCvhJkvUzxbL4Rs Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEds7GsXJ0tGXALbPZ5xo1VCwwuqUFAlr4FuYACgkQ5xo1VCww uqUGUQf/bFOdIC+30tEFxJz6r4OMMHcVu1MLldiJ4IC5jrMVCzy4NG6OUpvlKVC3 X4CXpEbQZ/53oj4Slnubl6ByyPf/YsAFjp1o2UjTVuG7z3qKrkrroY7lNBRQwmoj K2O3rRZZi0tO5SAFR3ahOtjlRKny9G77887RLZqen+ywU/zijEexKRCSGYPtYP/M lZS5/TDeGldPcDOZ2UF7s0pIexdzk1abTCnW6Iec4zuJTlL+h+CBPeU2A9ysKTP9 kaV8apIjy3FOPHjutqW8XDR54SfQQ3u9c2ddVBrDueoaFMZCZWMBEyBOxXbbfcxi KKLD08EfqC7k0xWWWd/eKqKmGXwfKw== =tkCo -----END PGP SIGNATURE----- --Sig_/0wph_3xynCvhJkvUzxbL4Rs-- From debbugs-submit-bounces@debbugs.gnu.org Sun May 13 07:03:52 2018 Received: (at 31416) by debbugs.gnu.org; 13 May 2018 11:03:52 +0000 Received: from localhost ([127.0.0.1]:60249 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fHon9-0001dc-Vh for submit@debbugs.gnu.org; Sun, 13 May 2018 07:03:52 -0400 Received: from dd26836.kasserver.com ([85.13.145.193]:36052) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fHon7-0001dT-Nt for 31416@debbugs.gnu.org; Sun, 13 May 2018 07:03:50 -0400 Received: from localhost (178.113.247.28.wireless.dyn.drei.com [178.113.247.28]) by dd26836.kasserver.com (Postfix) with ESMTPSA id BD3CA3360E18; Sun, 13 May 2018 13:03:48 +0200 (CEST) Date: Sun, 13 May 2018 13:03:43 +0200 From: Danny Milosavljevic To: ludo@gnu.org (Ludovic =?ISO-8859-1?Q?Court=E8s?=) Subject: Re: [bug#31416] [PATCH 3/4] bootloader: Add make-u-boot-bootloader. Message-ID: <20180513125925.66a91367@scratchpost.org> In-Reply-To: <87603rnbi5.fsf@gnu.org> References: <20180511143515.23435-1-dannym@scratchpost.org> <20180511143652.26935-1-dannym@scratchpost.org> <20180511143652.26935-3-dannym@scratchpost.org> <87603rnbi5.fsf@gnu.org> X-Mailer: Claws Mail 3.16.0 (GTK+ 2.24.31; x86_64-unknown-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; boundary="Sig_/X0O.OCNyBNFz+hRHD=I5i2w"; protocol="application/pgp-signature" X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 31416 Cc: 31416@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) --Sig_/X0O.OCNyBNFz+hRHD=I5i2w Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hi Ludo, > (define-record-type > (board name triplet installer) > =E2=80=A6) >=20 > Thoughts? The idea of make-u-boot-bootloader (and os-with-u-boot) was that it would f= ree us from having to play whack-a-mole regarding u-boot (except for the installation methods of which there are much fewer than boards or chip mode= ls) and also free the user from having to know anything but the board name. With your idea it would mean that we'd have to carry a huge list of = s, defining the board and architecture and installer, right? (or I guess the user would have to create it on-the-fly) That's exactly what I was trying to avoid :) I know my method isn't perfect either - I should have said "WIP" - but the = idea is that the user would just use os-with-u-boot and specify his board name -= and the rest is magically being worked out (for all boards in u-boot). I'm trying to keep to information that is available within u-boot (like .co= nfig) so we don't have to maintain the stuff ourselves. The installer was suppos= ed to read out the u-boot parts and infer the correct incantations to use by i= tself. To infer the triplet, we can search for "CONFIG_ARM64=3Dy". The SOC should be fine to infer as in this patch. No chance inferring the actual installation commands, though. Too bad... They've got all kinds of funny config entries like CONFIG_SPL_FIT_GENERATOR=3D"board/sunxi/mksunxi_fit_atf.sh" but I don't see the installation commands / info... hrmmmm... --Sig_/X0O.OCNyBNFz+hRHD=I5i2w Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEds7GsXJ0tGXALbPZ5xo1VCwwuqUFAlr4G48ACgkQ5xo1VCww uqUgMwf/V4cYk1sanQH+JdOeSBWxm9wmmIfBrE+yL9Tzf7LUHFeT+XvfAfz8caGr q/Zihs7SsYiCuaxqoJ/p8oYzBbuygi4NfXBcvhSj3ebBcZ/iKLxcW0mGjJvG6zyp aGdAEqq163LZlo09EMh80tonKw5lRuGo0W8k7guEeOqi4wf6kaljIPMsQwF9UqIy /HH+virEd7L4TSmAcN0rAZyehPzjfdhqiDLXCIBFgsTFyEkidUk1gE24GtHj6ZjL 12Oq5hcpZb7JIoArYgk9Ju4KRUibROhMUNg5+qtmgbqw8kkjjEQq/KGKDcRsDbLh GTZX0HQWWnBQeHxqTbDavJkA2C2Rsg== =nkRx -----END PGP SIGNATURE----- --Sig_/X0O.OCNyBNFz+hRHD=I5i2w-- From debbugs-submit-bounces@debbugs.gnu.org Sun May 13 07:15:21 2018 Received: (at 31416) by debbugs.gnu.org; 13 May 2018 11:15:21 +0000 Received: from localhost ([127.0.0.1]:60254 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fHoyG-0001tC-WC for submit@debbugs.gnu.org; Sun, 13 May 2018 07:15:21 -0400 Received: from dd26836.kasserver.com ([85.13.145.193]:36880) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fHoyE-0001t4-Vr for 31416@debbugs.gnu.org; Sun, 13 May 2018 07:15:19 -0400 Received: from localhost (178.113.247.28.wireless.dyn.drei.com [178.113.247.28]) by dd26836.kasserver.com (Postfix) with ESMTPSA id A1A653360E18; Sun, 13 May 2018 13:15:17 +0200 (CEST) Date: Sun, 13 May 2018 13:15:10 +0200 From: Danny Milosavljevic To: ludo@gnu.org (Ludovic =?ISO-8859-1?Q?Court=E8s?=) Subject: Re: [bug#31416] [PATCH 3/4] bootloader: Add make-u-boot-bootloader. Message-ID: <20180513131510.4a88c298@scratchpost.org> In-Reply-To: <20180513125925.66a91367@scratchpost.org> References: <20180511143515.23435-1-dannym@scratchpost.org> <20180511143652.26935-1-dannym@scratchpost.org> <20180511143652.26935-3-dannym@scratchpost.org> <87603rnbi5.fsf@gnu.org> <20180513125925.66a91367@scratchpost.org> X-Mailer: Claws Mail 3.16.0 (GTK+ 2.24.31; x86_64-unknown-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; boundary="Sig_/gOR0kV3IYsO6kajRDr0Yzl="; protocol="application/pgp-signature" X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 31416 Cc: 31416@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) --Sig_/gOR0kV3IYsO6kajRDr0Yzl= Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable > To infer the triplet, we can search for "CONFIG_ARM64=3Dy". Not really, it's not in the u-boot tarball before it started building it. = Hmm... But you're right, it shouldn't be cross-compiling it in the first place if = "-s" works (or if the user builds it on the target anyway), so we could just pun= t on this entirely. P.S. how do I make make-u-boot-package default triplet to the host triplet? (%current-system) is not a gnu triplet, right? --Sig_/gOR0kV3IYsO6kajRDr0Yzl= Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEds7GsXJ0tGXALbPZ5xo1VCwwuqUFAlr4Hj4ACgkQ5xo1VCww uqUelwf+NSon41e+Ug7nrhsD9StoojGWyZWLg+We59M417Sp1Sge4Y35XjKCn2DN G3EN0Ur6l6oZx6iwyxa0NYRHgIj5Y2ALdTzRHgB06zi/yj/udyjrOk1nA7Z9kj1+ Kf5GVkrXxD8FaQEwgHJp8rwuAukM7IwE+XRfVpljfH5MTnx8/A/W5mTIjq5QArxZ eDvZNcncwaTrWo89GpOQhADr+CqD2W+YSeWdP8K1A8HAtRKsFo2GiBJCVagDym2q 04jBGs4spWQbmpjpXylhfQRTCGP2waGQWc4X6vsLCECian+H0Ex/QD+UG6dJ/EZX 0mjEuIgtvZfLATBtr3c3eVcdosTvnQ== =6ciW -----END PGP SIGNATURE----- --Sig_/gOR0kV3IYsO6kajRDr0Yzl=-- From debbugs-submit-bounces@debbugs.gnu.org Sun May 13 08:09:24 2018 Received: (at 31416) by debbugs.gnu.org; 13 May 2018 12:09:24 +0000 Received: from localhost ([127.0.0.1]:60291 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fHpoa-00057B-I9 for submit@debbugs.gnu.org; Sun, 13 May 2018 08:09:24 -0400 Received: from mail.fsfe.org ([217.69.89.162]:44948) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fHpoV-00056v-Va for 31416@debbugs.gnu.org; Sun, 13 May 2018 08:09:23 -0400 Received: from localhost (localhost [127.0.0.1]) by mail.fsfe.org (Postfix) with ESMTP id 9E37263CFA8 for <31416@debbugs.gnu.org>; Sun, 13 May 2018 14:09:13 +0200 (CEST) Received: from mail.fsfe.org ([127.0.0.1]) by localhost (cavendish.fsfeurope.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id xAlUJXW5B+ec for <31416@debbugs.gnu.org>; Sun, 13 May 2018 14:09:13 +0200 (CEST) Received: by mail-ua0-f171.google.com with SMTP id d4-v6so6527489ual.10 for <31416@debbugs.gnu.org>; Sun, 13 May 2018 05:09:13 -0700 (PDT) X-Gm-Message-State: ALKqPwcf57DVcwz4O22sZcj6dsagI0zXmXEGHVsk3Qv1tzSpkSIptbMB 0Ov17chziMgytzLweyPKDZr2KDGDVNObEvWen5o= X-Google-Smtp-Source: AB8JxZr0p9qKNTwArxL5a7+jj2w6gu2ULvOMFyEgL6xhSj7TnCj7sazoEoleu2Yn+jECAPnFmjIZXsPQhf5Q/VfpoKc= X-Received: by 2002:a9f:25f5:: with SMTP id 108-v6mr8301171uaf.178.1526213346938; Sun, 13 May 2018 05:09:06 -0700 (PDT) MIME-Version: 1.0 Received: by 10.103.97.132 with HTTP; Sun, 13 May 2018 05:09:06 -0700 (PDT) In-Reply-To: <20180511143652.26935-1-dannym@scratchpost.org> References: <20180511143515.23435-1-dannym@scratchpost.org> <20180511143652.26935-1-dannym@scratchpost.org> From: Jelle Licht Date: Sun, 13 May 2018 14:09:06 +0200 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [bug#31416] [PATCH 1/4] system: Add os-with-u-boot. To: Danny Milosavljevic Content-Type: multipart/alternative; boundary="000000000000655581056c153c88" X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: 31416 Cc: 31416@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) --000000000000655581056c153c88 Content-Type: text/plain; charset="UTF-8" 2018-05-11 16:36 GMT+02:00 Danny Milosavljevic : [...] > +@subsection Building the Installation Image for ARM boards > + > +Many ARM boards require a board-specific bootloader in order to boot. > + > +If you build an entire disk image and the is not still available otherwise > +(on another available drive etc), it's advisable to build an image that > +includes the bootloader, specifically: > `and the' seems to miss something after it. > + > +@example > +guix system disk-image --system=armhf-linux -e '((@ (gnu system install) > os-with-u-boot) (@ (gnu system install) installation-os) > "A20-OLinuXino-Lime2")' > +@end example > + > +Or if you don't cross compile: > nitpick: I do not like contractions in writing, but if we already use them elsewhere, disregard this ;-). > + > +@example > +guix system disk-image -e '((@ (gnu system install) os-with-u-boot) (@ > (gnu system install) installation-os) "A20-OLinuXino-Lime2")' > +@end example > + > +"A20-OLinuXino-Lime2" is the name of the board. If you specify an invalid > +board, you get a list. > Could you clarify what you mean when you say you get a list? > [...] > > Thanks for working on this! I really want to see GuixSD on ARM succeed as well. --000000000000655581056c153c88 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


2018-05-11 16:36 GMT+02:00 Danny Milosavljevic <dannym@scratchpos= t.org>:
[...]
+@subsec= tion Building the Installation Image for ARM boards
+
+Many ARM boards require a board-specific bootloader in order to boot.
+
+If you build an entire disk image and the is not still available otherwise=
+(on another available drive etc), it's advisable to build an image tha= t
+includes the bootloader, specifically:
`and the' = seems to miss something after it.=C2=A0
+
+@example
+guix system disk-image --system=3Darmhf-linux -e '((@ (gnu system inst= all) os-with-u-boot) (@ (gnu system install) installation-os) "A20-OLi= nuXino-Lime2")'
+@end example
+
+Or if you don't cross compile:

nit= pick: I do not like contractions in writing, but if we already use them els= ewhere, disregard this ;-).
+
+@example
+guix system disk-image -e '((@ (gnu system install) os-with-u-boot) (@= (gnu system install) installation-os) "A20-OLinuXino-Lime2")'= ;
+@end example
+
+"A20-OLinuXino-Lime2" is the name of the board.=C2=A0 If you spe= cify an invalid
+board, you get a list.

Could you clari= fy what you mean when you say you get a list?
[...]


Thanks for working = on this! I really want to see GuixSD on ARM succeed as well.

--000000000000655581056c153c88-- From debbugs-submit-bounces@debbugs.gnu.org Sun May 13 09:46:23 2018 Received: (at 31416) by debbugs.gnu.org; 13 May 2018 13:46:23 +0000 Received: from localhost ([127.0.0.1]:60336 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fHrKQ-0000s1-Dv for submit@debbugs.gnu.org; Sun, 13 May 2018 09:46:22 -0400 Received: from dd26836.kasserver.com ([85.13.145.193]:47438) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fHrKO-0000rt-Tu for 31416@debbugs.gnu.org; Sun, 13 May 2018 09:46:21 -0400 Received: from localhost (178.113.247.28.wireless.dyn.drei.com [178.113.247.28]) by dd26836.kasserver.com (Postfix) with ESMTPSA id E60CC3361494; Sun, 13 May 2018 15:46:18 +0200 (CEST) Date: Sun, 13 May 2018 15:46:15 +0200 From: Danny Milosavljevic To: ludo@gnu.org (Ludovic =?ISO-8859-1?Q?Court=E8s?=) Subject: Re: [bug#31416] [PATCH 3/4] bootloader: Add make-u-boot-bootloader. Message-ID: <20180513154615.32ccd51b@scratchpost.org> In-Reply-To: <20180513125925.66a91367@scratchpost.org> References: <20180511143515.23435-1-dannym@scratchpost.org> <20180511143652.26935-1-dannym@scratchpost.org> <20180511143652.26935-3-dannym@scratchpost.org> <87603rnbi5.fsf@gnu.org> <20180513125925.66a91367@scratchpost.org> X-Mailer: Claws Mail 3.16.0 (GTK+ 2.24.31; x86_64-unknown-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; boundary="Sig_/OvihLZ1I_gWSNK/izqCl86a"; protocol="application/pgp-signature" X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 31416 Cc: 31416@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) --Sig_/OvihLZ1I_gWSNK/izqCl86a Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable The number of boards vs. the number of SOCs: u-boot-2018.05$ tools/genboardscfg.py u-boot-2018.05$ wc -l boards.cfg 1249 boards.cfg u-boot-2018.05$ cat boards.cfg |tail +7 |awk '{print $4}' |sort |uniq |gre= p -v '^$' |wc -l # 4 is the "SOC" column 86 --Sig_/OvihLZ1I_gWSNK/izqCl86a Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEds7GsXJ0tGXALbPZ5xo1VCwwuqUFAlr4QacACgkQ5xo1VCww uqUdgwgAhDRyt37yLSqNDnU8XOoWlmEFlbWJJebEdM9eAGxwTNZFUaucWOVw7kgk HWbqnPco2jeL13Rhn75GVQJ9pT4oYn7HsYUJoZW2kvCvMRIg/D2hTu0eqsXd7KVu 6WxYRfEWKyeCsEc3LwXQrNIfQc8iPZBK0DFbSsY3TtWhHa2SO3FxoBktLo7KE+8b JafA849Ot8y45SFUXKhCEg+weVH1qqXOXByJDAoMjX58Dp8mySTvoQuKmZTFbnAn yNYPWokC8pKdAE1kyx3cbbXDai8NHQnTp5gzHttRI6pGD3I9mKA3WlXr/bXKdZH2 wsBu5feKe7BqOp4fAdVN2WgSrNeoyg== =AAXz -----END PGP SIGNATURE----- --Sig_/OvihLZ1I_gWSNK/izqCl86a-- From debbugs-submit-bounces@debbugs.gnu.org Mon May 14 04:31:27 2018 Received: (at 31416) by debbugs.gnu.org; 14 May 2018 08:31:27 +0000 Received: from localhost ([127.0.0.1]:33231 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fI8tD-0000j2-DP for submit@debbugs.gnu.org; Mon, 14 May 2018 04:31:27 -0400 Received: from eggs.gnu.org ([208.118.235.92]:48602) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fI8tC-0000dE-48 for 31416@debbugs.gnu.org; Mon, 14 May 2018 04:31:26 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fI8t2-0006qn-4I for 31416@debbugs.gnu.org; Mon, 14 May 2018 04:31:21 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:60912) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fI8t2-0006qP-0f; Mon, 14 May 2018 04:31:16 -0400 Received: from [193.50.110.240] (port=53356 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1fI8t1-0002To-Fi; Mon, 14 May 2018 04:31:15 -0400 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Danny Milosavljevic Subject: Re: [bug#31416] [PATCH 3/4] bootloader: Add make-u-boot-bootloader. References: <20180511143515.23435-1-dannym@scratchpost.org> <20180511143652.26935-1-dannym@scratchpost.org> <20180511143652.26935-3-dannym@scratchpost.org> <87603rnbi5.fsf@gnu.org> <20180513125925.66a91367@scratchpost.org> <20180513131510.4a88c298@scratchpost.org> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 25 =?utf-8?Q?Flor=C3=A9al?= an 226 de la =?utf-8?Q?R?= =?utf-8?Q?=C3=A9volution?= X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Mon, 14 May 2018 10:31:13 +0200 In-Reply-To: <20180513131510.4a88c298@scratchpost.org> (Danny Milosavljevic's message of "Sun, 13 May 2018 13:15:10 +0200") Message-ID: <87o9hibpv2.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: 31416 Cc: 31416@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) Danny Milosavljevic skribis: > P.S. how do I make make-u-boot-package default triplet to the host triple= t? > (%current-system) is not a gnu triplet, right? You could do: --8<---------------cut here---------------start------------->8--- scheme@(guile-user)> ,use(guix utils) scheme@(guile-user)> (nix-system->gnu-triplet (%current-system)) $2 =3D "x86_64-unknown-linux-gnu" --8<---------------cut here---------------end--------------->8--- Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Mon May 14 04:34:34 2018 Received: (at 31416) by debbugs.gnu.org; 14 May 2018 08:34:34 +0000 Received: from localhost ([127.0.0.1]:33236 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fI8wD-0001Mp-Sc for submit@debbugs.gnu.org; Mon, 14 May 2018 04:34:34 -0400 Received: from eggs.gnu.org ([208.118.235.92]:49284) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fI8wC-0001MZ-GK for 31416@debbugs.gnu.org; Mon, 14 May 2018 04:34:32 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fI8w2-0000VH-Ew for 31416@debbugs.gnu.org; Mon, 14 May 2018 04:34:27 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=BAYES_20 autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:60953) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fI8w2-0000Ut-BW; Mon, 14 May 2018 04:34:22 -0400 Received: from [193.50.110.240] (port=53362 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1fI8w1-00059J-FS; Mon, 14 May 2018 04:34:22 -0400 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Danny Milosavljevic Subject: Re: [bug#31416] [PATCH 3/4] bootloader: Add make-u-boot-bootloader. References: <20180511143515.23435-1-dannym@scratchpost.org> <20180511143652.26935-1-dannym@scratchpost.org> <20180511143652.26935-3-dannym@scratchpost.org> <87603rnbi5.fsf@gnu.org> <20180513125925.66a91367@scratchpost.org> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 25 =?utf-8?Q?Flor=C3=A9al?= an 226 de la =?utf-8?Q?R?= =?utf-8?Q?=C3=A9volution?= X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Mon, 14 May 2018 10:34:20 +0200 In-Reply-To: <20180513125925.66a91367@scratchpost.org> (Danny Milosavljevic's message of "Sun, 13 May 2018 13:03:43 +0200") Message-ID: <87in7qbppv.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: 31416 Cc: 31416@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) Hello Danny, Danny Milosavljevic skribis: >> (define-record-type >> (board name triplet installer) >> =E2=80=A6) >>=20 >> Thoughts? > > The idea of make-u-boot-bootloader (and os-with-u-boot) was that it would= free > us from having to play whack-a-mole regarding u-boot (except for the > installation methods of which there are much fewer than boards or chip mo= dels) > and also free the user from having to know anything but the board name. > > With your idea it would mean that we'd have to carry a huge list of s, > defining the board and architecture and installer, right? (or I guess the > user would have to create it on-the-fly) > > That's exactly what I was trying to avoid :) Oh I see, especially the 1.2K boards vs. 86 SoCs! Then perhaps =E2=80=9Cboard=E2=80=9D is not the right abstraction; maybe would make more sense? Either way, my point was that it would be nice to have some abstraction to clearly specify things, and then use that as an input to construct both the U-Boot package and its configuration. Or do you think enumerating the SoCs would still be too painful? In that case, some auto-guessing might be the right choice, but in general, I think it should be a last resort. :-) Thanks, Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Mon May 14 12:30:00 2018 Received: (at 31416) by debbugs.gnu.org; 14 May 2018 16:30:00 +0000 Received: from localhost ([127.0.0.1]:34593 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fIGMJ-0008D6-Ry for submit@debbugs.gnu.org; Mon, 14 May 2018 12:30:00 -0400 Received: from dd26836.kasserver.com ([85.13.145.193]:51332) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fIGMG-0008Cp-Mw for 31416@debbugs.gnu.org; Mon, 14 May 2018 12:29:58 -0400 Received: from localhost (178.113.244.9.wireless.dyn.drei.com [178.113.244.9]) by dd26836.kasserver.com (Postfix) with ESMTPSA id EAE043360252; Mon, 14 May 2018 18:29:54 +0200 (CEST) Date: Mon, 14 May 2018 18:29:53 +0200 From: Danny Milosavljevic To: ludo@gnu.org (Ludovic =?ISO-8859-1?Q?Court=E8s?=) Subject: Re: [bug#31416] [PATCH 3/4] bootloader: Add make-u-boot-bootloader. Message-ID: <20180514182953.3d4c4f3c@scratchpost.org> In-Reply-To: <87in7qbppv.fsf@gnu.org> References: <20180511143515.23435-1-dannym@scratchpost.org> <20180511143652.26935-1-dannym@scratchpost.org> <20180511143652.26935-3-dannym@scratchpost.org> <87603rnbi5.fsf@gnu.org> <20180513125925.66a91367@scratchpost.org> <87in7qbppv.fsf@gnu.org> X-Mailer: Claws Mail 3.16.0 (GTK+ 2.24.31; x86_64-unknown-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 31416 Cc: 31416@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Ji Ludo, > Or do you think enumerating the SoCs would still be too painful? No, I think that would be a good idea. I'm not 100% sure that the SOC's ROM loads the bootloader always in the same way - but all SOCs I have ever seen so far do that (it also makes sense - the factory probably has chip test rigs and they don't want to update those every time a new chip revision comes out). (sometimes this can even be generalized to the vendor instead of the soc, though not always) If it does happen that there's a config resistor or something, we can cross that bridge when we come to it. So yeah, let's have a table of installers, using the soc as a key (for now?). Still to do: bikeshedding the name :) What about (define-record soc installation-procedure ...) (I think as record name would be weird, no?) Or just a hash table soc -> installation-procedure ? How does the instantiation of the table data look? Just toplevel statements? I've caused problems with those before :) Where do we put it? gnu/bootloader/u-boot.scm ? From debbugs-submit-bounces@debbugs.gnu.org Fri Jun 15 03:12:41 2018 Received: (at 31416) by debbugs.gnu.org; 15 Jun 2018 07:12:41 +0000 Received: from localhost ([127.0.0.1]:48796 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fTiuX-0000kF-Mo for submit@debbugs.gnu.org; Fri, 15 Jun 2018 03:12:41 -0400 Received: from eggs.gnu.org ([208.118.235.92]:54499) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fTiuW-0000k1-4Y for 31416@debbugs.gnu.org; Fri, 15 Jun 2018 03:12:40 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fTiuQ-0003dP-9W for 31416@debbugs.gnu.org; Fri, 15 Jun 2018 03:12:35 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:58797) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fTiuQ-0003dD-5q; Fri, 15 Jun 2018 03:12:34 -0400 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=57626 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1fTiuP-0001LE-Ib; Fri, 15 Jun 2018 03:12:33 -0400 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Danny Milosavljevic Subject: Re: [bug#31416] [PATCH 3/4] bootloader: Add make-u-boot-bootloader. References: <20180511143515.23435-1-dannym@scratchpost.org> <20180511143652.26935-1-dannym@scratchpost.org> <20180511143652.26935-3-dannym@scratchpost.org> <87603rnbi5.fsf@gnu.org> <20180513125925.66a91367@scratchpost.org> <87in7qbppv.fsf@gnu.org> <20180514182953.3d4c4f3c@scratchpost.org> Date: Fri, 15 Jun 2018 09:12:31 +0200 In-Reply-To: <20180514182953.3d4c4f3c@scratchpost.org> (Danny Milosavljevic's message of "Mon, 14 May 2018 18:29:53 +0200") Message-ID: <87r2l8wmjk.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: 31416 Cc: 31416@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) Hi Danny, Apologies for dropping the ball! Danny Milosavljevic skribis: > Still to do: bikeshedding the name :) > > What about > > (define-record > soc installation-procedure > ...) > > (I think as record name would be weird, no?) I think is too vague and it sounds like it=E2=80=99s basically a procedure, which it=E2=80=99s not. would be fine IMO, or if we want. > Or just a hash table soc -> installation-procedure ? > > How does the instantiation of the table data look? Just toplevel stateme= nts? I've caused problems with those before :) I think we need a table to look things up by name anyway, but we may also need a record type: I suppose we=E2=80=99d want to describe things in = that record. For the lookup table itself, see for example =E2=80=98file-system-type-modu= les=E2=80=99 in (gnu system linux-initrd). > Where do we put it? gnu/bootloader/u-boot.scm ? Sounds like the right place, yes. Thanks, Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Sat Jun 16 20:29:16 2018 Received: (at 31416) by debbugs.gnu.org; 17 Jun 2018 00:29:16 +0000 Received: from localhost ([127.0.0.1]:52334 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fULZC-0008B8-3i for submit@debbugs.gnu.org; Sat, 16 Jun 2018 20:29:14 -0400 Received: from dd26836.kasserver.com ([85.13.145.193]:45798) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fULZ9-0008Ay-FU for 31416@debbugs.gnu.org; Sat, 16 Jun 2018 20:29:12 -0400 Received: from localhost (84-113-15-225.cable.dynamic.surfer.at [84.113.15.225]) by dd26836.kasserver.com (Postfix) with ESMTPSA id A435C3363542; Sun, 17 Jun 2018 02:29:09 +0200 (CEST) Date: Sun, 17 Jun 2018 02:28:55 +0200 From: Danny Milosavljevic To: ludo@gnu.org (Ludovic =?ISO-8859-1?Q?Court=E8s?=) Subject: Re: [bug#31416] [PATCH 3/4] bootloader: Add make-u-boot-bootloader. Message-ID: <20180617022855.671a3ef6@scratchpost.org> In-Reply-To: <87r2l8wmjk.fsf@gnu.org> References: <20180511143515.23435-1-dannym@scratchpost.org> <20180511143652.26935-1-dannym@scratchpost.org> <20180511143652.26935-3-dannym@scratchpost.org> <87603rnbi5.fsf@gnu.org> <20180513125925.66a91367@scratchpost.org> <87in7qbppv.fsf@gnu.org> <20180514182953.3d4c4f3c@scratchpost.org> <87r2l8wmjk.fsf@gnu.org> X-Mailer: Claws Mail 3.16.0 (GTK+ 2.24.31; x86_64-unknown-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; boundary="Sig_/ynLXeXmklW6GOTLtRXQGYXx"; protocol="application/pgp-signature" X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 31416 Cc: 31416@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) --Sig_/ynLXeXmklW6GOTLtRXQGYXx Content-Type: multipart/mixed; boundary="MP_/E03k6Y8q2N1Dik1oGBdKOSL" --MP_/E03k6Y8q2N1Dik1oGBdKOSL Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Hi Ludo, On Fri, 15 Jun 2018 09:12:31 +0200 ludo@gnu.org (Ludovic Court=C3=A8s) wrote: > Apologies for dropping the ball! No problem, no need to hurry! I've researched a little in the mean time and found out that other projects DO have automated u-boot installation, for example: https://github.com/buildroot/buildroot/blob/master/board/olimex/a20_olinuxi= no/genimage.cfg So we could leave this stuff mostly to them - although it would mean we'd only support boards they support. It would make us lose support for these for now: * qemu_arm_vexpress * qemu_mips64el_malta * banana-pi-m2-ultra * nintendo-nes-classic-edition * novena * cubieboard * puma-rk3399 So we'd have to upstream support for those[1] - and also have a fallback in= the mean time maybe. A very minimal WIP patch for that is attached. What it does is install a "genimage.cfg" which describes how to install u-b= oot for the current board into the derivation of u-boot. Do we want to proceed like that? Should I move load-u-boot-config into a new guix/build/u-boot.scm ? Or how do I get it into the build side without rebuilding the world? [1] I added banana-pi-m2-ultra in my local buildroot checkout by creating 3= short text files, so it's not that bad. --MP_/E03k6Y8q2N1Dik1oGBdKOSL Content-Type: text/x-patch Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename=QQ.patch diff --git a/gnu/bootloader/u-boot.scm b/gnu/bootloader/u-boot.scm index 52b38dd1a..4213830cd 100644 --- a/gnu/bootloader/u-boot.scm +++ b/gnu/bootloader/u-boot.scm @@ -110,7 +110,7 @@ (define u-boot-beaglebone-black-bootloader (bootloader (inherit u-boot-bootloader) - (package u-boot-beagle-bone-black) + (package u-boot-beaglebone) (installer install-beaglebone-black-u-boot))) =20 (define u-boot-allwinner-bootloader @@ -136,17 +136,17 @@ (define u-boot-a20-olinuxino-lime-bootloader (bootloader (inherit u-boot-allwinner-bootloader) - (package u-boot-a20-olinuxino-lime))) + (package u-boot-olimex-a20-olinuxino-lime))) =20 (define u-boot-a20-olinuxino-lime2-bootloader (bootloader (inherit u-boot-allwinner-bootloader) - (package u-boot-a20-olinuxino-lime2))) + (package u-boot-olimex-a20-olinuxino-lime2))) =20 (define u-boot-a20-olinuxino-micro-bootloader (bootloader (inherit u-boot-allwinner-bootloader) - (package u-boot-a20-olinuxino-micro))) + (package u-boot-olimex-a20-olinuxino-micro))) =20 (define u-boot-banana-pi-m2-ultra-bootloader (bootloader @@ -156,7 +156,7 @@ (define u-boot-mx6cuboxi-bootloader (bootloader (inherit u-boot-imx-bootloader) - (package u-boot-mx6cuboxi))) + (package u-boot-mx6cubox))) =20 (define u-boot-wandboard-bootloader (bootloader @@ -171,7 +171,7 @@ (define u-boot-pine64-plus-bootloader (bootloader (inherit u-boot-allwinner64-bootloader) - (package u-boot-pine64-plus))) + (package u-boot-pine64))) =20 (define u-boot-puma-rk3399-bootloader (bootloader diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm index eb1e433ba..080515e79 100644 --- a/gnu/packages/bootloaders.scm +++ b/gnu/packages/bootloaders.scm @@ -456,6 +456,26 @@ def test_ctrl_c")) also initializes the boards (RAM etc). This package provides its board-independent tools."))) =20 +(define-public buildroot-minimal + (package + (name "buildroot-minimal") + (version "2018.05") + (source (origin + (method url-fetch) + (uri + (string-append + "https://github.com/buildroot/buildroot/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "002y07c1q3bx2f37ywq0qaj2f4wfn09dia09khnp7sy6ajz3k7p3")))) + (build-system gnu-build-system) + (synopsis "Generate embedded Linux system images") + (description "@code{buildroot} generates embedded Linux system images.= ") + (home-page "https://github.com/buildroot/buildroot") + (license license:gpl2+))) + (define-public (make-u-boot-package board triplet) "Returns a u-boot package for BOARD cross-compiled for TRIPLET." (let ((same-arch? (if (string-prefix? (%current-system) @@ -472,9 +492,12 @@ board-independent tools."))) `(("cross-gcc" ,(cross-gcc triplet #:xgcc gcc-7)) ("cross-binutils" ,(cross-binutils triplet))) `(("gcc-7" ,gcc-7))) + ("buildroot" ,(package-source buildroot-minimal)) ,@(package-native-inputs u-boot))) (arguments - `(#:modules ((ice-9 ftw) (guix build utils) (guix build gnu-build-s= ystem)) + `(#:modules + ((ice-9 ftw) (ice-9 rdelim) (ice-9 regex) (guix build utils) + (guix build gnu-build-system)) #:test-target "test" #:make-flags (list "HOSTCC=3Dgcc" @@ -483,16 +506,86 @@ board-independent tools."))) '())) #:phases (modify-phases %standard-phases + (add-after 'unpack 'unpack-buildroot + (lambda* (#:key inputs outputs #:allow-other-keys) + (invoke "tar" "xf" (assoc-ref inputs "buildroot")) + ((@ (ice-9 match) match) (filter (lambda (name) (string-pre= fix? "buildroot" name)) (scandir ".")) + ((name) (symlink name "buildroot"))) + #t)) (replace 'configure - (lambda* (#:key outputs make-flags #:allow-other-keys) - (let ((config-name (string-append ,board "_defconfig"))) - (if (file-exists? (string-append "configs/" config-name)) - (zero? (apply system* "make" `(,@make-flags ,config-n= ame))) + (lambda* (#:key outputs make-flags #:allow-other-keys) +;; FIXME move out. +(define (load-u-boot-config port) + "Read the u-boot configuration from PORT and return an alist with the +entries." + (let loop ((line (read-line port))) + (if (eof-object? line) + '() + (let ((match (string-match "^([A-Za-z][^=3D]*)=3D(.*)$" line))) + (if match + (cons (cons (match:substring match 1) + (match:substring match 2)) + (loop (read-line port))) + (loop (read-line port))))))) + + (let* ((buildroot-config-basename + (string-append ,board "_defconfig")) + (buildroot-config-dirname "buildroot/") + (buildroot-config-name + (string-append buildroot-config-dirname "configs/" + buildroot-config-basename)) + (buildroot-config + (if (file-exists? buildroot-config-name) + (call-with-input-file buildroot-config-name loa= d-u-boot-config) + #f))) + (if buildroot-config + (let* ((cfg (lambda (name) + (assoc-ref buildroot-config name))) + (u-boot-config-match + (and=3D> (or (cfg "BR2_TARGET_UBOOT_BOARD_DEF= CONFIG") + (cfg "BR2_TARGET_UBOOT_BOARDNAME")) + (lambda (x) + (string-match "^\"(.*)\"$" x)))) + (u-boot-config-name + (and u-boot-config-match + (match:substring u-boot-config-match 1))) + (BR2_ROOTFS_POST_IMAGE_SCRIPT + (cfg "BR2_ROOTFS_POST_IMAGE_SCRIPT")) + (BR2_ROOTFS_POST_SCRIPT_ARGS + (cfg "BR2_ROOTFS_POST_SCRIPT_ARGS")) + (genimage-config-name + (cond + ;; Prefer genimage.sh parameters. + ((and BR2_ROOTFS_POST_IMAGE_SCRIPT + (string=3D? BR2_ROOTFS_POST_IMAGE_SCRI= PT + "\"support/scripts/genimage.= sh\"") + BR2_ROOTFS_POST_SCRIPT_ARGS) + (and=3D> (string-match "^\"-c (.*)\"$" BR2_= ROOTFS_POST_SCRIPT_ARGS) + (lambda (match) (match:substring mat= ch 1)))) + ;; Fall back to the script directory. + (BR2_ROOTFS_POST_IMAGE_SCRIPT + (and=3D> (string-match "^\"(.*)/[^/]*\"$" B= R2_ROOTFS_POST_IMAGE_SCRIPT) + (lambda (match) (string-append (mat= ch:substring match 1) + "/genima= ge.cfg")))) + ;; Fall back to no "genimage.cfg". + (else + #f)))) + (if genimage-config-name + (let ((x (string-append buildroot-config-dirname + genimage-config-name))) + (if (file-exists? x) + (copy-file x "genimage.cfg")))) + (if (not u-boot-config-name) + (error "Cannot build U-Boot for this system.")) + (apply invoke "make" + `(,@make-flags + ,(string-append u-boot-config-name + "_defconfig")))) (begin (display "Invalid board name. Valid board names are= :" (current-error-port)) (let ((suffix-len (string-length "_defconfig")) - (entries (scandir "configs"))) + (entries (scandir (dirname buildroot-config-n= ame)))) (for-each (lambda (file-name) (when (string-suffix? "_defconfig" fi= le-name) (format (current-error-port) @@ -500,7 +593,8 @@ board-independent tools."))) (string-drop-right file-name suffix-l= en)))) (sort entries string-ci<))) - #f))))) + (error "Invalid board name ~s." + buildroot-config-basename)))))) (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -512,6 +606,9 @@ board-independent tools."))) (install-file ".config" libexec) ;; Useful for "qemu -kernel". (install-file "u-boot" libexec) + (if (file-exists? "genimage.cfg") + (install-file "genimage.cfg" libexec)) + (for-each (lambda (file) (let ((target-file (string-append libexec "/" file))) @@ -519,17 +616,17 @@ board-independent tools."))) (copy-file file target-file))) uboot-files)))))))))) =20 -(define-public u-boot-vexpress - (make-u-boot-package "vexpress_ca9x4" "arm-linux-gnueabihf")) +(define-public u-boot-qemu-arm-vexpress + (make-u-boot-package "qemu_arm_vexpress" "arm-linux-gnueabihf")) =20 -(define-public u-boot-malta - (make-u-boot-package "malta" "mips64el-linux-gnuabi64")) +(define-public u-boot-qemu-mips64el-malta + (make-u-boot-package "qemu_mips64el_malta" "mips64el-linux-gnuabi64")) =20 -(define-public u-boot-beagle-bone-black - (make-u-boot-package "am335x_boneblack" "arm-linux-gnueabihf")) +(define-public u-boot-beaglebone + (make-u-boot-package "beaglebone" "arm-linux-gnueabihf")) =20 -(define-public u-boot-pine64-plus - (let ((base (make-u-boot-package "pine64_plus" "aarch64-linux-gnu"))) +(define-public u-boot-pine64 + (let ((base (make-u-boot-package "pine64" "aarch64-linux-gnu"))) (package (inherit base) (arguments @@ -550,33 +647,38 @@ board-independent tools."))) `(("firmware" ,arm-trusted-firmware-pine64-plus) ,@(package-native-inputs base)))))) =20 +;; MISSING (define-public u-boot-banana-pi-m2-ultra (make-u-boot-package "Bananapi_M2_Ultra" "arm-linux-gnueabihf")) =20 -(define-public u-boot-a20-olinuxino-lime - (make-u-boot-package "A20-OLinuXino-Lime" "arm-linux-gnueabihf")) +(define-public u-boot-olimex-a20-olinuxino-lime + (make-u-boot-package "olimex_a20_olinuxino_lime" "arm-linux-gnueabihf")) =20 -(define-public u-boot-a20-olinuxino-lime2 - (make-u-boot-package "A20-OLinuXino-Lime2" "arm-linux-gnueabihf")) +(define-public u-boot-olimex-a20-olinuxino-lime2 + (make-u-boot-package "olimex_a20_olinuxino_lime2" "arm-linux-gnueabihf")) =20 -(define-public u-boot-a20-olinuxino-micro - (make-u-boot-package "A20-OLinuXino_MICRO" "arm-linux-gnueabihf")) +(define-public u-boot-olimex-a20-olinuxino-micro + (make-u-boot-package "olimex_a20_olinuxino_micro" "arm-linux-gnueabihf")) =20 +;; MISSING (define-public u-boot-nintendo-nes-classic-edition (make-u-boot-package "Nintendo_NES_Classic_Edition" "arm-linux-gnueabihf= ")) =20 (define-public u-boot-wandboard (make-u-boot-package "wandboard" "arm-linux-gnueabihf")) =20 -(define-public u-boot-mx6cuboxi - (make-u-boot-package "mx6cuboxi" "arm-linux-gnueabihf")) +(define-public u-boot-mx6cubox + (make-u-boot-package "mx6cubox" "arm-linux-gnueabihf")) =20 +;; MISSING (define-public u-boot-novena (make-u-boot-package "novena" "arm-linux-gnueabihf")) =20 +;; MISSING (define-public u-boot-cubieboard (make-u-boot-package "Cubieboard" "arm-linux-gnueabihf")) =20 +;; MISSING (define-public u-boot-puma-rk3399 (let ((base (make-u-boot-package "puma-rk3399" "aarch64-linux-gnu"))) (package --MP_/E03k6Y8q2N1Dik1oGBdKOSL-- --Sig_/ynLXeXmklW6GOTLtRXQGYXx Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEds7GsXJ0tGXALbPZ5xo1VCwwuqUFAlslq0cACgkQ5xo1VCww uqVQFwgAoggaWe8fm5D42K1oCZDCEoq8z9kGaQTOMqm7Hoic3KBLwnYM4MjtndgN vTDn1trp1ulh8CbWBT7mzj/BfU+TtCJ75q86Yr8eT5KtFION9Q8TBm4WteKQxRiy F6VTAlDQueIWNL+CMA+DvRrqjrSBUxG27MmB2aBh3Kb0xl3ZRJElprrQisKhGqyp NcbSKrlgSJzDBoT8GkkOE+KrhH6GQSm8pTzQtvx9NIyHyVnWY/XC4Q8eOL2MLKAM sIpIIzLLEUDl6E0bJIWvX2XQotXOYMRagXBVOB+DLCr9oeZdqnulxVFCmU8nNLgw cx+2LthdPxDQKHtdIqm/CUbXPAXRfQ== =Gt5h -----END PGP SIGNATURE----- --Sig_/ynLXeXmklW6GOTLtRXQGYXx-- From debbugs-submit-bounces@debbugs.gnu.org Sun Jun 17 08:35:37 2018 Received: (at 31416) by debbugs.gnu.org; 17 Jun 2018 12:35:37 +0000 Received: from localhost ([127.0.0.1]:52648 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fUWu9-0005rD-6U for submit@debbugs.gnu.org; Sun, 17 Jun 2018 08:35:37 -0400 Received: from dd26836.kasserver.com ([85.13.145.193]:40612) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fUWu6-0005r3-QW for 31416@debbugs.gnu.org; Sun, 17 Jun 2018 08:35:35 -0400 Received: from localhost (178.113.182.79.wireless.dyn.drei.com [178.113.182.79]) by dd26836.kasserver.com (Postfix) with ESMTPSA id 5A929336296C; Sun, 17 Jun 2018 14:35:33 +0200 (CEST) Date: Sun, 17 Jun 2018 14:35:17 +0200 From: Danny Milosavljevic To: ludo@gnu.org (Ludovic =?ISO-8859-1?Q?Court=E8s?=) Subject: Re: [bug#31416] [PATCH 3/4] bootloader: Add make-u-boot-bootloader. Message-ID: <20180617143517.433a5ce0@scratchpost.org> In-Reply-To: <20180617022855.671a3ef6@scratchpost.org> References: <20180511143515.23435-1-dannym@scratchpost.org> <20180511143652.26935-1-dannym@scratchpost.org> <20180511143652.26935-3-dannym@scratchpost.org> <87603rnbi5.fsf@gnu.org> <20180513125925.66a91367@scratchpost.org> <87in7qbppv.fsf@gnu.org> <20180514182953.3d4c4f3c@scratchpost.org> <87r2l8wmjk.fsf@gnu.org> <20180617022855.671a3ef6@scratchpost.org> X-Mailer: Claws Mail 3.16.0 (GTK+ 2.24.31; x86_64-unknown-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; boundary="Sig_/E0ELjbo9teysEvEuqmEpep7"; protocol="application/pgp-signature" X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 31416 Cc: 31416@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) --Sig_/E0ELjbo9teysEvEuqmEpep7 Content-Type: multipart/mixed; boundary="MP_/9K0XiqAtfURggO+eM8/Cr+B" --MP_/9K0XiqAtfURggO+eM8/Cr+B Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Content-Disposition: inline v2, with u-boot-without-buildroot fallback, attached. --MP_/9K0XiqAtfURggO+eM8/Cr+B Content-Type: text/x-patch Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename=QQ2.patch diff --git a/gnu/bootloader/u-boot.scm b/gnu/bootloader/u-boot.scm index 52b38dd1a..4213830cd 100644 --- a/gnu/bootloader/u-boot.scm +++ b/gnu/bootloader/u-boot.scm @@ -110,7 +110,7 @@ (define u-boot-beaglebone-black-bootloader (bootloader (inherit u-boot-bootloader) - (package u-boot-beagle-bone-black) + (package u-boot-beaglebone) (installer install-beaglebone-black-u-boot))) =20 (define u-boot-allwinner-bootloader @@ -136,17 +136,17 @@ (define u-boot-a20-olinuxino-lime-bootloader (bootloader (inherit u-boot-allwinner-bootloader) - (package u-boot-a20-olinuxino-lime))) + (package u-boot-olimex-a20-olinuxino-lime))) =20 (define u-boot-a20-olinuxino-lime2-bootloader (bootloader (inherit u-boot-allwinner-bootloader) - (package u-boot-a20-olinuxino-lime2))) + (package u-boot-olimex-a20-olinuxino-lime2))) =20 (define u-boot-a20-olinuxino-micro-bootloader (bootloader (inherit u-boot-allwinner-bootloader) - (package u-boot-a20-olinuxino-micro))) + (package u-boot-olimex-a20-olinuxino-micro))) =20 (define u-boot-banana-pi-m2-ultra-bootloader (bootloader @@ -156,7 +156,7 @@ (define u-boot-mx6cuboxi-bootloader (bootloader (inherit u-boot-imx-bootloader) - (package u-boot-mx6cuboxi))) + (package u-boot-mx6cubox))) =20 (define u-boot-wandboard-bootloader (bootloader @@ -171,7 +171,7 @@ (define u-boot-pine64-plus-bootloader (bootloader (inherit u-boot-allwinner64-bootloader) - (package u-boot-pine64-plus))) + (package u-boot-pine64))) =20 (define u-boot-puma-rk3399-bootloader (bootloader diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm index eb1e433ba..7036c6bbc 100644 --- a/gnu/packages/bootloaders.scm +++ b/gnu/packages/bootloaders.scm @@ -456,6 +456,26 @@ def test_ctrl_c")) also initializes the boards (RAM etc). This package provides its board-independent tools."))) =20 +(define-public buildroot-minimal + (package + (name "buildroot-minimal") + (version "2018.05") + (source (origin + (method url-fetch) + (uri + (string-append + "https://github.com/buildroot/buildroot/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "002y07c1q3bx2f37ywq0qaj2f4wfn09dia09khnp7sy6ajz3k7p3")))) + (build-system gnu-build-system) + (synopsis "Generate embedded Linux system images") + (description "@code{buildroot} generates embedded Linux system images.= ") + (home-page "https://github.com/buildroot/buildroot") + (license license:gpl2+))) + (define-public (make-u-boot-package board triplet) "Returns a u-boot package for BOARD cross-compiled for TRIPLET." (let ((same-arch? (if (string-prefix? (%current-system) @@ -472,9 +492,12 @@ board-independent tools."))) `(("cross-gcc" ,(cross-gcc triplet #:xgcc gcc-7)) ("cross-binutils" ,(cross-binutils triplet))) `(("gcc-7" ,gcc-7))) + ("buildroot" ,(package-source buildroot-minimal)) ,@(package-native-inputs u-boot))) (arguments - `(#:modules ((ice-9 ftw) (guix build utils) (guix build gnu-build-s= ystem)) + `(#:modules + ((ice-9 ftw) (ice-9 rdelim) (ice-9 regex) (guix build utils) + (guix build gnu-build-system)) #:test-target "test" #:make-flags (list "HOSTCC=3Dgcc" @@ -483,16 +506,94 @@ board-independent tools."))) '())) #:phases (modify-phases %standard-phases + (add-after 'unpack 'unpack-buildroot + (lambda* (#:key inputs outputs #:allow-other-keys) + (invoke "tar" "xf" (assoc-ref inputs "buildroot")) + ((@ (ice-9 match) match) (filter (lambda (name) (string-pre= fix? "buildroot" name)) (scandir ".")) + ((name) (symlink name "buildroot"))) + #t)) (replace 'configure - (lambda* (#:key outputs make-flags #:allow-other-keys) - (let ((config-name (string-append ,board "_defconfig"))) - (if (file-exists? (string-append "configs/" config-name)) - (zero? (apply system* "make" `(,@make-flags ,config-n= ame))) - (begin + (lambda* (#:key outputs make-flags #:allow-other-keys) +;; FIXME move out. +(define (load-u-boot-config port) + "Read the u-boot configuration from PORT and return an alist with the +entries." + (let loop ((line (read-line port))) + (if (eof-object? line) + '() + (let ((match (string-match "^([A-Za-z][^=3D]*)=3D(.*)$" line))) + (if match + (cons (cons (match:substring match 1) + (match:substring match 2)) + (loop (read-line port))) + (loop (read-line port))))))) + + (let* ((buildroot-config-basename + (string-append ,board "_defconfig")) + (buildroot-config-dirname "buildroot/") + (buildroot-config-name + (string-append buildroot-config-dirname "configs/" + buildroot-config-basename)) + (buildroot-config + (if (file-exists? buildroot-config-name) + (call-with-input-file buildroot-config-name loa= d-u-boot-config) + #f))) + (cond + (buildroot-config + (let* ((cfg (lambda (name) + (assoc-ref buildroot-config name))) + (u-boot-config-match + (and=3D> (or (cfg "BR2_TARGET_UBOOT_BOARD_DEF= CONFIG") + (cfg "BR2_TARGET_UBOOT_BOARDNAME")) + (lambda (x) + (string-match "^\"(.*)\"$" x)))) + (u-boot-config-name + (and u-boot-config-match + (match:substring u-boot-config-match 1))) + (BR2_ROOTFS_POST_IMAGE_SCRIPT + (cfg "BR2_ROOTFS_POST_IMAGE_SCRIPT")) + (BR2_ROOTFS_POST_SCRIPT_ARGS + (cfg "BR2_ROOTFS_POST_SCRIPT_ARGS")) + (genimage-config-name + (cond + ;; Prefer genimage.sh parameters. + ((and BR2_ROOTFS_POST_IMAGE_SCRIPT + (string=3D? BR2_ROOTFS_POST_IMAGE_SCRI= PT + "\"support/scripts/genimage.= sh\"") + BR2_ROOTFS_POST_SCRIPT_ARGS) + (and=3D> (string-match "^\"-c (.*)\"$" BR2_= ROOTFS_POST_SCRIPT_ARGS) + (lambda (match) (match:substring mat= ch 1)))) + ;; Fall back to the script directory. + (BR2_ROOTFS_POST_IMAGE_SCRIPT + (and=3D> (string-match "^\"(.*)/[^/]*\"$" B= R2_ROOTFS_POST_IMAGE_SCRIPT) + (lambda (match) (string-append (matc= h:substring match 1) + "/genimag= e.cfg")))) + ;; Fall back to no "genimage.cfg". + (else + #f)))) + (if genimage-config-name + (let ((x (string-append buildroot-config-dirname + genimage-config-name))) + (if (file-exists? x) + (copy-file x "genimage.cfg")))) + (if (not u-boot-config-name) + (error "Cannot build U-Boot for this system.")) + (apply invoke "make" + `(,@make-flags + ,(string-append u-boot-config-name + "_defconfig"))))) + ;; Fall back to U-Boot without installer. + ((file-exists? (string-append "configs/" ,board "_defcon= fig")) + (apply invoke "make" + `(,@make-flags + ,(string-append ,board + "_defconfig")))) + (else + (begin (display "Invalid board name. Valid board names are= :" (current-error-port)) (let ((suffix-len (string-length "_defconfig")) - (entries (scandir "configs"))) + (entries (scandir (dirname buildroot-config-n= ame)))) (for-each (lambda (file-name) (when (string-suffix? "_defconfig" fi= le-name) (format (current-error-port) @@ -500,7 +601,8 @@ board-independent tools."))) (string-drop-right file-name suffix-l= en)))) (sort entries string-ci<))) - #f))))) + (error "Invalid board name ~s." + buildroot-config-basename))))))) (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -512,6 +614,10 @@ board-independent tools."))) (install-file ".config" libexec) ;; Useful for "qemu -kernel". (install-file "u-boot" libexec) + + (if (file-exists? "genimage.cfg") + (install-file "genimage.cfg" libexec)) + (for-each (lambda (file) (let ((target-file (string-append libexec "/" file))) @@ -519,17 +625,17 @@ board-independent tools."))) (copy-file file target-file))) uboot-files)))))))))) =20 -(define-public u-boot-vexpress - (make-u-boot-package "vexpress_ca9x4" "arm-linux-gnueabihf")) +(define-public u-boot-qemu-arm-vexpress + (make-u-boot-package "qemu_arm_vexpress" "arm-linux-gnueabihf")) =20 -(define-public u-boot-malta - (make-u-boot-package "malta" "mips64el-linux-gnuabi64")) +(define-public u-boot-qemu-mips64el-malta + (make-u-boot-package "qemu_mips64el_malta" "mips64el-linux-gnuabi64")) =20 -(define-public u-boot-beagle-bone-black - (make-u-boot-package "am335x_boneblack" "arm-linux-gnueabihf")) +(define-public u-boot-beaglebone + (make-u-boot-package "beaglebone" "arm-linux-gnueabihf")) =20 -(define-public u-boot-pine64-plus - (let ((base (make-u-boot-package "pine64_plus" "aarch64-linux-gnu"))) +(define-public u-boot-pine64 + (let ((base (make-u-boot-package "pine64" "aarch64-linux-gnu"))) (package (inherit base) (arguments @@ -550,33 +656,38 @@ board-independent tools."))) `(("firmware" ,arm-trusted-firmware-pine64-plus) ,@(package-native-inputs base)))))) =20 +;; MISSING genimage.cfg (define-public u-boot-banana-pi-m2-ultra (make-u-boot-package "Bananapi_M2_Ultra" "arm-linux-gnueabihf")) =20 -(define-public u-boot-a20-olinuxino-lime - (make-u-boot-package "A20-OLinuXino-Lime" "arm-linux-gnueabihf")) +(define-public u-boot-olimex-a20-olinuxino-lime + (make-u-boot-package "olimex_a20_olinuxino_lime" "arm-linux-gnueabihf")) =20 -(define-public u-boot-a20-olinuxino-lime2 - (make-u-boot-package "A20-OLinuXino-Lime2" "arm-linux-gnueabihf")) +(define-public u-boot-olimex-a20-olinuxino-lime2 + (make-u-boot-package "olimex_a20_olinuxino_lime2" "arm-linux-gnueabihf")) =20 -(define-public u-boot-a20-olinuxino-micro - (make-u-boot-package "A20-OLinuXino_MICRO" "arm-linux-gnueabihf")) +(define-public u-boot-olimex-a20-olinuxino-micro + (make-u-boot-package "olimex_a20_olinuxino_micro" "arm-linux-gnueabihf")) =20 +;; MISSING genimage.cfg (define-public u-boot-nintendo-nes-classic-edition (make-u-boot-package "Nintendo_NES_Classic_Edition" "arm-linux-gnueabihf= ")) =20 (define-public u-boot-wandboard (make-u-boot-package "wandboard" "arm-linux-gnueabihf")) =20 -(define-public u-boot-mx6cuboxi - (make-u-boot-package "mx6cuboxi" "arm-linux-gnueabihf")) +(define-public u-boot-mx6cubox + (make-u-boot-package "mx6cubox" "arm-linux-gnueabihf")) =20 +;; MISSING genimage.cfg (define-public u-boot-novena (make-u-boot-package "novena" "arm-linux-gnueabihf")) =20 +;; MISSING genimage.cfg (define-public u-boot-cubieboard (make-u-boot-package "Cubieboard" "arm-linux-gnueabihf")) =20 +;; MISSING genimage.cfg (define-public u-boot-puma-rk3399 (let ((base (make-u-boot-package "puma-rk3399" "aarch64-linux-gnu"))) (package --MP_/9K0XiqAtfURggO+eM8/Cr+B-- --Sig_/E0ELjbo9teysEvEuqmEpep7 Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEds7GsXJ0tGXALbPZ5xo1VCwwuqUFAlsmVYUACgkQ5xo1VCww uqVCKQf+JCFdaA+XuUnHIKhXGRD9xRCBrijMoUaZpYG84/UEg/y0BIteURCtPtqE frhotuhn17aeuJmvJCvT7zQ5TNRZ5zx9dbTTqbatn3VD3K3bOzf5LaDlFMh6T4lm xEi4R4Idmyxe/jPyoRciVFwoX4E/86gWM+oOc01fiSbzUwskbM6kB46JVA3fjDfv gPEOifdOt4f4gNXr6aNxgxEb4F0Yv0RP81ECFoho1ZUzp+pz5uHjPr3TxRF6GI33 H9E/8dD6SedKU1CrjVZmiHrqc65H0yX/7F98aAjNTGS8/zJkX5YZHARH3efqnwSK y1IuV55tD4zUt78huPVU+DED8rpf7A== =7WiX -----END PGP SIGNATURE----- --Sig_/E0ELjbo9teysEvEuqmEpep7-- From debbugs-submit-bounces@debbugs.gnu.org Sun Jun 17 16:33:15 2018 Received: (at 31416) by debbugs.gnu.org; 17 Jun 2018 20:33:15 +0000 Received: from localhost ([127.0.0.1]:54081 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fUeMN-0003VU-B9 for submit@debbugs.gnu.org; Sun, 17 Jun 2018 16:33:15 -0400 Received: from eggs.gnu.org ([208.118.235.92]:60219) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fUeML-0003VG-Rd for 31416@debbugs.gnu.org; Sun, 17 Jun 2018 16:33:14 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fUeMF-0001BH-LX for 31416@debbugs.gnu.org; Sun, 17 Jun 2018 16:33:08 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:55289) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fUeMF-0001BB-Hz; Sun, 17 Jun 2018 16:33:07 -0400 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=41606 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1fUeMF-00071d-5I; Sun, 17 Jun 2018 16:33:07 -0400 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Danny Milosavljevic Subject: Re: [bug#31416] [PATCH 3/4] bootloader: Add make-u-boot-bootloader. References: <20180511143515.23435-1-dannym@scratchpost.org> <20180511143652.26935-1-dannym@scratchpost.org> <20180511143652.26935-3-dannym@scratchpost.org> <87603rnbi5.fsf@gnu.org> <20180513125925.66a91367@scratchpost.org> <87in7qbppv.fsf@gnu.org> <20180514182953.3d4c4f3c@scratchpost.org> <87r2l8wmjk.fsf@gnu.org> <20180617022855.671a3ef6@scratchpost.org> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 29 Prairial an 226 de la =?utf-8?Q?R=C3=A9volution?= X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Sun, 17 Jun 2018 22:33:05 +0200 In-Reply-To: <20180617022855.671a3ef6@scratchpost.org> (Danny Milosavljevic's message of "Sun, 17 Jun 2018 02:28:55 +0200") Message-ID: <87in6hkvb2.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: 31416 Cc: 31416@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) Hello Danny, Danny Milosavljevic skribis: > I've researched a little in the mean time and found out that other projec= ts > DO have automated u-boot installation, for example: > > https://github.com/buildroot/buildroot/blob/master/board/olimex/a20_olinu= xino/genimage.cfg > > So we could leave this stuff mostly to them - although it would mean > we'd only support boards they support. Instead of using these .cfg files as-is, how about =E2=80=9Cimporting=E2=80= =9D them? That structure (or whatever) we discussed could contain essentially the relevant part of those .cfg files (the partitioning info founds in those files seems less relevant to me, or at least it seems like a separate issue.) WDYT? IOW, we could definitely take Buildroot as an inspiration (it=E2=80=99s pro= bably one of the best tools in this area), but maybe not reuse the actual files. Thanks, Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Sun Jun 17 17:41:50 2018 Received: (at 31416) by debbugs.gnu.org; 17 Jun 2018 21:41:50 +0000 Received: from localhost ([127.0.0.1]:54113 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fUfQj-0005C3-RI for submit@debbugs.gnu.org; Sun, 17 Jun 2018 17:41:50 -0400 Received: from dd26836.kasserver.com ([85.13.145.193]:53698) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fUfQh-0005Bs-Kg for 31416@debbugs.gnu.org; Sun, 17 Jun 2018 17:41:48 -0400 Received: from localhost (178.113.182.79.wireless.dyn.drei.com [178.113.182.79]) by dd26836.kasserver.com (Postfix) with ESMTPSA id 5ED03336296C; Sun, 17 Jun 2018 23:41:45 +0200 (CEST) Date: Sun, 17 Jun 2018 23:41:38 +0200 From: Danny Milosavljevic To: ludo@gnu.org (Ludovic =?ISO-8859-1?Q?Court=E8s?=) Subject: Re: [bug#31416] [PATCH 3/4] bootloader: Add make-u-boot-bootloader. Message-ID: <20180617234138.725002ef@scratchpost.org> In-Reply-To: <87in6hkvb2.fsf@gnu.org> References: <20180511143515.23435-1-dannym@scratchpost.org> <20180511143652.26935-1-dannym@scratchpost.org> <20180511143652.26935-3-dannym@scratchpost.org> <87603rnbi5.fsf@gnu.org> <20180513125925.66a91367@scratchpost.org> <87in7qbppv.fsf@gnu.org> <20180514182953.3d4c4f3c@scratchpost.org> <87r2l8wmjk.fsf@gnu.org> <20180617022855.671a3ef6@scratchpost.org> <87in6hkvb2.fsf@gnu.org> X-Mailer: Claws Mail 3.16.0 (GTK+ 2.24.31; x86_64-unknown-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; boundary="Sig_/.sR7aPvqy8emwujPn9Ug8aK"; protocol="application/pgp-signature" X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 31416 Cc: 31416@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) --Sig_/.sR7aPvqy8emwujPn9Ug8aK Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hi, On Sun, 17 Jun 2018 22:33:05 +0200 ludo@gnu.org (Ludovic Court=C3=A8s) wrote: > Instead of using these .cfg files as-is, how about =E2=80=9Cimporting=E2= =80=9D them? > That structure (or whatever) we discussed could contain > essentially the relevant part of those .cfg files Yeah > (the partitioning info > founds in those files seems less relevant to me Yes. Buildroot is a huge superset of what we actually need :). > IOW, we could definitely take Buildroot as an inspiration (it=E2=80=99s p= robably > one of the best tools in this area), but maybe not reuse the actual > files. The advantage if we reused the actual files is that we'd not have to mainta= in it so much ourselves. But if we use the solution, it's not actually that much work to maint= ain it. I've extracted the list of socs using u-boot-2018.05$ grep -C 1 -r SYS_SOC . |grep default |awk '{print $3}' |s= ort |uniq |grep '"' >Q and I got this list: "ae250" "ae3xx" "ag101" "am33xx" "apq8016" "apq8096" "armada100" "aspeed" "at91" "ath79" "au1x00" "baytrail" "bcm235xx" "bcm281xx" "bcm283x" "bcm3380" "bcmcygnus" "bcmnsp" "braswell" "broadwell" "coreboot" "davinci" "efi" "ep93xx" "exynos" "fsl-layerscape" "hi3798cv200" "hi6220" "highbank" "ivybridge" "keystone" "kirkwood" "lpc32xx" "ls102xa" "meson" "mvebu" "mx25" "mx27" "mx31" "mx35" "mx5" "mx6" "mx7" "mx7ulp" "mx8m" "mxs" "ns2" "omap3" "omap4" "omap5" "orion5x" "pic32mzda" "qemu" "quark" "queensbay" "rmobile" "rockchip" "s5pc1xx" "snapdragon" "socfpga" "socfpga_arria10" "spear" "stih410" "stm32mp" "stv0991" "sunxi" "tangier" "tegra114" "tegra124" "tegra186" "tegra20" "tegra210" "tegra30" "uniphier-v7" "vf610" "zynq" "zynqmp" Not that bad, eh? Next would be to find those in buildroot, extract the relevant information = from their genimage.cfg and unify them. But that's a little involved. A path would be: (1) Extract possible SYS_SOC and SYS_VENDOR from all u-boot Kconfigs (2) Find out which u-boot defconfigs would lead to those u-boot Kconfigs (3) Find out which buildroot defconfigs would lead to those u-boot defconfi= gs (4) Find out which buildroot board directory is used by each buildroot defc= onfig (5) Extract the genimage.cfg from each such buildroot board directory (6) Extract the u-boot installation specific parts from the genimage.cfg (7) Unify the set of "genimage.cfg" parts for this SOC and make sure they a= re always the same --Sig_/.sR7aPvqy8emwujPn9Ug8aK Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEds7GsXJ0tGXALbPZ5xo1VCwwuqUFAlsm1ZIACgkQ5xo1VCww uqUapQf/U2K5H8bKNPuwjVnHTtQoJs4XTwZdgDmiCksknqla9ndesZ83JUgu4DGI TFSutoS6jIaMtHnn/U/V9NATRBOiHxW+cKYk6yggh039VO1k7cFW9GVEjmw1/950 F60k601BO2p1HPLGIQnLhvZghDSRzJpK2ZGWh56vVGBsuIHBqm2/P8q5t3cvksGW a8AvQ04GcLRM8Et3fqV7XfDsrYQZeVSTO6K3behjbT4ZP081RgupYbr++l85HKn1 zPgM9s/ZD58EqsU0VTeSUJiMSX9woySXROWHtEl0UspW+C/CjeIi0pwN9mjCqiQu twUq+Lpl+NcXR4xSV19/o3QwjS1mIA== =vHbM -----END PGP SIGNATURE----- --Sig_/.sR7aPvqy8emwujPn9Ug8aK-- From debbugs-submit-bounces@debbugs.gnu.org Mon Jun 18 04:25:12 2018 Received: (at 31416) by debbugs.gnu.org; 18 Jun 2018 08:25:12 +0000 Received: from localhost ([127.0.0.1]:54345 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fUpTM-0007Kk-KH for submit@debbugs.gnu.org; Mon, 18 Jun 2018 04:25:12 -0400 Received: from eggs.gnu.org ([208.118.235.92]:38206) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fUpTK-0007KW-Qm for 31416@debbugs.gnu.org; Mon, 18 Jun 2018 04:25:11 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fUpTC-0001YX-IB for 31416@debbugs.gnu.org; Mon, 18 Jun 2018 04:25:05 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:34888) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fUpTC-0001YN-EG; Mon, 18 Jun 2018 04:25:02 -0400 Received: from [193.50.110.191] (port=58248 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1fUpTB-00053a-Vn; Mon, 18 Jun 2018 04:25:02 -0400 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Danny Milosavljevic Subject: Re: [bug#31416] [PATCH 3/4] bootloader: Add make-u-boot-bootloader. References: <20180511143515.23435-1-dannym@scratchpost.org> <20180511143652.26935-1-dannym@scratchpost.org> <20180511143652.26935-3-dannym@scratchpost.org> <87603rnbi5.fsf@gnu.org> <20180513125925.66a91367@scratchpost.org> <87in7qbppv.fsf@gnu.org> <20180514182953.3d4c4f3c@scratchpost.org> <87r2l8wmjk.fsf@gnu.org> <20180617022855.671a3ef6@scratchpost.org> <87in6hkvb2.fsf@gnu.org> <20180617234138.725002ef@scratchpost.org> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 30 Prairial an 226 de la =?utf-8?Q?R=C3=A9volution?= X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Mon, 18 Jun 2018 10:25:00 +0200 In-Reply-To: <20180617234138.725002ef@scratchpost.org> (Danny Milosavljevic's message of "Sun, 17 Jun 2018 23:41:38 +0200") Message-ID: <874li0y00z.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: 31416 Cc: 31416@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) Hi Danny, Danny Milosavljevic skribis: > On Sun, 17 Jun 2018 22:33:05 +0200 > ludo@gnu.org (Ludovic Court=C3=A8s) wrote: [...] >> IOW, we could definitely take Buildroot as an inspiration (it=E2=80=99s = probably >> one of the best tools in this area), but maybe not reuse the actual >> files. > > The advantage if we reused the actual files is that we'd not have to main= tain > it so much ourselves. [...] > Next would be to find those in buildroot, extract the relevant informatio= n from their genimage.cfg and unify them. > But that's a little involved. A path would be: > > (1) Extract possible SYS_SOC and SYS_VENDOR from all u-boot Kconfigs > (2) Find out which u-boot defconfigs would lead to those u-boot Kconfigs > (3) Find out which buildroot defconfigs would lead to those u-boot defcon= figs > (4) Find out which buildroot board directory is used by each buildroot de= fconfig > (5) Extract the genimage.cfg from each such buildroot board directory > (6) Extract the u-boot installation specific parts from the genimage.cfg > (7) Unify the set of "genimage.cfg" parts for this SOC and make sure they= are always the same Sounds like a plan. Though honestly, I think it=E2=80=99s fine if we have fewer configs availab= le as long as they=E2=80=99re known good. It=E2=80=99s not a goal IMO to have as= many supported boards as Buildroot. So I=E2=80=99d suggest defining the API and using it, taking inspirat= ion from those genimage.cfg files as needed. Thanks, Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Fri Jul 21 12:54:02 2023 Received: (at 31416) by debbugs.gnu.org; 21 Jul 2023 16:54:02 +0000 Received: from localhost ([127.0.0.1]:34771 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qMtOE-0007aL-BR for submit@debbugs.gnu.org; Fri, 21 Jul 2023 12:54:02 -0400 Received: from mail-qk1-x72c.google.com ([2607:f8b0:4864:20::72c]:53384) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qMtOA-0007Zn-Eb for 31416@debbugs.gnu.org; Fri, 21 Jul 2023 12:54:00 -0400 Received: by mail-qk1-x72c.google.com with SMTP id af79cd13be357-76ae5b44426so29347485a.2 for <31416@debbugs.gnu.org>; Fri, 21 Jul 2023 09:53:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1689958432; x=1690563232; h=mime-version:user-agent:message-id:in-reply-to:date:references :subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to; bh=+q7jooAheDhLW/7kmzC4631cjfA9g/yTGIwom3DtQYM=; b=olYRggCJ7uZveJ/9xPpADVYCt2OOjXEsiUgQh4uAApFV4uh/u3r21lukQX+PQWTY4u mvWVtmJ3xDstZvUIPHBrWh3ewnpEFEk20IfOXKzW71/FRVd/8ucIQcOOsfuXNhO+RMru UKHpAYD540S0OtecTQNXZL4hYdV4FJLcFZkXJZphz7WutWYHkRMtpzQ73NOjPqP0mwJv eEKxQGsjaQVeW77Cly6s1Mz4ilPUedV2eG4jOL5dIdesGeuQ7JtjG2G3QPkfvhiD/3FA b4gGeeF6lHeVqvGU92WZLNrXo649WwfxzVNrpmC0ma/R9Ezfu70o+2FD5ols31tdGBmt iGlw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1689958432; x=1690563232; h=mime-version:user-agent:message-id:in-reply-to:date:references :subject:cc:to:from:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=+q7jooAheDhLW/7kmzC4631cjfA9g/yTGIwom3DtQYM=; b=cQzIjNu30qlUu+dOzXqqk399T3DF7G/3TS8RTDfA40WyrDwdzmhdTQgdKq0HXxFJSA aO33cjQwh+ez10vPLysB1XwsmwaZ+uczMqjGJxEgyo+4XimtBss/cr510eAzmrApYtbM jU60XMbDTn0J1Eo3u7NLjrymovUyo30Wdg+SGSY/thH4bsqARozu+9Memrg2+VBRQ8mm ujwyZaCQbZts7WOJN9a9eY/l91dN87Ndvh3GgVedoc/a3bEBOKp8jIGxaiDjg++nUtpX SRe4MnRkAYxoMyWv1Y4KQd9CT7bDvyLKjtgMdwfzZHn9nJ7zupT2c04Etb70xCMfRwrE 8TOA== X-Gm-Message-State: ABy/qLaNkosFJBOnoV/fE8r386Pv3UFR84e7SCEO9hza9Hg+GrDz5fsT MxntlvuPPj7gvWm7SMTCxcW6nTt+10U= X-Google-Smtp-Source: APBJJlEtzoCU8glhV+l7Eg9YsdtjXnwnlZFbQ9u0fXOqpxaK6bK1pPnuRdt50TtnharnRv6PtTLaCg== X-Received: by 2002:a05:6214:2b8a:b0:62f:f071:65fc with SMTP id kr10-20020a0562142b8a00b0062ff07165fcmr651396qvb.1.1689958432676; Fri, 21 Jul 2023 09:53:52 -0700 (PDT) Received: from hurd (dsl-10-135-166.b2b2c.ca. [72.10.135.166]) by smtp.gmail.com with ESMTPSA id r25-20020a0c9e99000000b006369e619438sm1427569qvd.32.2023.07.21.09.53.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 21 Jul 2023 09:53:52 -0700 (PDT) From: Maxim Cournoyer To: Danny Milosavljevic Subject: Re: bug#31416: [PATCH 0/4] Generalize bootloader installer selection. References: <20180511143515.23435-1-dannym@scratchpost.org> Date: Fri, 21 Jul 2023 12:53:50 -0400 In-Reply-To: <20180511143515.23435-1-dannym@scratchpost.org> (Danny Milosavljevic's message of "Fri, 11 May 2018 16:35:15 +0200") Message-ID: <87fs5hi4td.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 31416 Cc: 31416@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi Danny, Danny Milosavljevic writes: > Danny Milosavljevic (4): > system: Add os-with-u-boot. > bootloader: install-u-boot: Automatically select the correct > installer. > bootloader: Add make-u-boot-bootloader. > bootloader: Simplify bootloader installer selection. Is there something to salvage here, 5 years later, or should we close this? -- Thanks, Maxim From debbugs-submit-bounces@debbugs.gnu.org Fri Sep 01 14:47:26 2023 Received: (at 31416-done) by debbugs.gnu.org; 1 Sep 2023 18:47:26 +0000 Received: from localhost ([127.0.0.1]:33885 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qc9Az-0005Vk-OH for submit@debbugs.gnu.org; Fri, 01 Sep 2023 14:47:26 -0400 Received: from mail-qk1-x72a.google.com ([2607:f8b0:4864:20::72a]:46301) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qc9Ax-0005VV-MQ for 31416-done@debbugs.gnu.org; Fri, 01 Sep 2023 14:47:24 -0400 Received: by mail-qk1-x72a.google.com with SMTP id af79cd13be357-76ef8b91a72so136418985a.0 for <31416-done@debbugs.gnu.org>; Fri, 01 Sep 2023 11:47:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1693594028; x=1694198828; darn=debbugs.gnu.org; h=mime-version:user-agent:message-id:in-reply-to:date:references :subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to; bh=mY9fpUH7cDa8SGJhMkHC1SeUN7xceN/k86r0NE3J2pQ=; b=LY3+szbOptdJkHboQ2Q44b+nRMhSpADFSJTL6+JxKexWp4AFdJznYqwll2RBmh9Isz 3ebqk/tFRsFKx8fvLaqv3sjfaeWCV/rjbmXon92F1qPN/bT+MGj6Y04TQW2L8okrZAjs VnXwK6UtlP+GXWNqe6+2+kZyTcNXvAdpgoeD7yX2XpbWYr59neBK7CNMqCZadCTOGXS+ 5xOiAs47oHrdsH9qdjYFEckaAcy9PBhEv0mBQL30Me0Tr3XQsUOojFfHawSz6Or2G2Qf HGTPnSfQ/ycYRFmlyj5f9nW5CRn7AMeRHJb20JmDy1rHPClnLKAtorfRqZqDzvrQG2Cp lubw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1693594028; x=1694198828; h=mime-version:user-agent:message-id:in-reply-to:date:references :subject:cc:to:from:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=mY9fpUH7cDa8SGJhMkHC1SeUN7xceN/k86r0NE3J2pQ=; b=dIrh6Mf+K40cmzdqSJMC21SqSuoV7G63EIY5rUCBbvPwrkRO19miUD6mKEy3g4OMFB f6uw8iUHSePCZ4Hm+EQprg5st4/VHVjIbwq67qBQmIycu8iwoW74YjaQQswrtQPX4bhS RyFcVsn4M7x/MjEzg/eCn04ekbsnLx+B4Ar0R6Tpdc4aLh66UH1yH7HXM/Dvm59BwrS7 ICVpibcUO+YFAoTzG8FsUzIwczngm8wK5c3SKJd7/77xxly+iu8NwVncFinpd9DOqt1v 21DTVQenqDKUoWGeQP/mp/397zDa8cKlZBfzLfj34qF6JjuwJURl3f2Fmu69Hf4+2bou B8JA== X-Gm-Message-State: AOJu0YybeDC4wiy6X7Xoheplso/wP56Yv9ADJWGpjTYICEvcjk+kII4i n+5mH+zNNi9xGBxW2uXL9o4d/loswAFLfw== X-Google-Smtp-Source: AGHT+IFCA23V02fTDIp59tXyELt86wIzPAPOr3TwOlLvrq/H+R5bF1kiMtvssoFecadHMH5RPlP0ng== X-Received: by 2002:a05:622a:1805:b0:412:964c:c4d2 with SMTP id t5-20020a05622a180500b00412964cc4d2mr3820930qtc.0.1693594028432; Fri, 01 Sep 2023 11:47:08 -0700 (PDT) Received: from hurd (dsl-154-228.b2b2c.ca. [66.158.154.228]) by smtp.gmail.com with ESMTPSA id 19-20020a05620a06d300b0076f16a00694sm1566358qky.78.2023.09.01.11.47.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 01 Sep 2023 11:47:07 -0700 (PDT) From: Maxim Cournoyer To: Danny Milosavljevic Subject: Re: bug#31416: [PATCH 0/4] Generalize bootloader installer selection. References: <20180511143515.23435-1-dannym@scratchpost.org> <87fs5hi4td.fsf@gmail.com> Date: Fri, 01 Sep 2023 14:47:06 -0400 In-Reply-To: <87fs5hi4td.fsf@gmail.com> (Maxim Cournoyer's message of "Fri, 21 Jul 2023 12:53:50 -0400") Message-ID: <87jzt920k5.fsf_-_@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 31416-done Cc: 31416-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi, Maxim Cournoyer writes: > Hi Danny, > > Danny Milosavljevic writes: > >> Danny Milosavljevic (4): >> system: Add os-with-u-boot. >> bootloader: install-u-boot: Automatically select the correct >> installer. >> bootloader: Add make-u-boot-bootloader. >> bootloader: Simplify bootloader installer selection. > > Is there something to salvage here, 5 years later, or should we close > this? Closing. -- Thanks, Maxim From unknown Tue Aug 19 23:28:18 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Sat, 30 Sep 2023 11:24:09 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator