From: "Adrián Larumbe" <adrian.larumbe@collabora.com>
To: Boris Brezillon <boris.brezillon@collabora.com>,
Rob Herring <robh@kernel.org>,
Steven Price <steven.price@arm.com>,
Maarten Lankhorst <maarten.lankhorst@linux.intel.com>,
Maxime Ripard <mripard@kernel.org>,
Thomas Zimmermann <tzimmermann@suse.de>,
David Airlie <airlied@gmail.com>,
Simona Vetter <simona@ffwll.ch>,
Faith Ekstrand <faith.ekstrand@collabora.com>,
"Marty E. Plummer" <hanetzer@startmail.com>,
Tomeu Vizoso <tomeu@tomeuvizoso.net>,
Eric Anholt <eric@anholt.net>,
Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>,
Robin Murphy <robin.murphy@arm.com>,
Philipp Zabel <p.zabel@pengutronix.de>
Cc: dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org,
"Collabora Kernel Team" <kernel@collabora.com>,
"Adrián Larumbe" <adrian.larumbe@collabora.com>,
"Neil Armstrong" <neil.armstrong@linaro.org>
Subject: [PATCH v6 00/16] Collection of fixes for Panfrost: Perfcnt, RPM, refactorings
Date: Wed, 26 Aug 2026 22:18:02 +0100 [thread overview]
Message-ID: <20260826-claude-fixes-v6-0-78119af409e7@collabora.com> (raw)
This patch series began as an assortment of small fixes for some issues
uncovered by Claude. Over time, it has evolved to include many other
fixes for further problems revealed by Sashiko in successive revisions,
and also refactorings and improvements suggested by maintainer
discussions.
A subset of patches submitted in previous revisions was already merged
after they had been reviewed, to avoid this series growing to unmanageable
extents.
Signed-off-by: Adrián Larumbe <adrian.larumbe@collabora.com>
---
Changes in v6:
- Grafted trivial already-reviwed patches from previous revisions into
their own series so that they could be merged into drm-misc-next.
- Added commits with multiple refactorings, code rearrangements and simplifications.
- Addressed all issues brought up by reviwers and Sashiko in the previous revision.
- Link to v5: https://patch.msgid.link/20260811-claude-fixes-v5-0-3d692c9e98c2@collabora.com
Changes in v5:
- Addressed more issues uncovered by Sashiko.
- Discarded two patches to avoid dealing with too many pre-existing issues at once.
- Biggest change is the re-arrangement of the start sequence, made to look like Panthor.
- Link to v4: https://patch.msgid.link/20260729-claude-fixes-v4-0-01968f2ec77a@collabora.com
Changes in v4:
- Fixed errors and issues uncovered by Sashiko in the previous revision.
- Changed the way RPM checks whether the device is initialised when resuming.
- Simplified perfcnt treatment of potential resets.
- Link to v3: https://patch.msgid.link/20260724-claude-fixes-v3-0-542af61abd0f@collabora.com
Changes in v3:
- Applied some minor suggestions for the first couple of patches in the series.
- Moved shrinker initialisation into gem initialisation.
- Fixed RPM bugs by moving all clock and power initialisation into RPM resume.
- Added patch for reset sequence fixes and also a userspace knob to trigger it.
- Reworked perfcnt fix by having the reset sequence restore its initial state.
- Link to v2: https://patch.msgid.link/20260604-claude-fixes-v2-0-57c6bd4c1655@collabora.com
Changes in v2:
- Fixed race conditions introduced by the previous revision, in the RPM and
HWPerf commits specifically. These can be consulted at [1]
- Don't attempt to suspend the device unconditionally at the end of
probe(), and do it through autosuspend instead.
- Broke the RPM patch into one that fixes PM refcnt proper and another one
for MMU enablement at device init time.
- Moved perfcnt GPU disable helper into its own commmit. Same for
transplating shrinker initialisation and unplug.
- Added 'Fixes' and 'Reported-by' tags to all the relevant commits
- [1] https://sashiko.dev/#/patchset/20260526-claude-fixes-v1-0-16e92eaa4949%40collabora.com
- Link to v1: https://patch.msgid.link/20260526-claude-fixes-v1-0-16e92eaa4949@collabora.com
To: Boris Brezillon <boris.brezillon@collabora.com>
To: Rob Herring <robh@kernel.org>
To: Steven Price <steven.price@arm.com>
To: Adrián Larumbe <adrian.larumbe@collabora.com>
To: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
To: Maxime Ripard <mripard@kernel.org>
To: Thomas Zimmermann <tzimmermann@suse.de>
To: David Airlie <airlied@gmail.com>
To: Simona Vetter <simona@ffwll.ch>
To: Faith Ekstrand <faith.ekstrand@collabora.com>
To: "Marty E. Plummer" <hanetzer@startmail.com>
To: Tomeu Vizoso <tomeu@tomeuvizoso.net>
To: Eric Anholt <eric@anholt.net>
To: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
To: Robin Murphy <robin.murphy@arm.com>
To: Philipp Zabel <p.zabel@pengutronix.de>
Cc: dri-devel@lists.freedesktop.org
Cc: linux-kernel@vger.kernel.org
Cc: Neil Armstrong <neil.armstrong@linaro.org>
---
Adrián Larumbe (16):
drm/panfrost: Move shrinker initialization and unplug one level down
drm/panfrost: Move all DRM device initialisation into device_init()
drm/panfrost: Move lock and modparam initialisations into their subsystems
drm/panfrost: Move debugfs initialisation to relevant subsystems
drm/panfrost: Skip NULL checks for clock enable/disabling
drm/panfrost: Consolidate device clock management and reset
drm/panfrost: Split subsystem init/reset from interrupt enablement
drm/panfrost: Fix PM refcnt and autosuspend issues at device probe/remove
drm/panfrost: Add warning messages to fatal error conditions
drm/panfrost: Add debugfs knob for manually triggering a GPU reset
drm/panfrost: Move perfcnt GPU disable sequence into a helper
drm/panfrost: Skip cache flush/invalidate when enabling perfcnt
drm/panfrost: Avoid cache flush after perfcnt sample in fully coherent systems
drm/panfrost: Introduce a reset lock
drm/panfrost: Fix races between perfcnt and reset sequence
drm/panfrost: Bump driver minor to reflect new DUMP IOCTL req field
drivers/gpu/drm/panfrost/panfrost_device.c | 274 +++++++++++++++--------
drivers/gpu/drm/panfrost/panfrost_device.h | 8 +-
drivers/gpu/drm/panfrost/panfrost_drv.c | 198 +---------------
drivers/gpu/drm/panfrost/panfrost_drv.h | 9 -
drivers/gpu/drm/panfrost/panfrost_gem.c | 63 ++++--
drivers/gpu/drm/panfrost/panfrost_gem.h | 10 +-
drivers/gpu/drm/panfrost/panfrost_gem_shrinker.c | 9 +-
drivers/gpu/drm/panfrost/panfrost_gpu.c | 21 +-
drivers/gpu/drm/panfrost/panfrost_gpu.h | 2 +
drivers/gpu/drm/panfrost/panfrost_job.c | 108 ++++++++-
drivers/gpu/drm/panfrost/panfrost_job.h | 4 +
drivers/gpu/drm/panfrost/panfrost_mmu.c | 12 +-
drivers/gpu/drm/panfrost/panfrost_mmu.h | 2 +
drivers/gpu/drm/panfrost/panfrost_perfcnt.c | 226 ++++++++++++-------
drivers/gpu/drm/panfrost/panfrost_perfcnt.h | 1 +
include/uapi/drm/panfrost_drm.h | 3 +-
16 files changed, 534 insertions(+), 416 deletions(-)
---
base-commit: 8aee06aa4c72e9bdfda81ce720b51fe0fe0f307e
change-id: 20260523-claude-fixes-82b03a134a8c
Best regards,
--
Adrián Larumbe <adrian.larumbe@collabora.com>
next reply other threads:[~2026-08-26 21:19 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-26 21:18 Adrián Larumbe [this message]
2026-08-26 21:18 ` [PATCH v6 01/16] drm/panfrost: Move shrinker initialization and unplug one level down Adrián Larumbe
2026-08-26 21:18 ` [PATCH v6 02/16] drm/panfrost: Move all DRM device initialisation into device_init() Adrián Larumbe
2026-08-26 21:18 ` [PATCH v6 03/16] drm/panfrost: Move lock and modparam initialisations into their subsystems Adrián Larumbe
2026-08-26 21:18 ` [PATCH v6 04/16] drm/panfrost: Move debugfs initialisation to relevant subsystems Adrián Larumbe
2026-08-26 21:18 ` [PATCH v6 05/16] drm/panfrost: Skip NULL checks for clock enable/disabling Adrián Larumbe
2026-08-26 21:18 ` [PATCH v6 06/16] drm/panfrost: Consolidate device clock management and reset Adrián Larumbe
2026-08-26 21:18 ` [PATCH v6 07/16] drm/panfrost: Split subsystem init/reset from interrupt enablement Adrián Larumbe
2026-08-26 21:18 ` [PATCH v6 08/16] drm/panfrost: Fix PM refcnt and autosuspend issues at device probe/remove Adrián Larumbe
2026-08-26 21:18 ` [PATCH v6 09/16] drm/panfrost: Add warning messages to fatal error conditions Adrián Larumbe
2026-08-26 21:18 ` [PATCH v6 10/16] drm/panfrost: Add debugfs knob for manually triggering a GPU reset Adrián Larumbe
2026-08-26 21:18 ` [PATCH v6 11/16] drm/panfrost: Move perfcnt GPU disable sequence into a helper Adrián Larumbe
2026-08-26 21:18 ` [PATCH v6 12/16] drm/panfrost: Skip cache flush/invalidate when enabling perfcnt Adrián Larumbe
2026-08-26 21:18 ` [PATCH v6 13/16] drm/panfrost: Avoid cache flush after perfcnt sample in fully coherent systems Adrián Larumbe
2026-08-26 21:18 ` [PATCH v6 14/16] drm/panfrost: Introduce a reset lock Adrián Larumbe
2026-08-26 21:18 ` [PATCH v6 15/16] drm/panfrost: Fix races between perfcnt and reset sequence Adrián Larumbe
2026-08-26 21:18 ` [PATCH v6 16/16] drm/panfrost: Bump driver minor to reflect new DUMP IOCTL req field Adrián Larumbe
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260826-claude-fixes-v6-0-78119af409e7@collabora.com \
--to=adrian.larumbe@collabora.com \
--cc=airlied@gmail.com \
--cc=alyssa.rosenzweig@collabora.com \
--cc=boris.brezillon@collabora.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=eric@anholt.net \
--cc=faith.ekstrand@collabora.com \
--cc=hanetzer@startmail.com \
--cc=kernel@collabora.com \
--cc=linux-kernel@vger.kernel.org \
--cc=maarten.lankhorst@linux.intel.com \
--cc=mripard@kernel.org \
--cc=neil.armstrong@linaro.org \
--cc=p.zabel@pengutronix.de \
--cc=robh@kernel.org \
--cc=robin.murphy@arm.com \
--cc=simona@ffwll.ch \
--cc=steven.price@arm.com \
--cc=tomeu@tomeuvizoso.net \
--cc=tzimmermann@suse.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®