Hello,
This series adds the needed bindings to operate the PowerVR GPU on R-Car
D3 SoC.
Together with the D3 clock changes [1] and a still OOT patch for the PVR
driver [2], I'm able to load firmware.
powervr fd000000.gpu: [drm] loaded firmware powervr/rogue_22.67.54.30_v1.fw
powervr fd000000.gpu: [drm] FW version v1.0 (build 6889268 OS)
powervr fd000000.gpu: [drm] Unsupported quirks in firmware image
powervr fd000000.gpu: [drm] Unsupported enhancements in firmware image
powervr fd000000.gpu: [drm] Unsupported features in firmware image
[drm] Initialized powervr 1.0.0 for fd000000.gpu on minor 1
I can run vulkaninfo from mesa (need to add the driver to
pvr_drm_configs):
$ PVR_I_WANT_A_BROKEN_VULKAN_DRIVER=1 meson devenv -C builddir vulkaninfo
--summary
WARNING: powervr is not a conformant Vulkan implementation, testing use
only.
MESA: warning: Warning: The available RAM is below the minimum required by
the Vulkan specification!
MESA: warning: ../src/imagination/vulkan/pvr_border.c:117: FINISHME:
Devices without tpu_border_colour_enhanced require entries for compressed
formats to be stored in the table pre-compressed.
==========
VULKANINFO
==========
Vulkan Instance Version: 1.4.328
Instance Extensions: count = 20
-------------------------------
VK_EXT_debug_report : extension revision 10
VK_EXT_debug_utils : extension revision 2
VK_EXT_headless_surface : extension revision 1
VK_EXT_surface_maintenance1 : extension revision 1
VK_EXT_swapchain_colorspace : extension revision 5
VK_KHR_device_group_creation : extension revision 1
VK_KHR_display : extension revision 23
VK_KHR_external_fence_capabilities : extension revision 1
VK_KHR_external_memory_capabilities : extension revision 1
VK_KHR_external_semaphore_capabilities : extension revision 1
VK_KHR_get_display_properties2 : extension revision 1
VK_KHR_get_physical_device_properties2 : extension revision 2
VK_KHR_get_surface_capabilities2 : extension revision 1
VK_KHR_portability_enumeration : extension revision 1
VK_KHR_surface : extension revision 25
VK_KHR_surface_protected_capabilities : extension revision 1
VK_KHR_wayland_surface : extension revision 6
VK_KHR_xcb_surface : extension revision 6
VK_KHR_xlib_surface : extension revision 6
VK_LUNARG_direct_driver_loading : extension revision 1
Instance Layers:
----------------
Devices:
========
GPU0:
apiVersion = 1.2.330
driverVersion = 25.99.99
vendorID = 0x1010
deviceID = 0x22054030
deviceType = PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU
deviceName = PowerVR Rogue GE8300
driverID = DRIVER_ID_IMAGINATION_OPEN_SOURCE_MESA
driverName = Imagination open-source Mesa driver
driverInfo = Mesa 26.0.0-devel (git-8fb0621f2d)
conformanceVersion = 1.3.8.4
deviceUUID = 19031a08-e22f-9565-d78b-ddda8240380a
driverUUID = 48685174-7bd0-6840-5716-9d00003566aa
GPU1:
apiVersion = 1.4.330
driverVersion = 25.99.99
vendorID = 0x10005
deviceID = 0x0000
deviceType = PHYSICAL_DEVICE_TYPE_CPU
deviceName = llvmpipe (LLVM 21.1.4, 128 bits)
driverID = DRIVER_ID_MESA_LLVMPIPE
driverName = llvmpipe
driverInfo = Mesa 26.0.0-devel (git-8fb0621f2d) (LLVM 21.1.4)
conformanceVersion = 1.3.1.1
deviceUUID = 6d657361-3236-2e30-2e30-2d6465766500
driverUUID = 6c6c766d-7069-7065-5555-49440000000
I can't run test Vulkan applications such as gears as the PVR driver do
not support all features need for GE8300, for example
simple_internal_parameter_format_v1, see [3].
1.
https://lore.kernel.org/linux-renesas-soc/[email protected]/T/#u
2. https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38211#note_3177232
3. https://gitlab.freedesktop.org/imagination/mesa/-/issues/13
Niklas Söderlund (2):
dt-bindings: gpu: img,powervr-rogue: Document GE8300 GPU in Renesas
R-Car D3
arm64: dts: renesas: r8a77995: Add GE8300 GPU node
.../bindings/gpu/img,powervr-rogue.yaml | 20 +++++++++++++++++++
arch/arm64/boot/dts/renesas/r8a77995.dtsi | 15 ++++++++++++++
2 files changed, 35 insertions(+)
--
2.52.0