Skip to content
View in the app

A better way to browse. Learn more.

Armbian Community Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

PockPi 4C plus - probably incorrect dtb: rk3399-rock-4c-plus.dtb vs rk3399-rock-pi-4c-plus.dtb

Featured Replies

Hello to everyone

 

Trying to use armbian on RockPi 4C plus.
Got kernel OOPS.
Kernel crushes in different moments: mostly during systemd units starting or just after boot finished.
Backtraces are different (no common).

 

Faulty images:

1) From the
https://www.armbian.com/rockpi4/
For Model C+ here: https://redirect.armbian.com/rockpi-4cplus
https://mirrors.dotsrc.org/armbian-dl/rockpi-4cplus/archive/
Armbian_22.11.1_Rockpi-4cplus_bullseye_current_5.15.80_minimal.img

2) Built by myself
Armbian_22.11.2_Rockpi-4cplus_bullseye_current_5.15.84_minimal.img
Armbian_23.02.0-trunk_Rockpi-4cplus_bullseye_edge_6.1.8_minimal.img
Armbian_23.02.0-trunk_Rockpi-4cplus_bullseye_edge_6.1.9_minimal.img
Armbian_23.02.0-trunk_Rockpi-4cplus_bullseye_edge_6.1.10_minimal.img

 

My image build script for the edge (6.1.x):
 

#!/bin/bash

BOARD_NAME_PARAM="rockpi-4cplus"
LINUX_DISTRO_PARAM="bullseye"
LOG_FILE="_armbian_build_${BOARD_NAME_PARAM}.log"
BRANCH_VALUE="edge"

log()
{
    local currtime=`date +"%Y/%m/%d %H:%M:%S"`
    echo "$currtime: $*"
    echo "$currtime: $*" >> $LOG_FILE
}


log "$0 begin"

ARMBIAN_BUILD_OPTIONS="\
BOARD=$BOARD_NAME_PARAM \
BRANCH=$BRANCH_VALUE \
FULL_DESKTOP=no \
BUILD_DESKTOP=no \
BUILD_MINIMAL=yes \
INSTALL_HEADERS=no \
KERNEL_ONLY=no \
KERNEL_CONFIGURE=no \
RELEASE=$LINUX_DISTRO_PARAM \
COMPRESS_OUTPUTIMAGE=\"sha,img,xz\" \
"

log "ARMBIAN_BUILD_OPTIONS=$ARMBIAN_BUILD_OPTIONS"

log
log "===================================="
log "Armbian build - starting ..."
log "===================================="
sudo ./compile.sh $ARMBIAN_BUILD_OPTIONS
armbian_compile_result=$?
if [ $armbian_compile_result -eq 0 ]; then
    log "===================================="
    log "Armbian build finished: SUCCESS"
    log "===================================="
else
    log "===================================="
    log "Armbian build failed: ERROR"
    log "===================================="
fi

log "$0 end"

exit 0

 


All the faulty images have common thing in /boot/armbianEnv.txt

fdtfile=rockchip/rk3399-rock-pi-4c-plus.dtb

 

As I found out there are 2 dtbs referring to rockpi 4cplus:
/boot/dtb-6.1.10-rockchip64/rockchip/rk3399-rock-4c-plus.dtb
/boot/dtb-6.1.10-rockchip64/rockchip/rk3399-rock-pi-4c-plus.dtb

 

Vanilla kernel 
https://github.com/torvalds/linux/tree/master/arch/arm64/boot/dts/rockchip

has rk3399-rock-4c-plus dts
https://github.com/torvalds/linux/blob/master/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4c.dts

and does not have
rk3399-rock-pi-4c-plus

 

 

I've changed /boot/armbianEnv.txt in the following way

fdtfile=rockchip/rk3399-rock-4c-plus.dtb

 

WIth rk3399-rock-4c-plus.dtb my RockPi 4C plus board boots fine and does not hang.

 

I believe there is a mistake in dtb files.

 

Why there are 2 dtbs
/boot/dtb/rockchip/rk3399-rock-4c-plus.dtb
/boot/dtb/rockchip/rk3399-rock-pi-4c-plus.dtb
?
 

Edited by Dave

another issue but I can confirm that  all the rock 4c+ dtb's  are probably faulty.

With all of them with different OS & Kernel my GPU isn't detected but as soon I switch to 4C or 4B dtb my gpu is detected...... took a while to figure that out 😵‍

any ideas ?

Edited by krankes_etwas

I can confirm that rk3399-rock-4c-plus.dtb is slightly better. No kernel ops on boot, and I was able to write the image to emmc and boot from it.  With rk3399-rock-pi-4c-plus.dtb emmc writes generate errors and the resulting fs is broken.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.