diff options
author | Hans de Goede <hdegoede@redhat.com> | 2020-03-26 16:10:09 +0100 |
---|---|---|
committer | Hans de Goede <hdegoede@redhat.com> | 2020-03-27 10:46:54 +0100 |
commit | 1a8bf67df6d87912ab1fc17fa1a7d63fbddddaee (patch) | |
tree | 3543ce36d4bc5d248d4952197f2a96ed96e77920 /drivers/gpu/drm/drm_fb_helper.c | |
parent | 5ea5647f491876027064780cf1ea0beb041e7e41 (diff) | |
download | linux-stable-1a8bf67df6d87912ab1fc17fa1a7d63fbddddaee.tar.gz linux-stable-1a8bf67df6d87912ab1fc17fa1a7d63fbddddaee.tar.bz2 linux-stable-1a8bf67df6d87912ab1fc17fa1a7d63fbddddaee.zip |
drm/fb-helper: Add TODO for making drm_fb_helper_alloc_fbi fill apertures
Currently drivers using drm_fbdev_generic_setup() end up with a single
empty aperture in their fb_info struct.
Not having the proper info in the apertures list causes
register_framebuffer to not remove conflicting framebuffers,
which some drivers currently workaround by manually calling
drm_fb_helper_remove_conflicting_pci_framebuffers().
Add a TODO as a reminder that we need to fix this.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: https://patchwork.freedesktop.org/patch/msgid/20200326151009.102377-1-hdegoede@redhat.com
Diffstat (limited to 'drivers/gpu/drm/drm_fb_helper.c')
-rw-r--r-- | drivers/gpu/drm/drm_fb_helper.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c index a9771de4d17e..165c8dab5079 100644 --- a/drivers/gpu/drm/drm_fb_helper.c +++ b/drivers/gpu/drm/drm_fb_helper.c @@ -514,6 +514,14 @@ struct fb_info *drm_fb_helper_alloc_fbi(struct drm_fb_helper *fb_helper) if (ret) goto err_release; + /* + * TODO: We really should be smarter here and alloc an apperture + * for each IORESOURCE_MEM resource helper->dev->dev has and also + * init the ranges of the appertures based on the resources. + * Note some drivers currently count on there being only 1 empty + * aperture and fill this themselves, these will need to be dealt + * with somehow when fixing this. + */ info->apertures = alloc_apertures(1); if (!info->apertures) { ret = -ENOMEM; |