mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH v1 0/4] drm/tyr: implement GPU reset API
@ 2026-03-09 20:53 Onur Özkan
  2026-03-09 20:53 ` [PATCH v1 1/4] drm/tyr: clear reset IRQ before soft reset Onur Özkan
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Onur Özkan @ 2026-03-09 20:53 UTC (permalink / raw)
  To: linux-kernel
  Cc: dakr, aliceryhl, daniel.almeida, airlied, simona, Onur Özkan

This series adds GPU reset handling support for Tyr in a new module
drivers/gpu/drm/tyr/driver.rs which encapsulates the low-level reset
controller internals and exposes a ResetHandle API to the driver.

The reset module owns reset state, queueing and execution ordering
through OrderedQueue and handles duplicate/concurrent reset requests
with a pending flag.

Apart from the reset module, the first 3 patches:

- Fixes a potential reset-complete stale state bug by clearing completed
  state before doing soft reset.
- Adds Work::disable_sync() (wrapper of bindings::disable_work_sync).
- Adds OrderedQueue support.

Runtime tested on hardware by Deborah Brouwer (see [1]) and myself.

[1]: https://gitlab.freedesktop.org/panfrost/linux/-/merge_requests/63#note_3364131

Link: https://gitlab.freedesktop.org/panfrost/linux/-/issues/28
---

Onur Özkan (4):
  drm/tyr: clear reset IRQ before soft reset
  rust: add Work::disable_sync
  rust: add ordered workqueue wrapper
  drm/tyr: add GPU reset handling

 drivers/gpu/drm/tyr/driver.rs |  38 +++----
 drivers/gpu/drm/tyr/reset.rs  | 180 ++++++++++++++++++++++++++++++++++
 drivers/gpu/drm/tyr/tyr.rs    |   1 +
 rust/helpers/workqueue.c      |   6 ++
 rust/kernel/workqueue.rs      |  62 ++++++++++++
 5 files changed, 260 insertions(+), 27 deletions(-)
 create mode 100644 drivers/gpu/drm/tyr/reset.rs


base-commit: 0ccc0dac94bf2f5c6eb3e9e7f1014cd9dddf009f
-- 
2.51.2


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2026-03-09 21:01 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-03-09 20:53 [PATCH v1 0/4] drm/tyr: implement GPU reset API Onur Özkan
2026-03-09 20:53 ` [PATCH v1 1/4] drm/tyr: clear reset IRQ before soft reset Onur Özkan
2026-03-09 20:53 ` [PATCH v1 2/4] rust: add Work::disable_sync Onur Özkan
2026-03-09 20:53 ` [PATCH v1 3/4] rust: add ordered workqueue wrapper Onur Özkan
2026-03-09 20:53 ` [PATCH v1 4/4] drm/tyr: add GPU reset handling Onur Özkan

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®