drm/tegra: Store pointer to vmap'ed framebuffer in screen_buffer
authorThomas Zimmermann <tzimmermann@suse.de>
Fri, 7 Jul 2023 08:31:56 +0000 (10:31 +0200)
committerThomas Zimmermann <tzimmermann@suse.de>
Mon, 24 Jul 2023 18:14:43 +0000 (20:14 +0200)
Tegra uses DMA-able memory, which has to be acessed with CPU ops
for system-memory. Store the framebuffer's vmap address in struct
fb_info.screen_buffer. The currently used field 'screen_base' is
for I/O memory.

Suggested-by: Thierry Reding <thierry.reding@gmail.com>
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Mikko Perttunen <mperttunen@nvidia.com>
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
Acked-by: Thierry Reding <treding@nvidia.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230707083422.18691-6-tzimmermann@suse.de
drivers/gpu/drm/tegra/fbdev.c

index 7204784..206a399 100644 (file)
@@ -133,7 +133,7 @@ static int tegra_fbdev_probe(struct drm_fb_helper *helper,
        }
 
        info->flags |= FBINFO_VIRTFB;
-       info->screen_base = (void __iomem *)bo->vaddr + offset;
+       info->screen_buffer = bo->vaddr + offset;
        info->screen_size = size;
        info->fix.smem_start = (unsigned long)(bo->iova + offset);
        info->fix.smem_len = size;