Enable the Imagination PowerVR Rogue GPU (BXE-2-32) on the SpacemiT K1 SoC for the OrangePi RV2 board.
This series depends on: - Yixun Lan's power domain series [1], which provides the genpd-based GPU power domain driver required for proper power sequencing. - Baihui Liang's dt-bindings patch [2], which adds the spacemit,k1-gpu compatible string to the img,powervr-rogue binding. The GPU firmware is not yet available upstream. A copy can be found at [3]. With this series applied on top of [1] and [2], the full GPU bring-up path works end-to-end on hardware: - Power domain: GPU power island on/off via APMU - Clock: GPU clock enabled/gated through CCU - Reset: GPU reset line deasserted - Firmware: PowerVR RISC-V firmware loads and signals ready - DMA: dma-ranges correctly maps CPU-to-GPU physical addresses - DRM: kernel exposes /dev/dri/card0 and /dev/dri/renderD128 - IRQ: GPU interrupt registered, firmware watchdog running Userspace rendering requires Mesa's PowerVR Vulkan driver (imagination-experimental). [1] https://lore.kernel.org/linux-riscv/[email protected]/ [2] https://lore.kernel.org/linux-riscv/20261015-spacemit-gpu-binding-v1-1-a7a23c7e7...@linux.spacemit.com/ [2] https://gitlab.freedesktop.org/imagination/linux-firmware/-/blob/powervr/powervr/rogue_36.29.52.182_v1.fw Signed-off-by: Iker Pedrosa <[email protected]> --- Iker Pedrosa (2): riscv: dts: spacemit: k1: add PowerVR GPU device node riscv: dts: spacemit: k1-orangepi-rv2: enable GPU arch/riscv/boot/dts/spacemit/k1-orangepi-rv2.dts | 4 ++++ arch/riscv/boot/dts/spacemit/k1.dtsi | 12 ++++++++++++ 2 files changed, 16 insertions(+) --- base-commit: 7e986b457d43edf8dd3eb3f6c34e55e92cd545f3 change-id: 20260413-orangepi-gpu-02d839d6506f Best regards, -- Iker Pedrosa <[email protected]>
