[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
U-Boot for Raspberry Pi
From: |
phodina |
Subject: |
U-Boot for Raspberry Pi |
Date: |
Sat, 30 Oct 2021 21:39:48 +0000 |
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"))
- U-Boot for Raspberry Pi,
phodina <=