All of lore.kernel.org
 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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.