Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/12] drm/{i915,xe}: Convert to DRM client setup
@ 2024-12-12 17:08 Thomas Zimmermann
  2024-12-12 17:08 ` [PATCH 01/12] drm/{i915, xe}: Suspend/resume fbdev emulation via client interfaces Thomas Zimmermann
                   ` (21 more replies)
  0 siblings, 22 replies; 33+ messages in thread
From: Thomas Zimmermann @ 2024-12-12 17:08 UTC (permalink / raw)
  To: jani.nikula, rodrigo.vivi, joonas.lahtinen, tursulin,
	lucas.demarchi, thomas.hellstrom, simona, airlied, mripard,
	maarten.lankhorst, jfalempe, javierm
  Cc: intel-gfx, intel-xe, dri-devel, Thomas Zimmermann

i915 and xe are the last remaining drivers that still implement their
own fbdev client. All other clients have been mass converted to DRM's
client setup in in the series at [1]. As Intel drivers require more
effort than others, their changes have been moved into this separate
series.

With DRM's client setup, DRM picks the in-kernel client from the
kernel's config and parameters. Besides fbdev there's also drm_log
available. For fbdev support, the driver only has to implement struct
drm_driver.fbdev_probe, a callback that allocates a compatible
framebuffer.

At first, some details of the Intel implementation have to be rebuild
for the generic client and fbdev handling. Patches 1 to 6 do that.
Hotplugging and suspend/resume are then hidden behind callbacks. Some
Intel-specifics in the restore and suspend code get their own hooks.

Patches 7 to 9 prepare Intel's fbdev implementation ot get things
out of the way.

Patch 10 converts i915 and xe to DRM's client setup. Patches 11 and
12 clean up the remaining code.

Tested with i915 and xe hardware.

[1] https://patchwork.freedesktop.org/series/137391/

Thomas Zimmermann (12):
  drm/{i915,xe}: Suspend/resume fbdev emulation via client interfaces
  drm/client: Add client-hotplug helper
  drm/client: Send pending hotplug events after resume
  drm/i915/display: Remove fbdev suspend and hotplug tracking
  drm/i915/display: fbdev: Move custom restore code to new callback
  drm/i915/display: fbdev: Move custom suspend code to new callback
  drm/i915/display: Remove preferred_bpp from struct intel_fbdev
  drm/i915/display: Remove struct drm_fb_helper from struct intel_fbdev
  drm/i915/display: Move fbdev code around
  drm/{i915,xe}: Run DRM default client setup
  drm/i915/display: Remove compile guard around fbdev debugfs output
  drm/fb-helper: Remove struct drm_fb_helper.fb_probe

 drivers/gpu/drm/drm_client_event.c            |  41 ++-
 drivers/gpu/drm/drm_fb_helper.c               |  20 +-
 .../gpu/drm/i915/display/intel_display_core.h |   1 -
 .../drm/i915/display/intel_display_debugfs.c  |   2 -
 drivers/gpu/drm/i915/display/intel_fbdev.c    | 338 ++++--------------
 drivers/gpu/drm/i915/display/intel_fbdev.h    |  17 +-
 drivers/gpu/drm/i915/i915_driver.c            |  10 +-
 drivers/gpu/drm/xe/display/xe_display.c       |  12 +-
 include/drm/drm_client.h                      |   8 +
 include/drm/drm_fb_helper.h                   |  44 ++-
 10 files changed, 176 insertions(+), 317 deletions(-)


base-commit: 7bbcd7df9387f0d9004f997df33f7a9472d9c080
-- 
2.47.1


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

end of thread, other threads:[~2025-03-04 21:39 UTC | newest]

Thread overview: 33+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-12-12 17:08 [PATCH 00/12] drm/{i915,xe}: Convert to DRM client setup Thomas Zimmermann
2024-12-12 17:08 ` [PATCH 01/12] drm/{i915, xe}: Suspend/resume fbdev emulation via client interfaces Thomas Zimmermann
2025-02-11 20:55   ` Rodrigo Vivi
2025-02-12  7:43     ` Thomas Zimmermann
2024-12-12 17:08 ` [PATCH 02/12] drm/client: Add client-hotplug helper Thomas Zimmermann
2024-12-12 17:08 ` [PATCH 03/12] drm/client: Send pending hotplug events after resume Thomas Zimmermann
2024-12-12 17:08 ` [PATCH 04/12] drm/i915/display: Remove fbdev suspend and hotplug tracking Thomas Zimmermann
2024-12-12 17:08 ` [PATCH 05/12] drm/i915/display: fbdev: Move custom restore code to new callback Thomas Zimmermann
2024-12-12 17:08 ` [PATCH 06/12] drm/i915/display: fbdev: Move custom suspend " Thomas Zimmermann
2024-12-12 17:08 ` [PATCH 07/12] drm/i915/display: Remove preferred_bpp from struct intel_fbdev Thomas Zimmermann
2024-12-12 17:08 ` [PATCH 08/12] drm/i915/display: Remove struct drm_fb_helper " Thomas Zimmermann
2024-12-12 17:08 ` [PATCH 09/12] drm/i915/display: Move fbdev code around Thomas Zimmermann
2024-12-12 17:08 ` [PATCH 10/12] drm/{i915,xe}: Run DRM default client setup Thomas Zimmermann
2025-01-07 12:10   ` Jocelyn Falempe
2025-01-07 14:42     ` Thomas Zimmermann
2025-01-07 15:18       ` Jocelyn Falempe
2024-12-12 17:08 ` [PATCH 11/12] drm/i915/display: Remove compile guard around fbdev debugfs output Thomas Zimmermann
2024-12-12 17:08 ` [PATCH 12/12] drm/fb-helper: Remove struct drm_fb_helper.fb_probe Thomas Zimmermann
2024-12-12 17:53 ` ✓ CI.Patch_applied: success for drm/{i915,xe}: Convert to DRM client setup Patchwork
2024-12-12 17:53 ` ✓ CI.checkpatch: " Patchwork
2024-12-12 17:55 ` ✓ CI.KUnit: " Patchwork
2024-12-12 18:13 ` ✓ CI.Build: " Patchwork
2024-12-12 18:15 ` ✓ CI.Hooks: " Patchwork
2024-12-12 18:17 ` ✗ CI.checksparse: warning " Patchwork
2024-12-12 18:47 ` ✓ Xe.CI.BAT: success " Patchwork
2024-12-12 23:18 ` ✗ Xe.CI.Full: failure " Patchwork
2025-01-07  9:07 ` [PATCH 00/12] " Thomas Zimmermann
2025-02-11  7:17 ` Thomas Zimmermann
2025-02-12  7:28   ` Maarten Lankhorst
2025-02-12  7:42     ` Thomas Zimmermann
2025-02-28  8:49     ` Thomas Zimmermann
2025-03-04 19:40       ` Maarten Lankhorst
2025-03-04 21:38         ` Jocelyn Falempe

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox