Thread (84 messages) 84 messages, 14 authors, 2024-10-23

Re: [PATCH 01/43] drm/fbdev-generic: Do not set physical framebuffer address

From: Maxime Ripard <mripard@kernel.org>
Date: 2024-03-18 08:44:17
Also in: dri-devel, stable

On Mon, Mar 18, 2024 at 08:59:01AM +0100, Thomas Zimmermann wrote:
Hi

Am 18.03.24 um 03:35 schrieb Zack Rusin:
quoted
On Tue, Mar 12, 2024 at 11:48 AM Thomas Zimmermann [off-list ref] wrote:
quoted
Framebuffer memory is allocated via vmalloc() from non-contiguous
physical pages. The physical framebuffer start address is therefore
meaningless. Do not set it.

The value is not used within the kernel and only exported to userspace
on dedicated ARM configs. No functional change is expected.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Fixes: a5b44c4adb16 ("drm/fbdev-generic: Always use shadow buffering")
Cc: Thomas Zimmermann <tzimmermann@suse.de>
Cc: Javier Martinez Canillas <javierm@redhat.com>
Cc: Zack Rusin <redacted>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Maxime Ripard <mripard@kernel.org>
Cc: <redacted> # v6.4+
---
  drivers/gpu/drm/drm_fbdev_generic.c | 1 -
  1 file changed, 1 deletion(-)
diff --git a/drivers/gpu/drm/drm_fbdev_generic.c b/drivers/gpu/drm/drm_fbdev_generic.c
index d647d89764cb9..b4659cd6285ab 100644
--- a/drivers/gpu/drm/drm_fbdev_generic.c
+++ b/drivers/gpu/drm/drm_fbdev_generic.c
@@ -113,7 +113,6 @@ static int drm_fbdev_generic_helper_fb_probe(struct drm_fb_helper *fb_helper,
         /* screen */
         info->flags |= FBINFO_VIRTFB | FBINFO_READS_FAST;
         info->screen_buffer = screen_buffer;
-       info->fix.smem_start = page_to_phys(vmalloc_to_page(info->screen_buffer));
         info->fix.smem_len = screen_size;

         /* deferred I/O */
--
2.44.0
Good idea. I think given that drm_leak_fbdev_smem is off by default we
could remove the setting of smem_start by all of the in-tree drm
drivers (they all have open source userspace that won't mess around
with fbdev fb) - it will be reset to 0 anyway. Actually, I wonder if
we still need drm_leak_fbdev_smem at all...
All I know is that there's an embedded userspace driver that requires that
setting. I don't even know which hardware.
The original Mali driver (ie, lima) used to require it, that's why we
introduced it in the past.

I'm not sure if the newer versions of that driver, or if newer Mali
generations (ie, panfrost and panthor) closed source driver would
require it, so it might be worth removing if it's easy enough to revert.

Maxime

Attachments

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help