[UPDATE]Mipi-dsi kernel for Rock3A <Kernel share>

Mipi-dsi kernel for Rock3A!

Compatible with RaspberryPi mipi-dsi Touchscreen.
Support 800x480 screen.
Based on the official kernel modification.
Supports Debian and Ubuntu.

*Capacitive touch screen is not supported temporarily, and will be supported in the next version!
Please keep your attention,THX!

1 Like

Kernel Version:4.193.xxx
File Name:linux-image-4.19.193-35-rockchip-g526c758e05e0_4.19.193-35-rockchip_arm64.deb
Kernel Link:
[GoogleDrive]
https://drive.google.com/file/d/1xRe81JrORn76PdWgwkpZBXQUNGKR2Y7j/view?usp=sharing
[BaiduDrive]
Uploading…

2 Likes

Hi @gacktex

I tested the kernel upgrade with a couple of displays that I have at hand. The first one, a generic unbranded DSI display for Raspberry, and it worked great. Curiously a Waveshare display for RPi, seems that doesn’t even turn on the backlight. However this same displays works well with Rock Pi 4 plus, after enable raspberrypi-7 overlay.

Could you give me some advice on how to debud this?

Thank you!

@ferite
Did you solve it?

@gacktex suggests you should disable touch so you don’t get i2c stuck.

Today i received two 7" LCD from different makers, both with FT2506, one (the cheapest) worked, and the other have trouble with the backlight, even with touch disabled. But both touch works fine.

@gacktex, in your post you comment this " GPIO3-C7 of the MIPI-DSI interface is not powered on by default, resulting in no response from the slave. . . ."
Can you elaborate on what you did , maybe this can help?

The craziest thing is the i2cdetect behavior :slight_smile:

7" panel that works:

sudo i2cdetect -y 3
         0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
    00:          03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 
    10: 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 
    20: 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f 
    30: 30 31 32 33 34 35 36 37 UU 39 3a 3b 3c 3d 3e 3f 
    40: 40 41 42 43 44 UU 46 47 48 49 4a 4b 4c 4d 4e 4f 
    50: 50 51 52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f 
    60: 60 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 
    70: 70 71 72 73 74 75 76 77                     

7" panel that does not turn on the backlight:

sudo i2cdetect -y 3
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- UU -- -- -- -- -- -- -- 
40: -- -- -- -- -- UU -- -- -- -- -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- --

rock@rock3a:~$ dmesg|grep mcu
[    0.965190] rockpi-mcu: rockpi_mcu_probe: address = 0x45
[    0.965232] rockpi-mcu: send_cmds: 80
[    1.017356] rockpi-mcu: init_cmd_check: recv_cmds: 0xC3
[    1.981462] rockpi_mcu_screen_power_up
[    1.981465] rockpi-mcu: rockpi_mcu_screen_power_up: 
[    1.981477] rockpi-mcu: send_cmds: 8500
[    2.827651] rockpi-mcu: send_cmds: 8501
[    3.680714] rockpi-mcu: send_cmds: 8104
[    3.707886] rockpi-mcu: rockpi_mcu_set_bright: bright = 0xff (back light ON max)
[  708.888963] rockpi-mcu: rockpi_mcu_set_bright: bright = 0x0 (back light OFF - idle)
[ 1158.814747] rockpi-mcu: rockpi_mcu_set_bright: bright = 0xff (touched the display and back light ON)
rock@rock3a:~$