|
| 1 | +--- |
| 2 | +title: "FAQ" |
| 3 | +description: "Frequently Asked Questions" |
| 4 | +summary: "" |
| 5 | +date: 2023-09-07T16:04:48+02:00 |
| 6 | +lastmod: 2023-09-07T16:04:48+02:00 |
| 7 | +draft: false |
| 8 | +weight: 20 |
| 9 | +toc: true |
| 10 | +seo: |
| 11 | + title: "" # custom title (optional) |
| 12 | + description: "" # custom description (recommended) |
| 13 | + canonical: "" # custom canonical URL (optional) |
| 14 | + noindex: false # false (default) or true |
| 15 | +--- |
| 16 | + |
| 17 | +This FAQ collects frequently asked questions about using OpenCCA on different hardware and configurations. |
| 18 | + |
| 19 | + |
| 20 | +{{< details "Q: I want to run OpenCCA on Rock 5B+. What do I have to change?" >}} |
| 21 | + |
| 22 | +_September 2025_ |
| 23 | + |
| 24 | +We have not had the chance to test the [Rock 5B+](https://radxa.com/products/rock5/5bp/) yet, but it seems that it directly addresses one of the biggest shortcomings of the Rock 5B that we have encountered: |
| 25 | + |
| 26 | +On the 5B, power and firmware flashing both go through the same USB-C port. |
| 27 | +When connecting the board to a host computer for firmware flashing, this often does not provide enough current for normal system operations. |
| 28 | + |
| 29 | +One workaround was to use a USB-C dock with PD from a power brick while still exposing the data lines for flashing. However, many USB-C docks do not implement USB-C PD correctly. This causes [power resets and reboot loops](https://gitlab.collabora.com/hardware-enablement/rockchip-3588/linux/-/issues/8). Radxa hosts a community list of compatible power supplies [here](https://wiki.radxa.com/Rock5/5b/power_supply). |
| 30 | + |
| 31 | +While the 5B+ uses the same SoC, there are still some changes required to make it work: |
| 32 | + |
| 33 | ++ The 5B+ integrates LPDDR5 instead of LPDDR4 RAM, so the 5B+ requires new BL1 firmware blobs that bring up the DRAM before U-Boot SPL (BL2). Radxa probably provides these blobs somewhere. |
| 34 | + |
| 35 | ++ There are device tree changes required for U-Boot proper and Linux to make use of the peripherals. A quick search shows a [device tree file](https://gitlab.collabora.com/hardware-enablement/rockchip-3588/linux/-/blob/rockchip-devel/arch/arm64/boot/dts/rockchip/rk3588-rock-5b-plus.dts) for the 5B+ already. |
| 36 | + |
| 37 | ++ TF-A and RMM are board-agnostic and have a single configuration for the SoC, so this should work right away. To be compatible with as many configurations as possible, we currently limit the addressable RAM to 4GB as we have not implemented dynamic RAM discovery: [RMM](https://github.com/opencca/tf-rmm/blob/opencca/main/configs/rk3588_defcfg.cmake#L13), [TF-A](https://github.com/opencca/arm-trusted-firmware/blob/opencca/main/plat/rockchip/rk3588/opencca/rk3588_opencca.h#L71), [U-Boot](https://github.com/opencca/u-boot/commit/219910188adc59a6f17cc192044880ce76e8dc2a). |
| 38 | + |
| 39 | +A ballpark estimate is that OpenCCA bring-up on the Rock 5B+ will be less work than on other RK3588 derivatives (e.g., Orange5 Plus), but it will still require some tinkering. |
| 40 | + |
| 41 | +We typically order Rock 5B boards from Aliexpress and it takes around 3 weeks until they arrive in Switzerland: |
| 42 | + |
| 43 | +- [Board](https://de.aliexpress.com/item/1005007507141308.html?spm=a2g0o.order_detail.order_detail_item.3.4e1d6368VO4dVf&gatewayAdapt=glo2deu) |
| 44 | +- [Dock](https://www.amazon.de/dp/B08CKXNJZS) |
| 45 | +- [Power Brick](https://www.amazon.de/dp/B094QKV6S8) |
| 46 | +- [eMMC](https://de.aliexpress.com/item/1005007003959424.html?spm=a2g0o.order_list.order_list_main.35.4f2418023Ja2xZ&gatewayAdapt=glo2deu) |
| 47 | +- [Flashing Getting Started](https://github.com/opencca/opencca-flash?tab=readme-ov-file#manual-flashing) |
| 48 | + |
| 49 | + |
| 50 | +{{< /details >}} |
| 51 | + |
| 52 | + |
| 53 | +{{< details "Q: How can I use more than 4GB of RAM on the Rock 5B?" >}} |
| 54 | +_August 2025_ |
| 55 | + |
| 56 | +Our current implementation of the RK3588 platform limits the memory size exposed to Linux to 4 GB. This way OpenCCA works on all configurations of the RK3588, in particular the 4GB model. |
| 57 | + |
| 58 | +The firmware currently does not support dynamic RAM discovery and assumes 4GB in TF-A, RMM, and Linux, but this is mostly for compatibility and can be changed in the firmware. |
| 59 | + |
| 60 | +Some pointers to change this: |
| 61 | +[RMM](https://github.com/opencca/tf-rmm/blob/opencca/main/configs/rk3588_defcfg.cmake#L13), [TF-A](https://github.com/opencca/arm-trusted-firmware/blob/opencca/main/plat/rockchip/rk3588/opencca/rk3588_opencca.h#L71), [U-Boot](https://github.com/opencca/u-boot/commit/219910188adc59a6f17cc192044880ce76e8dc2a). |
| 62 | +{{< /details >}} |
0 commit comments