unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
* Re: U-Boot for Raspberry Pi
@ 2021-10-31 23:09 Stefan
  2021-11-02 11:00 ` phodina
  0 siblings, 1 reply; 14+ messages in thread
From: Stefan @ 2021-10-31 23:09 UTC (permalink / raw)
  To: phodina; +Cc: Vagrant Cascadian, help-guix

Hi!

There is already a patch series available since May – patiently awaiting a review –, which brings support for the Raspberry Pi. It even supports booting via NFS, which helps to avoid all the common troubles with microSD cards. 

For the usual mircoSD card installation just partition and format it as usual, and put the well known bootloader blob on the FAT partition. Then do a ‘guix system init config.scm /mnt/microsd’. The patch series contains an example configuration at ‘gnu/system/examples/raspberry-pi-64.tmpl’.   

Take a look here: <http://issues.guix.gnu.org/48314#10>


In hope to get more attention and interest for a review, allow me to add two side notes.

Ever in need for a Guix System on an USB thump drive? Give the new ‘grub-efi-netboot-removable-bootloader’ a try instead of ‘grub-efi-bootloader’. It is not only usable for booting over network.

Ever in need to quickly modify the kernel Linux? Give the new function ‘modify-linux’ a try. For the Raspberry this is needed to get the kernel linux-libre working. (By the way, would Guix System be the first distribution using a libre kernel on the Raspberry?)

For example to enable NFS root functionality for virtual machines, use a kernel definition like this in your operating-system definition:

(kernel (modify-linux #:configs '("CONFIG_E1000=y"
                                  "CONFIG_ROOT_NFS=y"
                                  "CONFIG_NFS_FS=y"
                                  "CONFIG_NFS_V4=y")))

Bye

Stefan



^ permalink raw reply	[flat|nested] 14+ messages in thread
* U-Boot for Raspberry Pi
@ 2021-10-30 21:39 phodina via
  2021-10-30 22:05 ` Vagrant Cascadian
  0 siblings, 1 reply; 14+ messages in thread
From: phodina via @ 2021-10-30 21:39 UTC (permalink / raw)
  To: help-guix

Hi,

I'm trying to run Guix System on Raspberry Pi. In order to do that we need a way to boot it up.

There is the nonfree Broadcom bootloader, which does the job and it's used by many distributions.

However, there is also an open source alternative as U-Boot supports the BCM SoCs.

I had look at different u-boot definitions under gnu/packages/bootloaders.scm and gnu/bootloader.scm.

From my understanding the way how to define a new board is find the defconfig name in the configs directory in U-Boot.
Then use the make-u-boot-package with the config name and target triplet to define the package.

Unfortunately, the definitions below are not found by Guix if I run guix search -L. raspberry

If I inherit from the u-boot itself and specify the name, it's then in the list and I can build it.
But the I can't use the package for the bootloader record.

There must be something trivial I had overlooked.

Could you please guide me on the procedure for porting the u-boot to new board as a new Guix package?

--8<---------------cut here---------------start------------->8---
(define-module (raspberry-pi)
#:use-module (guix packages)
#:use-module (gnu packages bootloaders)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
#:use-module ((guix licenses) #:prefix license:))

(define-public u-boot-raspberry-pi-2
(make-u-boot-package "rpi_2" "arm-linux-gnueabihf"))

(define-public u-boot-raspberry-pi-3
(make-u-boot-package "rpi_3" "aarch64-linux-gnu"))

(define-public u-boot-raspberry-pi-4
(make-u-boot-package "rpi_4" "aarch64-linux-gnu"))

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2022-02-22  9:09 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-31 23:09 U-Boot for Raspberry Pi Stefan
2021-11-02 11:00 ` phodina
2021-11-02 13:24   ` Stefan
2022-02-16 15:55     ` Reza Alizadeh Majd
2022-02-18 23:12       ` Ricardo Wurmus
2022-02-21 11:08         ` Reza Alizadeh Majd
2022-02-21 11:14           ` Ricardo Wurmus
2022-02-22  7:36             ` Reza Alizadeh Majd
2022-02-22  8:30               ` Ricardo Wurmus
2022-02-22  9:05                 ` Vincent Legoll
2022-02-22  9:07                   ` Vincent Legoll
  -- strict thread matches above, loose matches on Subject: below --
2021-10-30 21:39 phodina via
2021-10-30 22:05 ` Vagrant Cascadian
2021-10-31  6:47   ` phodina

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).