diff --git a/projects/RPi/devices/RPi5/config/distroconfig-composite.txt b/projects/RPi/devices/RPi5/config/distroconfig-composite.txt index 26625be562..aa6bc18832 100644 --- a/projects/RPi/devices/RPi5/config/distroconfig-composite.txt +++ b/projects/RPi/devices/RPi5/config/distroconfig-composite.txt @@ -7,7 +7,7 @@ arm_64bit=1 kernel=kernel.img display_auto_detect=1 enable_tvout=1 -dtoverlay=vc4-kms-v3d,cma-512,composite=1 +dtoverlay=vc4-kms-v3d,cma-64,composite=1 dtoverlay= disable_overscan=1 disable_fw_kms_setup=1 diff --git a/projects/RPi/devices/RPi5/config/distroconfig.txt b/projects/RPi/devices/RPi5/config/distroconfig.txt index 10df6ca5e3..ce81b92ca9 100644 --- a/projects/RPi/devices/RPi5/config/distroconfig.txt +++ b/projects/RPi/devices/RPi5/config/distroconfig.txt @@ -6,7 +6,7 @@ arm_boost=1 arm_64bit=1 kernel=kernel.img display_auto_detect=1 -dtoverlay=vc4-kms-v3d,cma-512 +dtoverlay=vc4-kms-v3d,cma-64 dtoverlay= disable_overscan=1 disable_fw_kms_setup=1 diff --git a/projects/RPi/devices/RPi5/filesystem/usr/lib/udev/rules.d/60-dma-heap.rules b/projects/RPi/devices/RPi5/filesystem/usr/lib/udev/rules.d/60-dma-heap.rules new file mode 100644 index 0000000000..42745fe4e4 --- /dev/null +++ b/projects/RPi/devices/RPi5/filesystem/usr/lib/udev/rules.d/60-dma-heap.rules @@ -0,0 +1 @@ +SUBSYSTEM=="dma_heap", KERNEL=="system", SYMLINK+="dma_heap/vidbuf_cached" diff --git a/projects/RPi/patches/kodi/0100-DMAHeapBufferObject-Add-vidbuf_cached.patch b/projects/RPi/patches/kodi/0100-DMAHeapBufferObject-Add-vidbuf_cached.patch new file mode 100644 index 0000000000..813f98935c --- /dev/null +++ b/projects/RPi/patches/kodi/0100-DMAHeapBufferObject-Add-vidbuf_cached.patch @@ -0,0 +1,28 @@ +From 863283c15dbba77a50f93640f77630052aef0cc5 Mon Sep 17 00:00:00 2001 +From: Dom Cobley +Date: Wed, 31 Jul 2024 14:23:46 +0100 +Subject: [PATCH] DMAHeapBufferObject: Add vidbuf_cached + +This is an optional symlink that allows preferring system or cma for dmabuf allocations +(typically system for pi5 and cma for pi4) +--- + xbmc/utils/DMAHeapBufferObject.cpp | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/xbmc/utils/DMAHeapBufferObject.cpp b/xbmc/utils/DMAHeapBufferObject.cpp +index ad05aa8290ac..d6457318b45e 100644 +--- a/xbmc/utils/DMAHeapBufferObject.cpp ++++ b/xbmc/utils/DMAHeapBufferObject.cpp +@@ -24,7 +24,8 @@ + namespace + { + +-std::array DMA_HEAP_PATHS = { ++std::array DMA_HEAP_PATHS = { ++ "/dev/dma_heap/vidbuf_cached", + "/dev/dma_heap/reserved", + "/dev/dma_heap/linux,cma", + "/dev/dma_heap/system", +-- +2.39.2 +