[RFC PATCH v2 0/5] drm/i915: Add drm_panic support

From: Jocelyn Falempe
Date: Tue Dec 03 2024 - 04:30:56 EST


This is a first draft of drm_panic support for i915.

I've tested it on the 3 intel laptops I have at my disposal.
one Haswell with 128MB of eDRAM, one Cometlake and one Alderlake.

I tested panic in both fbdev console and gnome desktop.

I still have an issue with Alderlake, and it doesn't work when in gnome desktop.
If I disable tiling on a framebuffer using DPT, then it displays some other memory location.
As DPT is enabled only for tiled framebuffer, there might be some hardware limitations?
I think it can be worked around by drawing the image tiled, (like what I've done on nouveau https://patchwork.freedesktop.org/series/133963/), but maybe there is another way?

Best regards,

v2:
* Add the proper abstractions to build also for Xe.
* Fix dim checkpatch issues.

Jocelyn Falempe (5):
drm/i915/fbdev: Add intel_fbdev_get_vaddr()
drm/i915/display/i9xx: Add a disable_tiling() for i9xx planes
drm/i915/display: Add a disable_tiling() for skl planes
drm/i915/gem: Add i915_gem_object_panic_map()
drm/i915: Add drm_panic support

drivers/gpu/drm/i915/display/i9xx_plane.c | 23 +++++
.../gpu/drm/i915/display/intel_atomic_plane.c | 85 ++++++++++++++++++-
drivers/gpu/drm/i915/display/intel_bo.c | 10 +++
drivers/gpu/drm/i915/display/intel_bo.h | 2 +
.../drm/i915/display/intel_display_types.h | 2 +
drivers/gpu/drm/i915/display/intel_fb_pin.c | 5 ++
drivers/gpu/drm/i915/display/intel_fb_pin.h | 1 +
drivers/gpu/drm/i915/display/intel_fbdev.c | 5 ++
drivers/gpu/drm/i915/display/intel_fbdev.h | 6 ++
.../drm/i915/display/skl_universal_plane.c | 20 +++++
drivers/gpu/drm/i915/gem/i915_gem_object.h | 2 +
drivers/gpu/drm/i915/gem/i915_gem_pages.c | 25 ++++++
drivers/gpu/drm/i915/i915_vma.h | 5 ++
drivers/gpu/drm/xe/display/intel_bo.c | 11 +++
drivers/gpu/drm/xe/display/xe_fb_pin.c | 5 ++
15 files changed, 206 insertions(+), 1 deletion(-)


base-commit: 44cff6c5b0b17a78bc0b30372bcd816cf6dd282a
--
2.47.1