[BUG] Raxda Rock Pi 4A serial console output stops prematurely
Anand Moon
linux.amoon at gmail.com
Wed Dec 3 07:08:33 CET 2025
Hi FUKAUMI, Quentin.
Thanks for your help.
On Mon, 1 Dec 2025 at 22:50, FUKAUMI Naoki <naoki at radxa.com> wrote:
>
> Hi Anand,
>
> On 12/2/25 02:09, Anand Moon wrote:
> > Hi Quentin/ FUKAUMI,
> >
> > On Mon, 1 Dec 2025 at 16:12, Quentin Schulz <quentin.schulz at cherry.de> wrote:
> >>> U-Boot TPL 2025.10-1 (Oct 31 2025 - 11:12:15)
> >>> lpddr4_set_rate: change freq to 400MHz 0, 1
> >>> Channel 0: LPDDR4, 400MHz
> >>> BW=32 Col=10 Bk=8 CS0 Row=15 CS1 Row=15 CS=2 Die BW=16 Size=2048MB
> >>> Channel 1: LPDDR4, 400MHz
> >>> BW=32 Col=10 Bk=8 CS0 Row=15 CS1 Row=15 CS=2 Die BW=16 Size=2048MB
> >>> 256B stride
> >>> lpddr4_set_rate: change freq to 800MHz 1, 0
> >>> Trying to boot from BOOTROM
> >>> Returning to boot ROM...
> >>>
> >>> U-Boot SPL 2025.10-1 (Oct 31 2025 - 11:12:15 +0000)
> >>> Trying to boot from MMC1
> >>
> >> I believe this means you booted from eMMC. (MMC2 should be SD card as
> >> far as I remember)
> >>
> >> When you boot from SPI flash, you should see "Trying to boot from SPI"
> >> first, if it fails then it'll try to boot from eMMC and then SD card.
> >> This is due to
> >>
> >> u-boot,spl-boot-order = "same-as-spl", &sdhci, &sdmmc;
> >>
> >> in arch/arm/dts/rk3399-u-boot.dtsi + SPL_SPI* symbols in your .config.
> >>
> >>> ## Checking hash(es) for config config-1 ... OK
> >>> ## Checking hash(es) for Image atf-1 ... sha256+ OK
> >>> ## Checking hash(es) for Image u-boot ... sha256+ OK
> >>> ## Checking hash(es) for Image fdt-1 ... sha256+ OK
> >>> ## Checking hash(es) for Image atf-2 ... sha256+ OK
> >>> ## Checking hash(es) for Image atf-3 ... sha256+ OK
> >>> ## Checking hash(es) for Image atf-4 ... sha256+ OK
> >>> load_simple_fit: Skip load 'atf-5': image size is 0!
> >>>
> >>>
> >>> U-Boot 2025.10-1 (Oct 31 2025 - 11:12:15 +0000)
> >>>
> >>> SoC: Rockchip rk3399
> >>> Reset cause: POR
> >>> Model: Radxa ROCK Pi 4A
> >>> DRAM: 4 GiB (total 3.9 GiB)
> >>> PMIC: RK808
> >>>
> >>> You see, I could not control the UART with the key pressed.
> >>
> >> Because you don't have the audio-supply patch for this U-Boot maybe? Or
> >> you didn't actually flash your newly compiled U-Boot on the device this
> >> U-Boot loads from.
> >>
> > My board’s SPI flash is running an outdated firmware that lacks the
> > auto-supply patch.
> > which results in the UART console being locked
>
> As Quentin said, your board is booted from eMMC. This is why "kill SPI
> flash" didn't work.
>
> Please try to erase eMMC, e.g. `blkdiscard /dev/mmcblk0` on Linux.
>
> Or, please make & insert bootable SD and press & hold maskrom button
> (i.e. kill eMMC) while power on.
I had tried this process earlier, but if did not work
>
After installing a fresh new OS and recompiling the latest kernel
I have finally been able to get the SPI flash to detect in userspace
I just used your audio-supply patch to get this working.
alarm at rockpi4b:~$ sudo mtdinfo
Count of MTD devices: 1
Present MTD devices: mtd0
Sysfs interface supported: yes
alarm at rockpi4b:~$ cat /proc/mtd
dev: size erasesize name
mtd0: 00400000 00001000 "spi1.0"
alarm at rockpi4b:~$
alarm at rockpi4b:~$ sudo flash_eraseall /dev/mtd0
flash_eraseall has been replaced by `flash_erase <mtddev> 0 0`; please use it
Erasing 4096 Kibyte @ 0 -- 100 % complete
alarm at rockpi4b:~$
alarm at rockpi4b:~$ sudo flash_erase /dev/mtd0 0 1024
[sudo] password for alarm:
Erasing 4096 Kibyte @ 0 -- 100 % complete
But this command did not erase the SPI flash completely
After running the following command, I can flash the image to SPI flash.
alarm at rockpi4b:~/u-boot-rpi4$ sudo flashcp u-boot-rockchip-spi.bin /dev/mtd0
alarm at rockpi4b:~/u-boot-rpi4$ re
-----
U-Boot TPL 2026.01-rc3-00080-gc589cff7dc5c (Dec 03 2025 - 11:23:01)
lpddr4_set_rate: change freq to 400MHz 0, 1
Channel 0: LPDDR4, 400MHz
BW=32 Col=10 Bk=8 CS0 Row=15 CS1 Row=15 CS=2 Die BW=16 Size=2048MB
Channel 1: LPDDR4, 400MHz
BW=32 Col=10 Bk=8 CS0 Row=15 CS1 Row=15 CS=2 Die BW=16 Size=2048MB
256B stride
lpddr4_set_rate: change freq to 800MHz 1, 0
Trying to boot from BOOTROM
Returning to boot ROM...
U-Boot SPL 2026.01-rc3-00080-gc589cff7dc5c (Dec 03 2025 - 11:23:01 +0530)
Trying to boot from SPI
## Checking hash(es) for config config-1 ... OK
## Checking hash(es) for Image atf-1 ... sha256+ OK
## Checking hash(es) for Image u-boot ... sha256+ OK
## Checking hash(es) for Image fdt-1 ... sha256+ OK
## Checking hash(es) for Image atf-2 ... sha256+ OK
## Checking hash(es) for Image atf-3 ... sha256+ OK
## Checking hash(es) for Image atf-4 ... sha256+ OK
load_simple_fit: Skip load 'atf-5': image size is 0!
U-Boot 2026.01-rc3-00080-gc589cff7dc5c (Dec 03 2025 - 11:23:01 +0530)
SoC: Rockchip rk3399
Reset cause: RST
Model: Radxa ROCK Pi 4A
DRAM: 4 GiB (total 3.9 GiB)
PMIC: RK808
Core: 306 devices, 34 uclasses, devicetree: separate
MMC: mmc at fe320000: 1, mmc at fe330000: 0
Loading Environment from MMC... Reading from MMC(0)... *** Warning -
bad CRC, using default environment
In: serial,usbkbd
Out: serial,vidconsole
Err: serial,vidconsole
Model: Radxa ROCK Pi 4A
Net: eth0: ethernet at fe300000
Hit any key to stop autoboot: 0
Scanning for bootflows in all bootdevs
Seq Method State Uclass Part Name Filename
--- ----------- ------ -------- ---- ------------------------
----------------
Thanks for your support and guidance.
-Anand
More information about the U-Boot
mailing list