linux/drivers/gpu/drm/imagination
Michal Wilczynski 6b53cf48d9
drm/imagination: Enable PowerVR driver for RISC-V
Several RISC-V boards feature Imagination GPUs that are compatible with
the PowerVR driver. An example is the IMG BXM-4-64 GPU on the Lichee Pi
4A board. This commit adjusts the driver's Kconfig dependencies to allow
the PowerVR driver to be compiled on the RISC-V architecture.

By enabling compilation on RISC-V, we expand support for these GPUs,
providing graphics acceleration capabilities and enhancing hardware
compatibility on RISC-V platforms.

The RISC-V support is restricted to 64-bit systems (RISCV && 64BIT) as
the driver currently has an implicit dependency on a 64-bit platform.

Add a dependency on MMU to fix a build warning on RISC-V configurations
without an MMU.

Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Reviewed-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Reviewed-by: Matt Coster <matt.coster@imgtec.com>
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
Link: https://lore.kernel.org/r/20250822-apr_14_for_sending-v13-4-af656f7cc6c3@samsung.com
Signed-off-by: Matt Coster <matt.coster@imgtec.com>
2025-09-01 12:11:00 +01:00
..
Kconfig drm/imagination: Enable PowerVR driver for RISC-V 2025-09-01 12:11:00 +01:00
Makefile drm/imagination: Add RISC-V firmware processor support 2025-04-15 12:21:52 +01:00
pvr_ccb.c
pvr_ccb.h
pvr_cccb.c
pvr_cccb.h
pvr_context.c
pvr_context.h
pvr_debugfs.c drm/imagination: loop counters moved to loop scope 2025-04-07 10:09:40 +01:00
pvr_debugfs.h
pvr_device.c drm/imagination: Use pwrseq for TH1520 GPU power management 2025-09-01 12:11:00 +01:00
pvr_device.h drm/imagination: Use pwrseq for TH1520 GPU power management 2025-09-01 12:11:00 +01:00
pvr_device_info.c
pvr_device_info.h
pvr_drv.c drm/imagination: Use pwrseq for TH1520 GPU power management 2025-09-01 12:11:00 +01:00
pvr_drv.h
pvr_free_list.c drm/imagination: loop counters moved to loop scope 2025-04-07 10:09:40 +01:00
pvr_free_list.h
pvr_fw.c drm/imagination: Add RISC-V firmware processor support 2025-04-15 12:21:52 +01:00
pvr_fw.h drm/imagination: Add RISC-V firmware processor support 2025-04-15 12:21:52 +01:00
pvr_fw_info.h
pvr_fw_meta.c drm/imagination: Use callbacks for fw irq handling 2025-04-15 12:21:51 +01:00
pvr_fw_meta.h
pvr_fw_mips.c drm/imagination: Move ELF fw utils to common file 2025-04-15 12:21:52 +01:00
pvr_fw_mips.h
pvr_fw_riscv.c drm/imagination: Add RISC-V firmware processor support 2025-04-15 12:21:52 +01:00
pvr_fw_startstop.c drm/imagination: Add RISC-V firmware processor support 2025-04-15 12:21:52 +01:00
pvr_fw_startstop.h
pvr_fw_trace.c drm/imagination: avoid unused-const-variable warning 2025-04-24 10:51:55 +01:00
pvr_fw_trace.h drm/imagination: avoid unused-const-variable warning 2025-04-24 10:51:55 +01:00
pvr_fw_util.c drm/imagination: Move ELF fw utils to common file 2025-04-15 12:21:52 +01:00
pvr_gem.c drm/imagination: Use cached memory with dma_coherent 2025-04-15 12:21:52 +01:00
pvr_gem.h drm/imagination: Use cached memory with dma_coherent 2025-04-15 12:21:52 +01:00
pvr_hwrt.c drm/imagination: loop counters moved to loop scope 2025-04-07 10:09:40 +01:00
pvr_hwrt.h
pvr_job.c drm/sched: Store the drm client_id in drm_sched_fence 2025-05-28 16:15:58 +02:00
pvr_job.h
pvr_mmu.c drm/imagination: Use cached memory with dma_coherent 2025-04-15 12:21:52 +01:00
pvr_mmu.h
pvr_params.c
pvr_params.h
pvr_power.c drm/imagination: Use pwrseq for TH1520 GPU power management 2025-09-01 12:11:00 +01:00
pvr_power.h drm/imagination: Use pwrseq for TH1520 GPU power management 2025-09-01 12:11:00 +01:00
pvr_queue.c drm/sched: Rename DRM_GPU_SCHED_STAT_NOMINAL to DRM_GPU_SCHED_STAT_RESET 2025-07-15 08:27:00 -03:00
pvr_queue.h drm/sched: Store the drm client_id in drm_sched_fence 2025-05-28 16:15:58 +02:00
pvr_rogue_cr_defs.h drm/imagination: Update register defs for newer GPUs 2025-04-15 12:21:50 +01:00
pvr_rogue_cr_defs_client.h
pvr_rogue_defs.h
pvr_rogue_fwif.h
pvr_rogue_fwif_check.h
pvr_rogue_fwif_client.h
pvr_rogue_fwif_client_check.h
pvr_rogue_fwif_common.h
pvr_rogue_fwif_dev_info.h
pvr_rogue_fwif_resetframework.h
pvr_rogue_fwif_sf.h
pvr_rogue_fwif_shared.h
pvr_rogue_fwif_shared_check.h
pvr_rogue_fwif_stream.h
pvr_rogue_heap_config.h
pvr_rogue_meta.h
pvr_rogue_mips.h
pvr_rogue_mips_check.h
pvr_rogue_mmu_defs.h
pvr_rogue_riscv.h drm/imagination: Add RISC-V firmware processor support 2025-04-15 12:21:52 +01:00
pvr_stream.c drm/imagination: loop counters moved to loop scope 2025-04-07 10:09:40 +01:00
pvr_stream.h
pvr_stream_defs.c
pvr_stream_defs.h
pvr_sync.c
pvr_sync.h
pvr_vm.c drm/gpuvm: Pass map arguments through a struct 2025-08-19 21:19:31 -07:00
pvr_vm.h drm/imagination: Hold drm_gem_gpuva lock for unmap 2025-03-03 12:09:00 +00:00
pvr_vm_mips.c drm/imagination: loop counters moved to loop scope 2025-04-07 10:09:40 +01:00
pvr_vm_mips.h