]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
Revert "fbdev: fbmem: add a helper to determine if an aperture is used by a fw fb"
authorAlex Deucher <alexander.deucher@amd.com>
Wed, 4 May 2022 13:27:10 +0000 (09:27 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Thu, 5 May 2022 20:50:08 +0000 (16:50 -0400)
This reverts commit 9a45ac2320d0a6ae01880a30d4b86025fce4061b.

This was added a helper for amdgpu to workaround a runtime pm regression
caused by a runtime pm fix in efifb.  We now have a better workaround
in amdgpu in
commit f95af4a9236695 ("drm/amdgpu: don't runtime suspend if there are displays attached (v3)")
so this workaround is no longer necessary.  Since amdgpu was the only
user of this interface, we can remove it.

Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/video/fbdev/core/fbmem.c
include/linux/fb.h

index ad9aac06427a05767292c334f661cfe1934a0677..700ac4a83329fad9bc6d3076fa6e1e53c924f813 100644 (file)
@@ -1783,53 +1783,6 @@ int remove_conflicting_framebuffers(struct apertures_struct *a,
 }
 EXPORT_SYMBOL(remove_conflicting_framebuffers);
 
-/**
- * is_firmware_framebuffer - detect if firmware-configured framebuffer matches
- * @a: memory range, users of which are to be checked
- *
- * This function checks framebuffer devices (initialized by firmware/bootloader)
- * which use memory range described by @a. If @a matchesm the function returns
- * true, otherwise false.
- */
-bool is_firmware_framebuffer(struct apertures_struct *a)
-{
-       bool do_free = false;
-       bool found = false;
-       int i;
-
-       if (!a) {
-               a = alloc_apertures(1);
-               if (!a)
-                       return false;
-
-               a->ranges[0].base = 0;
-               a->ranges[0].size = ~0;
-               do_free = true;
-       }
-
-       mutex_lock(&registration_lock);
-       /* check all firmware fbs and kick off if the base addr overlaps */
-       for_each_registered_fb(i) {
-               struct apertures_struct *gen_aper;
-
-               if (!(registered_fb[i]->flags & FBINFO_MISC_FIRMWARE))
-                       continue;
-
-               gen_aper = registered_fb[i]->apertures;
-               if (fb_do_apertures_overlap(gen_aper, a)) {
-                       found = true;
-                       break;
-               }
-       }
-       mutex_unlock(&registration_lock);
-
-       if (do_free)
-               kfree(a);
-
-       return found;
-}
-EXPORT_SYMBOL(is_firmware_framebuffer);
-
 /**
  * remove_conflicting_pci_framebuffers - remove firmware-configured framebuffers for PCI devices
  * @pdev: PCI device
index 9a77ab615c362302d21eb465365fa528986683df..147d582dab41f93895f6ec29b4baa348c2bd1c83 100644 (file)
@@ -612,7 +612,6 @@ extern int remove_conflicting_pci_framebuffers(struct pci_dev *pdev,
                                               const char *name);
 extern int remove_conflicting_framebuffers(struct apertures_struct *a,
                                           const char *name, bool primary);
-extern bool is_firmware_framebuffer(struct apertures_struct *a);
 extern int fb_prepare_logo(struct fb_info *fb_info, int rotate);
 extern int fb_show_logo(struct fb_info *fb_info, int rotate);
 extern char* fb_get_buffer_offset(struct fb_info *info, struct fb_pixmap *buf, u32 size);