Dual display/KMS not working on Raspberry 400

This forum is for topics dealing with problems with software specifically in the AArch64 repo.

Dual display/KMS not working on Raspberry 400

Postby Quessours » Sun Mar 05, 2023 9:23 pm

Hi everybody !

First of all, I'd like to thank you all to maintain such an active and welcoming community, these forums and the wiki are incredible sources for information about Arch on ARM. Having spent these last few days to setup Arch with i3 as a WIndow Manager on a Raspberry Pi, I found here a lot of things that helped me a lot !

I am, however, opening a topic because I've been trying for the last few days to get dual display to work on Arch with a Raspberry Pi 400, and I tried a lot of things right now with now success, but these things led me to think that the issue was, in some way or another, caused by Arch or something above it (but probably under Xorg) that I'm missing.

To be explicit about the issue I have :
- My two screens are plugged on the raspberry pi, however one always display the rainbow splash screen
- I guess it is important to note that xrandr only detects one screen

First of all, I ruled out the possibility that the issue could come from my cables, my monitors, or some hardware issue on the raspberry pi : Both screens work (at the same time and separately) with several other computers, and with this same Raspberry Pi 400 with a Raspbian OS without any configuration whatsoever. Both screens also work separately with this raspberry pi and Arch.

I tried to play with the boot/config.txt and did not get any significant result, right now my config.txt looks like this :

$this->bbcode_second_pass_code('', '
gpu_mem=128
start_x=1
display_auto_detect=1
disable_overscan=1
dtoverlay=vc4-fkms-v3d
max_framebuffers=2
')

I tried to play with the initramfs parameter and start_file/fixup_file like some topic suggested, but elf/dat files seem to not be detected when I specify them explicitly in the config.txt file : I ended up stuck in the diagnostics screen (that is actually mirrored on both my monitors, fun fact btw)

I'm going to test ASAP playing with hdmi_edid_file/hdmi_edid_filename after retrieving edid data using tvservice, but I feel like it shouldn't be necessary to do that and I'm missing something way simpler.

Anyway, thanks in advance for any hint you could give me !


EDIT : After some more investigation, I tried to retrieve EDID data from my screens using tvservice on raspberry OS. However this program does not work if the vc4-kms-v3d driver is enabled in boot/config.txt, so I disabled it to realize that when I do that... Raspberry OS ends up in the exact same state as my Arch : dual display does not work anymore, and xrandr only shows me one screen and a choice of one resolution.

So I guess my issue is that, for some reason, Arch does not load this driver, or this driver does not work on Arch for some shady reason (a missing dependency maybe ?). Has someone ever encounter this issue ?
Quessours
 
Posts: 1
Joined: Sun Mar 05, 2023 8:56 pm

Re: Dual display/KMS not working on Raspberry 400

Postby zls » Fri Mar 31, 2023 1:10 am

I have same problem and solved by copy rasp400 dtb to /boot:
# cp /boot/dtbs/broadcom/bcm2711-rpi-400.dtb boot/
# reboot
then kms will work.

but audio won't work, dmesg has some error
zls
 
Posts: 2
Joined: Fri Mar 31, 2023 1:05 am

Re: Dual display/KMS not working on Raspberry 400

Postby zls » Fri Mar 31, 2023 1:12 am

some other steps need if not boot:

sed -i '11,13s/fdt_addr_r/fdt_addr/' /boot/boot.txt
sed -i 's/mmcblk0/mmcblk1/g' /etc/fstab
zls
 
Posts: 2
Joined: Fri Mar 31, 2023 1:05 am

Re: Dual display/KMS not working on Raspberry 400

Postby solskogen » Wed Jun 14, 2023 10:37 am

Have you tried with the linux-rpi kernel instead?
solskogen
 
Posts: 161
Joined: Mon Nov 18, 2013 10:41 am


Return to ARMv8

Who is online

Users browsing this forum: No registered users and 4 guests