Re: [PATCH 00/10] drm/radeon: Convert fbdev to DRM client

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi

Am 20.03.23 um 16:11 schrieb Christian König:
Am 17.03.23 um 10:20 schrieb Thomas Zimmermann:
Hi Christian

Am 17.03.23 um 09:53 schrieb Christian König:
Am 16.03.23 um 10:37 schrieb Thomas Zimmermann:
Convert radeon's fbdev code to drm_client. Replaces the current
ad-hoc integration. The conversion includes a number of cleanups.
Only build fbdev support if the config option has been set.

I'm torn apart on that. On the one hand it looks like a really nice cleanup on the other hand we don't really want to touch radeon any more.

It's a driver in the upstream kernel. You have to expect at least some changes.

Some changes is not the problem, but we need a justification to change something. Just that it's nice to have won't do it without extensive testing.



Alex what do you think? Is that worth the risk of breaking stuff?

Moving all fbdev emulation to struct drm_client is required for new in-kernel DRM clients, such as a DRM kernel logger or a boot splash.

Well that's a rather good justification. I suggest to add that to the cover-letter.

Ok, will go into a possible v2. The mid-term plan is to convert the fbdev code in all remaining drivers to struct drm_client and remove the old ad-hoc callbacks.

With struct drm_client, we can select in-kernel clients at compile time or runtime just like userspace clients. I guess, we can have a bootup screen and then switch to the console or the DRM logger. Or go from any client to the logger on kernel panics (or something like that). There's been occasional talk about userspace consoles, which would use such functionality.

Best regards
Thomas


Regards,
Christian.


Best regards
Thomas


Christian.


Thomas Zimmermann (10):
   drm/radeon: Move radeon_align_pitch() next to dumb-buffer helpers
   drm/radeon: Improve fbdev object-test helper
   drm/radeon: Remove struct radeon_fbdev
   drm/radeon: Remove test for !screen_base in fbdev probing
   drm/radeon: Move fbdev object helpers before struct fb_ops et al
   drm/radeon: Fix coding style in fbdev emulation
   drm/radeon: Move fbdev cleanup code into fb_destroy callback
   drm/radeon: Correctly clean up failed display probing
   drm/radeon: Implement client-based fbdev emulation
   drm/radeon: Only build fbdev if DRM_FBDEV_EMULATION is set

  drivers/gpu/drm/radeon/Makefile         |   3 +-
  drivers/gpu/drm/radeon/radeon.h         |   2 +
  drivers/gpu/drm/radeon/radeon_display.c |   4 -
  drivers/gpu/drm/radeon/radeon_drv.c     |   3 +-
  drivers/gpu/drm/radeon/radeon_drv.h     |   1 -
  drivers/gpu/drm/radeon/radeon_fb.c      | 400 ----------------------
  drivers/gpu/drm/radeon/radeon_fbdev.c   | 422 ++++++++++++++++++++++++
  drivers/gpu/drm/radeon/radeon_gem.c     |  24 ++
  drivers/gpu/drm/radeon/radeon_kms.c     |  18 -
  drivers/gpu/drm/radeon/radeon_mode.h    |  20 +-
  10 files changed, 464 insertions(+), 433 deletions(-)
  delete mode 100644 drivers/gpu/drm/radeon/radeon_fb.c
  create mode 100644 drivers/gpu/drm/radeon/radeon_fbdev.c


base-commit: ec0708e846b819c8d5b642de42448a87d7526564




--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
(HRB 36809, AG Nürnberg)
Geschäftsführer: Ivo Totev

Attachment: OpenPGP_signature
Description: OpenPGP digital signature


[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux