gnu: Add u-boot-firefly-rk3399.
* gnu/packages/bootloaders (u-boot-firefly-rk3399): New variable. * gnu/bootloader/u-boot (install-firefly-rk3399-u-boot): New variable. (u-boot-firefly-rk3399-bootloader): New variable. * gnu/system/install (define firefly-rk3399-installation-os): New variable.
This commit is contained in:
parent
e52b953434
commit
545ff7b784
@ -28,6 +28,7 @@
|
||||
u-boot-a20-olinuxino-micro-bootloader
|
||||
u-boot-bananapi-m2-ultra-bootloader
|
||||
u-boot-beaglebone-black-bootloader
|
||||
u-boot-firefly-rk3399-bootloader
|
||||
u-boot-mx6cuboxi-bootloader
|
||||
u-boot-nintendo-nes-classic-edition-bootloader
|
||||
u-boot-novena-bootloader
|
||||
@ -92,6 +93,15 @@
|
||||
(write-file-on-device u-boot (stat:size (stat u-boot))
|
||||
device (* 512 512)))))
|
||||
|
||||
(define install-firefly-rk3399-u-boot
|
||||
#~(lambda (bootloader device mount-point)
|
||||
(let ((idb (string-append bootloader "/libexec/idbloader.img"))
|
||||
(u-boot (string-append bootloader "/libexec/u-boot.itb")))
|
||||
(write-file-on-device idb (stat:size (stat idb))
|
||||
device (* 64 512))
|
||||
(write-file-on-device u-boot (stat:size (stat u-boot))
|
||||
device (* 16384 512)))))
|
||||
|
||||
(define install-rock64-rk3328-u-boot
|
||||
#~(lambda (bootloader device mount-point)
|
||||
(let ((idb (string-append bootloader "/libexec/idbloader.img"))
|
||||
@ -169,6 +179,13 @@
|
||||
(inherit u-boot-allwinner-bootloader)
|
||||
(package u-boot-bananapi-m2-ultra)))
|
||||
|
||||
(define u-boot-firefly-rk3399-bootloader
|
||||
;; SD and eMMC use the same format
|
||||
(bootloader
|
||||
(inherit u-boot-bootloader)
|
||||
(package u-boot-firefly-rk3399)
|
||||
(installer install-firefly-rk3399-u-boot)))
|
||||
|
||||
(define u-boot-mx6cuboxi-bootloader
|
||||
(bootloader
|
||||
(inherit u-boot-imx-bootloader)
|
||||
|
@ -785,6 +785,28 @@ to Novena upstream, does not load u-boot.img from the first partition.")
|
||||
`(("firmware" ,arm-trusted-firmware-rk3328)
|
||||
,@(package-native-inputs base))))))
|
||||
|
||||
(define-public u-boot-firefly-rk3399
|
||||
(let ((base (make-u-boot-package "firefly-rk3399" "aarch64-linux-gnu")))
|
||||
(package
|
||||
(inherit base)
|
||||
(version (package-version u-boot-2019.10))
|
||||
(source (package-source u-boot-2019.10))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments base)
|
||||
((#:phases phases)
|
||||
`(modify-phases ,phases
|
||||
(add-after 'unpack 'set-environment
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(setenv "BL31" (string-append (assoc-ref inputs "firmware")
|
||||
"/bl31.elf"))
|
||||
#t))
|
||||
;; Phases do not succeed on the bl31 ELF.
|
||||
(delete 'strip)
|
||||
(delete 'validate-runpath)))))
|
||||
(native-inputs
|
||||
`(("firmware" ,arm-trusted-firmware-rk3399)
|
||||
,@(package-native-inputs base))))))
|
||||
|
||||
(define-public u-boot-rockpro64-rk3399
|
||||
(let ((base (make-u-boot-package "rockpro64-rk3399" "aarch64-linux-gnu")))
|
||||
(package
|
||||
|
@ -60,6 +60,7 @@
|
||||
mx6cuboxi-installation-os
|
||||
nintendo-nes-classic-edition-installation-os
|
||||
novena-installation-os
|
||||
firefly-rk3399-installation-os
|
||||
pine64-plus-installation-os
|
||||
pinebook-installation-os
|
||||
rock64-installation-os
|
||||
@ -560,6 +561,11 @@ The bootloader BOOTLOADER is installed to BOOTLOADER-TARGET."
|
||||
"/dev/mmcblk1" ; eMMC storage
|
||||
"ttyS0"))
|
||||
|
||||
(define firefly-rk3399-installation-os
|
||||
(embedded-installation-os u-boot-firefly-rk3399-bootloader
|
||||
"/dev/mmcblk0" ; SD card/eMMC (SD priority) storage
|
||||
"ttyS2")) ; UART2 connected on the Pi2 bus
|
||||
|
||||
(define mx6cuboxi-installation-os
|
||||
(embedded-installation-os u-boot-mx6cuboxi-bootloader
|
||||
"/dev/mmcblk0" ; SD card storage
|
||||
|
Loading…
Reference in New Issue
Block a user