Message ID | 20240409081029.17843-1-tzimmermann@suse.de (mailing list archive) |
---|---|
Headers | show |
Series | drm/{i915,xe}: Convert fbdev to DRM client | expand |
On Tue, Apr 09, 2024 at 10:04:22AM GMT, Thomas Zimmermann wrote: >(was: drm/i915: Convert fbdev to DRM client) > >Convert i915's fbdev code to struct drm_client. Replaces the current >ad-hoc integration. The conversion includes a number of cleanups. Also >update the xe driver accordingly. > >As with the other drivers' fbdev emulation, fbdev in i915 is now >an in-kernel DRM client that runs after the DRM device has been >registered. This allows to remove the asynchronous initialization. > >i915 and xe are the final drivers with an fbdev emulation that is not >build upon struct drm_client. Once reviewed, the patches would ideally go >into drm-misc-next, so that the old fbdev helper code can be removed. > >We can also attempt to add additional in-kernel clients. A DRM-based >dmesg log or a bootsplash are commonly mentioned. DRM can then switch >easily among the existing clients if/when required. > >v8: >- do setup and cleanup in intel_display_driver_{register,unregister}() > (Jani, Jouni) >- mention xe in several commit messages (Rodrigo, Jani) >- resort patches to put driver-independent changes first >- slightly reword cover letter > >v7: >- update xe driver > >v6: >- reorder patches to fix build (Jouni) >- remove unnecessary handling of non-atomic commits (Jouni, Ville) >- return errors from callbacks (Jouni) >- various minor fixes > >v5: >- style fixes (checkpatch) > >v4: ><no changes> > >v3: >- support module unloading (Jani, CI bot) >- as before, silently ignore devices without displays (CI bot) > >v2: >- fix error handling (Jani) >- fix non-fbdev builds >- various minor fixes and cleanups > >Thomas Zimmermann (6): > drm/client: Export drm_client_dev_unregister() > drm/i915: Move fbdev functions > drm/i915: Initialize fbdev DRM client with callback functions > drm/{i915,xe}: Unregister in-kernel clients > drm/{i915,xe}: Implement fbdev client callbacks > drm/{i915,xe}: Implement fbdev emulation as in-kernel client > > drivers/gpu/drm/drm_client.c | 13 + > drivers/gpu/drm/i915/display/intel_display.c | 1 - > .../drm/i915/display/intel_display_driver.c | 24 +- > drivers/gpu/drm/i915/display/intel_fbdev.c | 265 ++++++++++-------- > drivers/gpu/drm/i915/display/intel_fbdev.h | 29 +- > drivers/gpu/drm/i915/i915_driver.c | 22 -- > drivers/gpu/drm/xe/display/xe_display.c | 11 - > drivers/gpu/drm/xe/xe_device.c | 1 + Acked-by: Lucas De Marchi <lucas.demarchi@intel.com> thanks Lucas De Marchi > 8 files changed, 167 insertions(+), 199 deletions(-) > >-- >2.44.0 >