NixOS on ARM/Radxa ROCK 4: Difference between revisions

From NixOS Wiki
Add NixOS on ROCK 4 page
 
Update to reflect that PRs were merged into nixos-rockchip and minor related cleanup.
Line 33: Line 33:
* '''PCIe''': M.2 M Key M connector (4-lane PCIe 2.1) supports NVMe SSD
* '''PCIe''': M.2 M Key M connector (4-lane PCIe 2.1) supports NVMe SSD


The @msgilligan PR below has been tested with both the ROCK 4B+ and ROCK 4 SE variants.
The [https://github.com/nabam/nixos-rockchip nixos-rockchip] SD-card images have been tested with both the ROCK 4B+ and ROCK 4 SE variants.


== Status ==
== Status ==
Line 51: Line 51:
=== U-Boot Firmware ===
=== U-Boot Firmware ===


* The @msgilligan PR rely's on `nixos-rockchip` which in turn uses the mainline U-Boot repository.
* `nixos-rockchip` uses the mainline U-Boot repository.
* There is also support for ROCK 4 U-Boot in Nixpkgs, but testing and documentation for using this version of U-Boot is not available here yet.
* There is also support for ROCK 4 U-Boot in Nixpkgs, but testing and documentation for using this version of U-Boot is not available here yet.


== System configuration ==
== System configuration ==


Use the instructions in the [https://github.com/nabam/nixos-rockchip/blob/main/README.md README], but until the PR is merged, you'll need to checkout the PR branch.
Use the instructions in the [https://github.com/nabam/nixos-rockchip/blob/main/README.md README].


Use the following command to build the image:
Use the following command to build the Rock 4B image:


<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
Line 64: Line 64:
</syntaxhighlight>
</syntaxhighlight>


=== @msgilligan's PR to @nabam's flake ===
or for the Rock 4SE:
 
<syntaxhighlight lang="bash">
nix build .#RadxaRock4SE
</syntaxhighlight>
 
=== @nabam's nixos-rockchip ===


Nix flake for building several Rockchip SBC images, see [https://github.com/nabam/nixos-rockchip GitHub nabam/nixos-rockchip]
Nix flake for building several Rockchip SBC images, see [https://github.com/nabam/nixos-rockchip GitHub nabam/nixos-rockchip]
@msgilligan's WIP PR to add ROCK 4 support (WIP, but tested on ROCK 4B+ and ROCK 4 SE): [https://github.com/nabam/nixos-rockchip/pull/27 nabam/nixos-rockchip PR #27]

Revision as of 07:01, 5 December 2024

Radxa ROCK 4
Radxa Rock 4
Manufacturer Radxa
Architecture AArch64
Bootloader U-Boot
Boot order SPI NOR Flash, eMMC, SD
Maintainer msgilligan

The Radxa ROCK 4B+ is a Single-Board Computer with a Rockchip RK3399 SoC.

  • CPU: ARM Cortex-A72 and Cortex-A53
  • GPU: Mali-T860 MP4
  • RAM: 2GB/4GB LPDDR4
  • MMC: eMMC Connector for up to 128GB
  • NET: 1 Gigabit Ethernet
  • USB: 1x USB3 OTG/HOST Type-A, 1x USB 3 Type-A, 2x USB 2 Type-A
  • PCIe: M.2 M Key M connector (4-lane PCIe 2.1) supports NVMe SSD

The nixos-rockchip SD-card images have been tested with both the ROCK 4B+ and ROCK 4 SE variants.

Status

Support of this system is YMMV (your mileage may vary).

U-Boot bootloaders are available in different variants:

  • U-Boot
    • Mainline - Supports ?? boot options
    • Nixpkgs - not tested yet by @msgilligan

The official hardware documentation can be found on the Radxa wiki.

Bootloader Firmware

U-Boot Firmware

  • `nixos-rockchip` uses the mainline U-Boot repository.
  • There is also support for ROCK 4 U-Boot in Nixpkgs, but testing and documentation for using this version of U-Boot is not available here yet.

System configuration

Use the instructions in the README.

Use the following command to build the Rock 4B image:

nix build .#RadxaRock4

or for the Rock 4SE:

nix build .#RadxaRock4SE


@nabam's nixos-rockchip

Nix flake for building several Rockchip SBC images, see GitHub nabam/nixos-rockchip