Trying out Gentoo ARM on Firefly ITX-3588J (ROCKCHIP RK3588-based Board)

shimmy00

New Member
Joined
Sep 13, 2022
Messages
6
Reaction score
0
Credits
125
This is a follow-up to a previous thread here. For those who didn't see it, I have this board which is made by the Chinese manufacturer "Firefly", using a Rockchip RK3588 (another Chinese product, the latest in a line that's been around for over a decade or so of ARM SoCs but importantly, not yet supported fully in the most recent kernels, and I suspect that will be a problem at some point and I'll have to somehow switch in the modified, slightly dated 5.10.66 kernel instance that is provided with the board there). It's a nice little board that has a small standard desktop form-factor, and the performance while running Android looked good enough as a low power consumption and x86-alternative replacement to my old 2018 era big, heavy, hard-to-transport x86 machine. Moreover, because of both the architecture, the Android-running capability, and the fact it has a M.2 slot you can put a 4G/5G LTE network card into it (something I actually want to do at some point), I affectionately call it a "Deskphone" :)

And what I'm trying to do right now is get Gentoo working, after it was suggested in the previous thread about failed graphics support on Ubuntu, to try a different Linux distribution.

Anyway, I downloaded and extracted the .iso to a usb stick and I'm trying to boot it via U-Boot, and this is happening. I've encountered this problem before when trying to load GRUB in a different context, and I suspect the Gentoo USB stick tries to boot a GRUB instance. I don't know what to do about it. In particular, note the "Scanning disk ramdisk-ro.blk ...." part just when it chokes - I dug through the GRUB source code and found that apparently what's happening here is that that device ("ramdisk-ro.blk") doesn't exist, yet it tries to scan it anyway. Not sure if this is a bug in GRUB, U-Boot, or what, and if there's a workaround or not. What do you suggest here?

Code:
=> load usb 0:1 ${kernel_addr_r} efi.img                                       
=================begin===================                                       
2949120 bytes read in 279 ms (10.1 MiB/s)                                       
(some details omitted for privacy reasons)
=> load mmc 0:0f ${fdt_addr_r} rk3588-firefly-itx-3588j.dtb                     
=================begin===================                                       
153955 bytes read in 3 ms (48.9 MiB/s)                                         
=> help bootefi                                                                 
bootefi - Boots an EFI payload from memory                                     
                                                                                
Usage:                                                                         
bootefi <image address> [fdt address]                                           
  - boot EFI payload stored at address <image address>.                         
    If specified, the device tree located at <fdt address> gets                 
    exposed as EFI configuration table.                                         
                                                                                
=> bootefi ${kernel_addr_r} ${fdt_addr_r}                                       
## Starting EFI application at 00400000 ...                                     
Scanning disk ramdisk-ro.blk...                                                 
"Synchronous Abort" handler, esr 0x96000010                                     
                                                                                
* Reason:        Exception from a Data abort, from current exception level     
* PC         =   00000000002b5e84                                               
* LR         =   0000000000245e4c                                               
* SP         =   00000000eb9f9780                                               
* ESR_EL2    =   0000000096000010                                               
* Reloc Off  =   00000000edb2d000                                               
                                                                                
x0 : 00000000eb9f9980 x1 : 0000000000000000                                     
x2 : 0000000000000200 x3 : 0000000000000000                                     
x4 : 0000000000000200 x5 : 0000000000000020                                     
x6 : 000000000000000d x7 : 00000000ede0ba58                                     
x8 : 00000000eb9f9c38 x9 : 0000000000000008                                     
x10: 00000000ffffffd0 x11: 000000000a100000                                     
x12: 0000000000000000 x13: 0000000000000200                                     
x14: 000000000000000c x15: 0000000000000021                                     
x16: 00000000edd72e20 x17: 00000000ebdcf2c0                                     
x18: 00000000eb9ffcf0 x19: 0000000000000001                                     
x20: 00000000ebd29f60 x21: 00000000ebd29f60                                     
x22: 00000000ede27082 x23: 00000000ede164b8                                     
x24: 00000000ede164cd x25: 0000000000000000                                     
x26: 0000000000000000 x27: 0000000000000000                                     
x28: 00000000ebdd3cd0 x29: 00000000eb9f9960                                     
                                                                                
                                                                                
Call trace:                                                                     
  PC:   [< 002b5e84 >]                                                         
  LR:   [< 00245e4c >]                                                         
                                                                                
Stack:                                                                         
        [< 002b5e84 >]                                                         
        [< 00231c50 >]                                                         
        [< 0022f8d0 >]                                                         
        [< 0022fe28 >]                                                         
        [< 0029ab08 >]                                                         
        [< 00208ff0 >]                                                         
        [< 00209294 >]                                                         
        [< 0022e3b8 >]                                                         
        [< 00217904 >]                                                         
        [< 00217ab8 >]                                                         
        [< 00217208 >]                                                         
        [< 002177bc >]                                                         
        [< 00217ab8 >]                                                         
        [< 00217fec >]                                                         
        [< 0022da7c >]                                                         
        [< 00215fe4 >]                                                         
        [< 002187d4 >]                                                         
        [< 0029ea00 >]                                                         
        [< 00218b98 >]                                                         
        [< 00201e10 >]                                                         
                                                                                
Copy info from "Call trace..." to a file(eg. dump.txt), and run                 
command in your U-Boot project: ./scripts/stacktrace.sh dump.txt               
                                                                                
Resetting CPU ...                                                               
                                                                                
### ERROR ### Please RESET the board ###
 

Members online


Top