[PATCH v8 7/8] drm/imx: Add drm_panic support
Jocelyn Falempe
jfalempe at redhat.com
Tue Feb 27 10:04:18 UTC 2024
Add support for the drm_panic module, which displays a user-friendly
message to the screen when a kernel panic occurs.
v7:
* use drm_panic_gem_get_scanout_buffer() helper
v8:
* Replace get_scanout_buffer() logic with drm_panic_set_buffer()
Signed-off-by: Jocelyn Falempe <jfalempe at redhat.com>
---
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c b/drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
index dade8b59feae..e820858732ec 100644
--- a/drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
+++ b/drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
@@ -14,6 +14,7 @@
#include <drm/drm_gem_atomic_helper.h>
#include <drm/drm_gem_dma_helper.h>
#include <drm/drm_managed.h>
+#include <drm/drm_panic.h>
#include <video/imx-ipu-v3.h>
@@ -765,6 +766,8 @@ static void ipu_plane_atomic_update(struct drm_plane *plane,
ipu_cpmem_set_buffer(ipu_plane->ipu_ch, 1, eba);
ipu_idmac_lock_enable(ipu_plane->ipu_ch, num_bursts);
ipu_plane_enable(ipu_plane);
+
+ drm_panic_gem_set_scanout_buffer(plane, fb);
}
static const struct drm_plane_helper_funcs ipu_plane_helper_funcs = {
@@ -942,6 +945,8 @@ struct ipu_plane *ipu_plane_init(struct drm_device *dev, struct ipu_soc *ipu,
zpos ? "overlay" : "primary", &ret);
return ERR_PTR(ret);
}
+ if (type == DRM_PLANE_TYPE_PRIMARY)
+ drm_panic_register(&ipu_plane->base);
return ipu_plane;
}
--
2.43.0
More information about the dri-devel
mailing list