Skip to content

Commit 1b98fb5

Browse files
committed
systems: add Vulkan flags for Pi4/Pi5
Added Vulkan as supported renderer for Pi4/Pi5 when running on RaspiOS 12 Bookworm. Technically the support was added in Bullseye for Pi4, but it was only available under X11. Notes: - most emulators include the Vulkan headers, so there's no need to add `libvulkan-dev` as a dependency. - not all emulators will run with Vulkan from KMS/DRM - `ppsspp`/`dolphin` can use it under x11/wayland, while `retroarch` runs with the`vulkan` video driver on KMS/DRM. - switching RetroArch to use the `vulkan` renderer needs to include the installation/configuration of SLANG shaders, which is not handled at the moment.
1 parent 5683e78 commit 1b98fb5

File tree

4 files changed

+8
-0
lines changed

4 files changed

+8
-0
lines changed

scriptmodules/emulators/dolphin.sh

+2
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,8 @@ function depends_dolphin() {
5454
# if using the latest version, add SDL2 as dependency, since it's mandatory
5555
[[ "$(_get_commit_dolphin)" == "" ]] && depends+=(libsdl2-dev)
5656

57+
# install Vulkan drivers when needed
58+
isPlatform "vulkan" && depends+=(mesa-vulkan-drivers)
5759
getDepends "${depends[@]}"
5860
}
5961

scriptmodules/emulators/ppsspp.sh

+1
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ function depends_ppsspp() {
3131
isPlatform "videocore" && depends+=(libraspberrypi-dev)
3232
isPlatform "mesa" && depends+=(libgles2-mesa-dev)
3333
isPlatform "vero4k" && depends+=(vero3-userland-dev-osmc)
34+
isPlatform "vulkan" && depends+=(mesa-vulkan-drivers)
3435
getDepends "${depends[@]}"
3536
}
3637

scriptmodules/supplementary/sdl2.sh

+1
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ function _list_depends_sdl2() {
4949
isPlatform "gl" || isPlatform "rpi" && depends+=(libgl1-mesa-dev libglu1-mesa-dev)
5050
isPlatform "kms" || isPlatform "rpi" && depends+=(libdrm-dev libgbm-dev)
5151
isPlatform "x11" && depends+=(libpulse-dev libwayland-dev)
52+
isPlatform "vulkan" && depends+=(libvulkan-dev)
5253

5354
echo "${depends[@]}"
5455
}

scriptmodules/system.sh

+4
Original file line numberDiff line numberDiff line change
@@ -368,6 +368,10 @@ function get_rpi_video() {
368368
fi
369369
fi
370370
[[ "$__has_dispmanx" -eq 1 ]] && __platform_flags+=(dispmanx)
371+
# Pi4/5 have Vulkan working under KMS on Debian 12 (bookworm) or newer
372+
if (isPlatform "rpi4" || isPlatform "rpi5") && [[ "$__os_debian_ver" -ge 12 ]]; then
373+
__platform_flags+=(vulkan)
374+
fi
371375
else
372376
__platform_flags+=(videocore)
373377
if ! isPlatform "aarm64"; then

0 commit comments

Comments
 (0)