MIPI Display Support

Hi all, hoping somebody might be able to confirm or advise.

I received my Rock5b and along side of it a 10.1 MIPI DSI display from Allnetchina.

I can successfully boot the board in both Android and Ubuntu with no issues without the MIPI display plugged in.

As soon as I plug the display in the power light stays green and from here on in will not boot with or without the display installed.

The only solution is to wipe the emmc card and reload a fresh image again.

Happy to supply any information needed but can confirm the power supply used to run the system also runs my Lenovo laptop show should be suppling enough power overall.

More surprising is the issue when unplugging the display that the board will never boot again.

Any advise would be appreciated.

Cheers

Ray

2 Likes

It’s like the cable is plugged in at wrong side? Please take a picture of the FPC cable.

Hi Jack, thanks for getting back to me and the suggestion as silly as it may sound was great.

I double checked both ends for the FPC cable, reloaded android and can now see power on the screen.

Unfortunately I still cannot see any picture.

After this I reloaded ubuntu to check logs and am not able to see any logs around mipi when running dmesg | grep mipi

This is based on some instructions I followed on the rockchip website https://opensource.rock-chips.com/wiki_MIPI-DSI

I also have no picture in ubuntu and also there is no directory created under /sys/class/drm/card0-DSI-1

Any suggestions on what I can do next?

Cheers

Ray

1 Like

Hi @jack I have progressed further with my issue.

I can now get the 10.1 inch screen to power on under ubuntu.
This was done via adding dtoverlay=rock-5b-radxa-display-10fhd to config.txt

The issue now in both android and ubuntu is the resolution is to high as its set at 1200x1920
The screen purchased from allnetchina only supports 1290x800

here is an output of dmesg | grep vop

rock@rock-5b:~$ dmesg | grep vop
[    2.766281] rockchip-vop2 fdd90000.vop: Adding to iommu group 14
[    2.772759] rockchip-vop2 fdd90000.vop: [drm:vop2_bind] vp0 assign plane mask: 0x5, primary plane phy id: 2
[    2.772767] rockchip-vop2 fdd90000.vop: [drm:vop2_bind] vp1 assign plane mask: 0xa, primary plane phy id: 3
[    2.772786] rockchip-vop2 fdd90000.vop: [drm:vop2_bind] vp2 assign plane mask: 0x140, primary plane phy id: 8
[    2.772792] rockchip-vop2 fdd90000.vop: [drm:vop2_bind] vp3 assign plane mask: 0x280, primary plane phy id: 9
[    2.784211] rockchip-drm display-subsystem: bound fdd90000.vop (ops 0xffffffc010ebf4c0)
[    3.155457] rockchip-dmc dmc: failed to get vop bandwidth to dmc rate
[    3.155461] rockchip-dmc dmc: failed to get vop pn to msch rl
[    3.163891] rockchip-vop2 fdd90000.vop: [drm:vop2_bind] vp0 assign plane mask: 0x5, primary plane phy id: 2
[    3.163900] rockchip-vop2 fdd90000.vop: [drm:vop2_bind] vp1 assign plane mask: 0xa, primary plane phy id: 3
[    3.163918] rockchip-vop2 fdd90000.vop: [drm:vop2_bind] vp2 assign plane mask: 0x140, primary plane phy id: 8
[    3.163926] rockchip-vop2 fdd90000.vop: [drm:vop2_bind] vp3 assign plane mask: 0x280, primary plane phy id: 9
[    3.183128] rockchip-drm display-subsystem: bound fdd90000.vop (ops 0xffffffc010ebf4c0)
[    3.203893] rockchip-vop2 fdd90000.vop: [drm:vop2_crtc_atomic_enable] Update mode to 1200x1920p60, type: 16(if:40) for vp3 dclk: 157287000
[    3.204440] rockchip-vop2 fdd90000.vop: [drm:vop2_crtc_atomic_enable] dclk_out3 div: 2 dclk_core3 div: 2
[    3.204462] rockchip-vop2 fdd90000.vop: [drm:vop2_crtc_atomic_enable] set dclk_vop3 to 157287000, get 157286399

And here is the output of /sys/class/drm/card0-DSI-1 modes

