NixOS on ARM/Radxa ROCK5 Model B: Difference between revisions

imported>Jakubgs
Updating with info about EDK2 UEFI firmware.
Pigs (talk | contribs)
m Add category
 
(6 intermediate revisions by 6 users not shown)
Line 31: Line 31:
* '''NET''': 2.5 Gigabit Ethernet
* '''NET''': 2.5 Gigabit Ethernet
* '''USB''': 2x USB 3.1 Type-A, 2x USB 2.0 Type-A
* '''USB''': 2x USB 3.1 Type-A, 2x USB 2.0 Type-A
* '''PCIe''': 1x M.2 Key M connector with PCIe 2.1 x1
* '''PCIe''': M.2 Key E connector with PCIe 2.1 x1, M.2 Key M connector with PCIe 3.0 x4


== Status ==
== Status ==
Line 37: Line 37:
Support of this system is YMMV (your mileage may vary), and depends on vendor-provided BSP (Board Support Package) based components.
Support of this system is YMMV (your mileage may vary), and depends on vendor-provided BSP (Board Support Package) based components.


Three types of bootloaders are available:
Two kinds of bootloaders are available in different variants:
 
* U-Boot
** [https://github.com/u-boot/u-boot/ Mainline] - Supports all storage boot options, including NVMe
** [https://dl.radxa.com/rock5/sw/images/loader/rock-5b/ Vendor] - Works well for eMMC and SD card boot, not for NVMe.
** [https://github.com/samueldr/Tow-Boot/tree/wip/rock5-vendor Not-TowBoot] - Supports eMMC and SD card, NVMe sometimes.
*** Vendor U-Boot built using the TowBoot build infrastructure
* EDK2/TianoCore
** [https://github.com/edk2-porting/edk2-rk3588 EDK2 UEFI Firmware] - Supports all storage boot options, including NVMe.


* [https://dl.radxa.com/rock5/sw/images/loader/rock-5b/ Vendor U-Boot] - Works well for eMMC and SD card boot, not for NVMe.
* [https://github.com/samueldr/Tow-Boot/tree/wip/rock5-vendor Community U-Boot] - Supports eMMC and SD card, NVMe sometimes.
* [https://github.com/edk2-porting/edk2-rk3588 EDK2 UEFI Firmware] - Supports all storage boot options, including NVMe.


The official hardware documentation can be found [https://wiki.radxa.com/Rock5/hardware/5b on the Radxa wiki].
The official hardware documentation can be found [https://wiki.radxa.com/Rock5/hardware/5b on the Radxa wiki].
Line 57: Line 62:
=== Community UEFI Firmware ===
=== Community UEFI Firmware ===


The best available bootloader is [EDK2 UEFI firmware for Rockchip RK3588 platforms](https://github.com/edk2-porting/edk2-rk3588). The [`0.9.1`](https://github.com/edk2-porting/edk2-rk3588/releases/tag/v0.9.1) release is confirmed working.
The best available bootloader is [https://github.com/edk2-porting/edk2-rk3588 EDK2 UEFI firmware for Rockchip RK3588 platforms]. The [https://github.com/edk2-porting/edk2-rk3588/releases/tag/v0.9.1 v0.9.1] release is confirmed working.


In order to flash this bootloader we'll need to download two files:
In order to flash this bootloader we'll need to download two files:


* [https://dl.radxa.com/rock5/sw/images/loader/rock-5b/release/rk3588_spl_loader_v1.08.111.bin <tt>rk3588_spl_loader_v1.08.111.bin</tt>] - SPI bootloader image.
* [https://dl.radxa.com/rock5/sw/images/loader/rock-5b/release/rk3588_spl_loader_v1.15.113.bin <tt>rk3588_spl_loader_v1.15.113.bin</tt>] - SPI bootloader image.
* [https://github.com/edk2-porting/edk2-rk3588/releases/download/v0.9.1/rock-5b_UEFI_Release_v0.9.1.img <tt>rock-5b_UEFI_Release_v0.9.1.img</tt>] - UEFI bootloader image.
* [https://github.com/edk2-porting/edk2-rk3588/releases/download/v0.9.1/rock-5b_UEFI_Release_v0.9.1.img <tt>rock-5b_UEFI_Release_v0.9.1.img</tt>] - UEFI bootloader image.


Line 77: Line 82:
Write LBA from file (100%)
Write LBA from file (100%)


[nix-shell:~/rk3588]$ sudo rkdeveloptool rb
[nix-shell:~/rk3588]$ sudo rkdeveloptool rd
</syntaxhighlight>
</syntaxhighlight>


Line 139: Line 144:
</syntaxhighlight>
</syntaxhighlight>


[[Category:Hardware]]
[[Category:NixOS on ARM]]