Raspberry Pi 5 + Raspberry Pi 7inch Display is not working
Description The official Raspberry Pi 7 inch display does not show anything or illuminate the blacklight when building for and deploying on a Raspberry Pi 5. The HDMI display does show the correct output however. Pictures attached.
Steps to reproduce the issue:
MACHINE = "raspberrypi5"
DISTRO = "poky"
EXTRA_IMAGE_FEATURES = "debug-tweaks"
ENABLE_UART = "1"
IMAGE_INSTALL:append = " kmscube"
LICENSE_FLAGS_ACCEPTED += "synaptics-killswitch"
bitbake core-image-base
Describe the results you received: The Raspberry Pi 5 never illuminates or shows anything on the official RPi 7inch display including during the boot process.
Describe the results you expected: During the boot process the display should illuminate the backlight, show the rainbow screen, and then show four raspberry graphics. Then after boot, it should show the console and kmscube when executed.
Additional information you deem important (e.g. issue happens only occasionally):
- Attempted using RPi OS - does work correctly.
- Attempted specifying the vc4-kms-dsi-7inch driver - no change.
- Attempted specifying the vc4-fkms-v3d driver - no change.
- Attempted replacing touchscreen, Pi, cable, reseating everything - no change.
- Attempted RPi display independently of HDMI - no change.
Additional details (revisions used, host distro, etc.):
- poky - scarthgap/kirkstone - latest
- meta-raspberrypi - scarthgap/kirkstone - latest
@ykuzma1 what settings for VC4DTBO are you using? Have you tried with vc4-kms-dsi-7inch?
@leon-anavi I am using the default VC4DTBO value. But I have also tried setting VC4DTBO = "vc4-fkms-v3d" in local.conf with the same results.
Setting dtoverlay=vc4-kms-dsi-7inch in config.txt also has the same issue.
Hey @ykuzma1, are you able to solve this issue ? I am also tyring to build yocto image for RPI5 with touch display 2, its same issue for me, No Display on yocto build but working with office RPI images. On yocto build, HDMI is working fine.
Kindly let me know if you have the solution
After some investigation, I found that the I²C bus connected to the DSI panel behaves differently between Raspberry Pi OS and the Yocto image.
On Raspberry Pi OS, the I²C communication with the DSI panel works normally. However, on the Yocto-based image, the DSI panel’s I²C bus shows no ACK responses at all.
I attempted to reduce the I²C clock frequency, but it seems the issue originates from the RP1 controller. Unfortunately, I have not found any method to adjust the RP1 I²C clock rate from the Yocto side.
I am fairly certain that if we can slow down the I²C clock, the DSI panel should start working.
Hi,
I have been using core-image-weston without any of the mentioned issues on Raspberry Pi 5 with both the 7" and 5" versions Raspberry Pi Touch Display 2.
In my local.conf I added:
RPI_EXTRA_CONFIG:append = "\n\
display_auto_detect=1 \n\
dtoverlay=rpi-backlight \
"
I don't think any modification of the I²C clock frequency is required because meta-raspberrypi uses (tries to use) the same firmware and Linux kernel version as Raspberry Pi OS.
Best regards, Leon
actually i was able to solve this by adding to my yocto build
RPI_EXTRA_CONFIG = '\n\
dtoverlay=vc4-kms-v3d\n\
dtoverlay=vc4-kms-dsi-ili9881-7inch,dsi0,rotation=270\n\
dtoverlay=rpi-ft5406\n\
dtparam=console=serial0\n\
'
This is an important part I was missing: dtoverlay=vc4-kms-dsi-ili9881-7inch,dsi0
I need to add dsi0 as mentioned. By the way, I’m using a touch display 2.
Now it’s working perfectly.
This is an important part I was missing: dtoverlay=vc4-kms-dsi-ili9881-7inch,dsi0
You can avoid all this with the following line in config.txt:
display_auto_detect=1
or in the meta-raspberrypi world with something like this code snippet in local.conf:
RPI_EXTRA_CONFIG:append = "\n\
display_auto_detect=1 \
"
Raspberry Pi OS uses the same approach:
By default, Raspberry Pi OS includes a line in /boot/firmware/config.txt that enables this setting. When enabled, the firmware will automatically load overlays for recognised DSI displays.
For details: https://www.raspberrypi.com/documentation/computers/config_txt.html#display_auto_detect
Sorry. It's my bad. I do not use the official Raspberry Pi touch panel 2. The situation I mentioned is with the Waveshare 7-inch DSI panel. I may have to get an official Raspberry Pi touch panel.