dri-devel.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] drm/fb-helper: Add TODO for making drm_fb_helper_alloc_fbi fill apertures
@ 2020-03-26 15:10 Hans de Goede
  2020-03-26 17:55 ` Daniel Vetter
  0 siblings, 1 reply; 3+ messages in thread
From: Hans de Goede @ 2020-03-26 15:10 UTC (permalink / raw)
  To: Daniel Vetter, David Airlie; +Cc: Hans de Goede, dri-devel

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>
---
 drivers/gpu/drm/drm_fb_helper.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c
index 4c7cbce7bae7..16b8dc38d022 100644
--- a/drivers/gpu/drm/drm_fb_helper.c
+++ b/drivers/gpu/drm/drm_fb_helper.c
@@ -526,6 +526,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;
-- 
2.26.0.rc2

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

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

* Re: [PATCH] drm/fb-helper: Add TODO for making drm_fb_helper_alloc_fbi fill apertures
  2020-03-26 15:10 [PATCH] drm/fb-helper: Add TODO for making drm_fb_helper_alloc_fbi fill apertures Hans de Goede
@ 2020-03-26 17:55 ` Daniel Vetter
  2020-03-27 10:22   ` Hans de Goede
  0 siblings, 1 reply; 3+ messages in thread
From: Daniel Vetter @ 2020-03-26 17:55 UTC (permalink / raw)
  To: Hans de Goede; +Cc: David Airlie, Daniel Vetter, dri-devel

On Thu, Mar 26, 2020 at 4:10 PM Hans de Goede <hdegoede@redhat.com> wrote:
>
> 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>
> ---
>  drivers/gpu/drm/drm_fb_helper.c | 8 ++++++++
>  1 file changed, 8 insertions(+)
>
> diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c
> index 4c7cbce7bae7..16b8dc38d022 100644
> --- a/drivers/gpu/drm/drm_fb_helper.c
> +++ b/drivers/gpu/drm/drm_fb_helper.c
> @@ -526,6 +526,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.
> +        */

Ah yes this is a bit more involved than first apperances suggest - we
might want to have a dedicated solution for the generic_setup helper
only, so we don't break all the other drivers using this function
directly.

Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>

>         info->apertures = alloc_apertures(1);
>         if (!info->apertures) {
>                 ret = -ENOMEM;
> --
> 2.26.0.rc2
>
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel



-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

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

* Re: [PATCH] drm/fb-helper: Add TODO for making drm_fb_helper_alloc_fbi fill apertures
  2020-03-26 17:55 ` Daniel Vetter
@ 2020-03-27 10:22   ` Hans de Goede
  0 siblings, 0 replies; 3+ messages in thread
From: Hans de Goede @ 2020-03-27 10:22 UTC (permalink / raw)
  To: Daniel Vetter; +Cc: David Airlie, Daniel Vetter, dri-devel

Hi,

On 3/26/20 6:55 PM, Daniel Vetter wrote:
> On Thu, Mar 26, 2020 at 4:10 PM Hans de Goede <hdegoede@redhat.com> wrote:
>>
>> 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>
>> ---
>>   drivers/gpu/drm/drm_fb_helper.c | 8 ++++++++
>>   1 file changed, 8 insertions(+)
>>
>> diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c
>> index 4c7cbce7bae7..16b8dc38d022 100644
>> --- a/drivers/gpu/drm/drm_fb_helper.c
>> +++ b/drivers/gpu/drm/drm_fb_helper.c
>> @@ -526,6 +526,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.
>> +        */
> 
> Ah yes this is a bit more involved than first apperances suggest - we
> might want to have a dedicated solution for the generic_setup helper
> only, so we don't break all the other drivers using this function
> directly.
> 
> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>

Thank you, pushed to drm-misc-next.

Any chance you can perhaps take (another) look at:
https://patchwork.freedesktop.org/patch/340140/

? We had an interesting discussion about that which
seems (to me) to end in agreement and you asking for
more documentation. I replied to that that the patch
already added some (but not much) documentation and
then the discussion ended. I would still like to get
this patch upstream, as I have a userspace patch
(for plymouth) pending which depends on it.

Regards,

Hans

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

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

end of thread, other threads:[~2020-03-27 10:23 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-26 15:10 [PATCH] drm/fb-helper: Add TODO for making drm_fb_helper_alloc_fbi fill apertures Hans de Goede
2020-03-26 17:55 ` Daniel Vetter
2020-03-27 10:22   ` Hans de Goede

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).