I have fedora silverblue 39 flashed and running on a raspberry pi 4. I’ve noticed there is severely degraded performance compared with the workstation edition. input lag, dropped frames, unresponsive ui, etc.
As well it does not correctly read my HDMI monitor’s available resolutions. for example on workstation I have /sys/class/drm/card2-HDMI-A-1, with a legit edid, but on silverblue I only get /sys/class/drm/card0-Unknown-2/ with an empty edid.
Workstation idles at approximately 0% CPU
Silverblue idles at about 14% CPU. Same hardware.
What can I do to help improve the performance of silverblue on RPi 4?
I see, it’s the pftf UEFI. Workstation image is using U-Boot with working V3D, that might be why.
Firmware Version: UEFI Firmware v1.34
To get working V3D hardware acceleration in UEFI, Devicetree is needed in System Table Selection.
Though some stuff might be broken, last time I tiredACPI+Devicetree on RPi400 (with vanilla kernel), latest base DTB doesn’t boot, LED & power key don’t work, power off becomes reboot… etc.
I entered the bootloader by pressing escape when the raspberyr pi logo displayed on screen
I entered the Device Configuration > Advanced menu, and made two changes
disable the 3gb memory limit
change the System Table Selection to ACPI+DeviceTree
I then rebooted.
I now have this in “System Configuration”
System Details Report
Report details
Date generated: 2023-11-12 08:24:25
Hardware Information:
Hardware Model: Raspberry Pi Foundation Raspberry Pi 4 Model B
Memory: 4.0 GiB
Processor:
Graphics: V3D 4.2
Disk Capacity: (null)
Software Information:
Firmware Version: UEFI Firmware v1.34
OS Name: Fedora Linux 39.20231112.0 (Silverblue)
OS Build: (null)
OS Type: 64-bit
GNOME Version: 45.1
Windowing System: Wayland
Kernel Version: Linux 6.5.11-300.fc39.aarch64
As well, my HDMI monitor reports and uses the correct resolutions, and i’m able to play sound through the built in speakers.
As well, I’m apparently still able to access my NAS storage USB drive, so this is appears to be a complete solution.
Thanks again!
Update: I don’t have fan control and can’t read the CPU temperature. My use case doesn’t strictly need those so this solution is good for me, but might not be for everyone. My understanding is that more and more of these features will be enabled with future kernel versions.