[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250816074757.2559055-1-uwu@icenowy.me>
Date: Sat, 16 Aug 2025 15:47:50 +0800
From: Icenowy Zheng <uwu@...nowy.me>
To: Drew Fustini <fustini@...nel.org>,
Guo Ren <guoren@...nel.org>,
Fu Wei <wefu@...hat.com>,
Lucas Stach <l.stach@...gutronix.de>,
Russell King <linux+etnaviv@...linux.org.uk>,
Christian Gmeiner <christian.gmeiner@...il.com>,
David Airlie <airlied@...il.com>,
Simona Vetter <simona@...ll.ch>
Cc: linux-riscv@...ts.infradead.org,
linux-kernel@...r.kernel.org,
etnaviv@...ts.freedesktop.org,
dri-devel@...ts.freedesktop.org,
Icenowy Zheng <uwu@...nowy.me>
Subject: [PATCH 0/7] drm/etnaviv: add support for GC620 on T-Head TH1520
This patchset tries to add support for the GC620 2D accelerator, which
is a quirky thing -- it has quirks on both MMU and DEC.
The DEC quirk is bound to the model number and revision number
currently, and only involves writing to some DEC registers at specific
situation.
The MMU quirk is more weird -- it contains a broken implementation of
PTA, which blocks directly writing MTLB address to switch MMU context,
but loading page table IDs different to the initial one does not work
either. A shared context practice, like what's done for IOMMUv1, has to
be used instead.
The DT patch isn't ready because the VP (video processing) subsystem on
TH1520 does not have proper clock and reset driver yet, and the DT patch
included in this patchset uses fake clocks and ignore resets.
Tested by the etnaviv_2d_test program in libdrm tests.
Icenowy Zheng (7):
drm/etnaviv: add HWDB entry for GC620 r5552 c20b
drm/etnaviv: add handle for GPUs with only SECURITY_AHB flag
drm/etnaviv: setup DEC400EX on GC620 r5552
drm/etnaviv: protect whole iommuv2 ctx alloc func under global mutex
drm/etnaviv: prepare for shared_context support for iommuv2
drm/etnaviv: add shared context support for iommuv2
[NOT FOR UPSTREAM] riscv: dts: thead: enable GC620 G2D on TH1520
arch/riscv/boot/dts/thead/th1520.dtsi | 19 +++++++++++++
drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 19 ++++++++++---
drivers/gpu/drm/etnaviv/etnaviv_hwdb.c | 31 ++++++++++++++++++++++
drivers/gpu/drm/etnaviv/etnaviv_iommu.c | 8 +++---
drivers/gpu/drm/etnaviv/etnaviv_iommu_v2.c | 23 +++++++++++-----
drivers/gpu/drm/etnaviv/etnaviv_mmu.c | 1 +
drivers/gpu/drm/etnaviv/etnaviv_mmu.h | 24 +++++++----------
7 files changed, 96 insertions(+), 29 deletions(-)
--
2.50.1
Powered by blists - more mailing lists