Re: [PATCH drm-next] drm/bochs: Add support for drm_panic
From: Jocelyn Falempe <jfalempe@redhat.com>
Date: 2025-06-19 06:42:30
Also in:
dri-devel, lkml
On 19/06/2025 08:37, Ryosuke Yasuoka wrote:
On Thu, Jun 19, 2025 at 3:12 PM Jocelyn Falempe [off-list ref] wrote:quoted
On 13/06/2025 15:20, Ryosuke Yasuoka wrote:quoted
Add drm_panic moudle for bochs drm so that panic screen can be displayed on panic.Thanks for the patch, it's simple and looks good to me. Reviewed-by: Jocelyn Falempe <jfalempe@redhat.com> If no objections, I will push it next Monday. Best regards, -- JocelynThank you Jocelyn for reviewing my patch. Now I found a typo in the commit message; moudle -> module.
No need to send a v2 for that, I will fix it before pushing the patch. Thanks, -- Jocelyn
Let me fix it in v2. Ryosukequoted
quoted
Signed-off-by: Ryosuke Yasuoka <redacted> --- drivers/gpu/drm/tiny/bochs.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+)diff --git a/drivers/gpu/drm/tiny/bochs.c b/drivers/gpu/drm/tiny/bochs.c index 8706763af8fb..ed42ad5c4927 100644 --- a/drivers/gpu/drm/tiny/bochs.c +++ b/drivers/gpu/drm/tiny/bochs.c@@ -19,6 +19,7 @@ #include <drm/drm_gem_shmem_helper.h> #include <drm/drm_managed.h> #include <drm/drm_module.h> +#include <drm/drm_panic.h> #include <drm/drm_plane_helper.h> #include <drm/drm_probe_helper.h>@@ -469,10 +470,28 @@ static void bochs_primary_plane_helper_atomic_update(struct drm_plane *plane, bochs_hw_setformat(bochs, fb->format); } +static int bochs_primary_plane_helper_get_scanout_buffer(struct drm_plane *plane, + struct drm_scanout_buffer *sb) +{ + struct bochs_device *bochs = to_bochs_device(plane->dev); + struct iosys_map map = IOSYS_MAP_INIT_VADDR_IOMEM(bochs->fb_map); + + if (plane->state && plane->state->fb) { + sb->format = plane->state->fb->format; + sb->width = plane->state->fb->width; + sb->height = plane->state->fb->height; + sb->pitch[0] = plane->state->fb->pitches[0]; + sb->map[0] = map; + return 0; + } + return -ENODEV; +} + static const struct drm_plane_helper_funcs bochs_primary_plane_helper_funcs = { DRM_GEM_SHADOW_PLANE_HELPER_FUNCS, .atomic_check = bochs_primary_plane_helper_atomic_check, .atomic_update = bochs_primary_plane_helper_atomic_update, + .get_scanout_buffer = bochs_primary_plane_helper_get_scanout_buffer, }; static const struct drm_plane_funcs bochs_primary_plane_funcs = {base-commit: 19272b37aa4f83ca52bdf9c16d5d81bdd1354494