rock@rock-5b:/sys/class/drm/card0-DSI-1$ cat modes
1200x1920
rock@rock-5b:/sys/class/drm/card0-DSI-1$

i can see there are two rk3588 overlays available in the kernal tree for 5.10-rock5


rk3588-rock-5b-radxa-10p1inch-display.dtsi this one has the correct resolution where
rk3588-rock-5b-radxa-display-10fhd.dtsi this has the 1200x1920 resolution

Is there a way to have the other overlay added to the next build?

Cheers

Also as a note here is the serial output of the Android boot setting the resolution
Using display timing dts
dsi@fde30000: detailed mode clock 160000 kHz, flags[a]
H: 1200 1280 1284 1344
V: 1920 1955 1959 1984
bus_format: 100e
VOP update mode to: 1200x1920p60, type: MIPI1 for VP3
VP3 set crtc_clock to 157286KHz
VOP VP3 enable Esmart3[654x270->654x270@273x825] fmt[2] addr[0xedf04000]
final DSI-Link bandwidth: 1048573 Kbps x 4

Hi Jack,

is this the correct way to connect between Rock 5B and Radxa display 10.1 inch?
Thank you.

1 Like

Hi Akal, guessing you are not able to get the display working either?

I have it connected the same as yourself but had no luck after days of trying and even rebuilding Ubuntu from source and getting the mipi-dsi to run at the right resolution.

Hoping somebody from radxa can guide further.

Ray

Hi Ray,
We need help with this.
I can’t make it to work.

Agung

if it will work with linux i will buy one

Hi, @akal

The hardware connection is correct.

I’m working on Radxa Display 10HD now, please give me some time.
Will update to you when I finish it.

1 Like

Thank you Stephen.

@Stephen will this also work with the 8 inch touch from ameridroid: https://ameridroid.com/products/radxa-display-8-in-1280x800

Hi, Radxa Display 10HD works on ROCK 5B.

Please try the following steps.

  • Upgrade kernel to version at least 5.10.110-30-rockchip .
# apt install -y linux-5.10-rock-5-latest
  • Add one line to file /boot/config.txt. Like this.
dtoverlay=rock-5b-radxa-display-10hd
  • And then execute command.
# update_extlinux.sh
  • Reboot the device

Note: https://wiki.radxa.com/Rock5/accessories/radxa-display-10hd

1 Like

Hi, Yes. See https://wiki.radxa.com/Rock5/accessories/radxa-display-8hd

1 Like

wow very cool maybe i will buy one (because i now have a exploitable nintendo switch with a touch)

Hi Stephen, thanks will give it another go on Ubuntu.

Will I need to build Android from source to to use the screen with it?

Cheers

Hi, @thomoray

This needs @yanw’s help.

@yanw Can you release one Android image with Radxa Display 10HD?

2 Likes

Hi Stephen.
I tried command ‘sudo install -y linux-5.10-rpck-5-latest’ and the result is not 5.10.110-30-rockchip or later, but Linux rock-5b 5.10.66-28-rockchip-gc428536281d6.
For your information I use the official image from Radxa.
What should i do to make it work?

Show me your file /boot/extlinux/extlinux.conf.

#timeout 10
#menu title select kernel

label kernel-5.10.66-28-rockchip-gc428536281d6
kernel /vmlinuz-5.10.66-28-rockchip-gc428536281d6
initrd /initrd.img-5.10.66-28-rockchip-gc428536281d6
devicetreedir /dtbs/5.10.66-28-rockchip-gc428536281d6
fdtoverlays /dtbs/5.10.66-28-rockchip-gc428536281d6/rockchip/overlay/rk3588 -uart7-m2.dtbo
append root=UUID=1abc0bf0-ff5d-4015-b8dc-792d09f39724 earlycon=uart8250,mm io32,0xfeb50000 console=ttyFIQ0 console=tty1 consoleblank=0 loglevel=0 panic=10 rootwait rw init=/sbin/init rootfstype=ext4 cgroup_enable=cpuset cgroup_memory=1 cgroup_enable=memory swapaccount=1 irqchip.gicv3_pseudo_nmi=0 switolb=1 coheren t_pool=2M

Try this

# sudo apt update-y && sudo install -y linux-5.10-rock-5-latest
1 Like