Hello,
This series adds the needed bindings to operate the PowerVR GPU on R-Car
V3U SoCs. The works build on the efforts of Marek in [1], and patch 1/2
depends that series. While patch 2/2 depends on the new clock id for the
ZG clock posted [2].
I'm able to load the firmware from [3].
powervr fd000000.gsx: [drm] loaded firmware powervr/rogue_15.5.1.64_v1.fw
powervr fd000000.gsx: [drm] FW version v1.0 (build 6889268 OS)
powervr fd000000.gsx: [drm] Unsupported quirks in firmware image
[drm] Initialized powervr 1.0.0 for fd000000.gsx on minor 1
I can get run vulkaninfo from mesa.
# PVR_I_WANT_A_BROKEN_VULKAN_DRIVER=1 meson devenv -C builddir vulkaninfo
--summary
'DISPLAY' environment variable not set... skipping surface info
WARNING: powervr is not a conformant Vulkan implementation, testing use
only.
MESA: warning: ../src/imagination/vulkan/pvr_job_context.c:73: FINISHME:
Missing reset support for brn58839
MESA: warning: ../src/imagination/vulkan/pvr_job_context.c:521: FINISHME:
Missing support for brn62269
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 = 0x15001064
deviceType = PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU
deviceName = PowerVR Rogue GE7800
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 = 10131290-a76c-6b0d-6850-cdf5a340a60d
driverUUID = 2e8b7d4b-71a8-3b5a-e19f-86a7a450b7ab
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
And test applications such as gears work as they should.
See individual patch for changelog.
1.
https://lore.kernel.org/linux-renesas-soc/[email protected]/
2.
https://lore.kernel.org/linux-renesas-soc/20251106211604.2766465-1-niklas.soderlund%[email protected]/
3. https://gitlab.freedesktop.org/imagination/linux-firmware/-/issues/13
Niklas Söderlund (2):
dt-bindings: gpu: img,powervr-rogue: Document GE7800 GPU in Renesas
R-Car V3U
arm64: dts: renesas: r8a779a0: Add GE7800 GPU node
.../bindings/gpu/img,powervr-rogue.yaml | 4 +++-
arch/arm64/boot/dts/renesas/r8a779a0.dtsi | 17 +++++++++++++++++
2 files changed, 20 insertions(+), 1 deletion(-)
--
2.51.1