From: Thomas Zimmermann <tzimmermann@suse.de>
To: daniel@ffwll.ch, airlied@gmail.com, deller@gmx.de, javierm@redhat.com
Cc: dri-devel@lists.freedesktop.org, linux-fbdev@vger.kernel.org,
intel-gfx@lists.freedesktop.org, amd-gfx@lists.freedesktop.org,
linux-arm-kernel@lists.infradead.org,
linux-hyperv@vger.kernel.org,
Thomas Zimmermann <tzimmermann@suse.de>
Subject: [PATCH 18/18] drm/fbdev: Remove aperture handling and FBINFO_MISC_FIRMWARE
Date: Mon, 19 Dec 2022 17:05:16 +0100 [thread overview]
Message-ID: <20221219160516.23436-19-tzimmermann@suse.de> (raw)
In-Reply-To: <20221219160516.23436-1-tzimmermann@suse.de>
There are no users left of struct fb_info.apertures and the flag
FBINFO_MISC_FIRMWARE. Remove both and the aperture-ownership code
in the fbdev core. All code for aperture ownership is now located
in the fbdev drivers.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
---
drivers/video/fbdev/core/fbmem.c | 33 ------------------------------
drivers/video/fbdev/core/fbsysfs.c | 1 -
include/linux/fb.h | 22 --------------------
3 files changed, 56 deletions(-)
diff --git a/drivers/video/fbdev/core/fbmem.c b/drivers/video/fbdev/core/fbmem.c
index 3a6c8458eb8d..02217c33d152 100644
--- a/drivers/video/fbdev/core/fbmem.c
+++ b/drivers/video/fbdev/core/fbmem.c
@@ -13,7 +13,6 @@
#include <linux/module.h>
-#include <linux/aperture.h>
#include <linux/compat.h>
#include <linux/types.h>
#include <linux/errno.h>
@@ -1653,32 +1652,6 @@ static void do_unregister_framebuffer(struct fb_info *fb_info)
put_fb_info(fb_info);
}
-static int fb_aperture_acquire_for_platform_device(struct fb_info *fb_info)
-{
- struct apertures_struct *ap = fb_info->apertures;
- struct device *dev = fb_info->device;
- struct platform_device *pdev;
- unsigned int i;
- int ret;
-
- if (!ap)
- return 0;
-
- if (!dev_is_platform(dev))
- return 0;
-
- pdev = to_platform_device(dev);
-
- for (ret = 0, i = 0; i < ap->count; ++i) {
- ret = devm_aperture_acquire_for_platform_device(pdev, ap->ranges[i].base,
- ap->ranges[i].size);
- if (ret)
- break;
- }
-
- return ret;
-}
-
/**
* register_framebuffer - registers a frame buffer device
* @fb_info: frame buffer info structure
@@ -1693,12 +1666,6 @@ register_framebuffer(struct fb_info *fb_info)
{
int ret;
- if (fb_info->flags & FBINFO_MISC_FIRMWARE) {
- ret = fb_aperture_acquire_for_platform_device(fb_info);
- if (ret)
- return ret;
- }
-
mutex_lock(®istration_lock);
ret = do_register_framebuffer(fb_info);
mutex_unlock(®istration_lock);
diff --git a/drivers/video/fbdev/core/fbsysfs.c b/drivers/video/fbdev/core/fbsysfs.c
index 4d7f63892dcc..0c33c4adcd79 100644
--- a/drivers/video/fbdev/core/fbsysfs.c
+++ b/drivers/video/fbdev/core/fbsysfs.c
@@ -88,7 +88,6 @@ void framebuffer_release(struct fb_info *info)
mutex_destroy(&info->bl_curve_mutex);
#endif
- kfree(info->apertures);
kfree(info);
}
EXPORT_SYMBOL(framebuffer_release);
diff --git a/include/linux/fb.h b/include/linux/fb.h
index 96b96323e9cb..30183fd259ae 100644
--- a/include/linux/fb.h
+++ b/include/linux/fb.h
@@ -423,8 +423,6 @@ struct fb_tile_ops {
*/
#define FBINFO_MISC_ALWAYS_SETPAR 0x40000
-/* where the fb is a firmware driver, and can be replaced with a proper one */
-#define FBINFO_MISC_FIRMWARE 0x80000
/*
* Host and GPU endianness differ.
*/
@@ -499,30 +497,10 @@ struct fb_info {
void *fbcon_par; /* fbcon use-only private area */
/* From here on everything is device dependent */
void *par;
- /* we need the PCI or similar aperture base/size not
- smem_start/size as smem_start may just be an object
- allocated inside the aperture so may not actually overlap */
- struct apertures_struct {
- unsigned int count;
- struct aperture {
- resource_size_t base;
- resource_size_t size;
- } ranges[0];
- } *apertures;
bool skip_vt_switch; /* no VT switch on suspend/resume required */
};
-static inline struct apertures_struct *alloc_apertures(unsigned int max_num) {
- struct apertures_struct *a;
-
- a = kzalloc(struct_size(a, ranges, max_num), GFP_KERNEL);
- if (!a)
- return NULL;
- a->count = max_num;
- return a;
-}
-
#define FBINFO_FLAG_DEFAULT FBINFO_DEFAULT
/* This will go away
--
2.39.0
next prev parent reply other threads:[~2022-12-19 16:05 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-12-19 16:04 [PATCH 00/18] drm,fbdev: Remove apertures structure and FBINFO_MISC_FIRMWARE Thomas Zimmermann
2022-12-19 16:04 ` [PATCH 01/18] fbcon: Remove trailing whitespaces Thomas Zimmermann
2022-12-20 9:10 ` Javier Martinez Canillas
2022-12-19 16:05 ` [PATCH 02/18] Revert "fbcon: don't lose the console font across generic->chip driver switch" Thomas Zimmermann
2022-12-20 9:17 ` Javier Martinez Canillas
2022-12-19 16:05 ` [PATCH 03/18] drm/gma500: Do not set struct fb_info.apertures Thomas Zimmermann
2022-12-20 9:18 ` Javier Martinez Canillas
2022-12-19 16:05 ` [PATCH 04/18] drm/i915: " Thomas Zimmermann
2022-12-20 9:19 ` Javier Martinez Canillas
2022-12-19 16:05 ` [PATCH 05/18] drm/radeon: " Thomas Zimmermann
2022-12-20 9:19 ` Javier Martinez Canillas
2022-12-19 16:05 ` [PATCH 06/18] drm/fb-helper: Do not allocate unused apertures structure Thomas Zimmermann
2022-12-20 9:22 ` Javier Martinez Canillas
2022-12-19 16:05 ` [PATCH 07/18] fbdev/clps711x-fb: Do not set struct fb_info.apertures Thomas Zimmermann
2022-12-20 9:24 ` Javier Martinez Canillas
2022-12-19 16:05 ` [PATCH 08/18] fbdev/hyperv-fb: " Thomas Zimmermann
2022-12-20 9:24 ` Javier Martinez Canillas
2022-12-29 15:57 ` Michael Kelley (LINUX)
2022-12-19 16:05 ` [PATCH 09/18] vfio-mdev/mdpy-fb: " Thomas Zimmermann
2022-12-20 9:32 ` Javier Martinez Canillas
2023-01-03 13:54 ` Thomas Zimmermann
2022-12-19 16:05 ` [PATCH 10/18] fbdev/efifb: Add struct efifb_par for driver data Thomas Zimmermann
2022-12-20 9:33 ` Javier Martinez Canillas
2022-12-19 16:05 ` [PATCH 11/18] fbdev/efifb: Do not use struct fb_info.apertures Thomas Zimmermann
2022-12-20 9:35 ` Javier Martinez Canillas
2022-12-19 16:05 ` [PATCH 12/18] fbdev/offb: Allocate struct offb_par with framebuffer_alloc() Thomas Zimmermann
2022-12-20 9:37 ` Javier Martinez Canillas
2022-12-19 16:05 ` [PATCH 13/18] fbdev/offb: Do not use struct fb_info.apertures Thomas Zimmermann
2022-12-20 9:38 ` Javier Martinez Canillas
2022-12-19 16:05 ` [PATCH 14/18] fbdev/simplefb: " Thomas Zimmermann
2022-12-20 9:40 ` Javier Martinez Canillas
2022-12-19 16:05 ` [PATCH 15/18] fbdev/vesafb: Remove trailing whitespaces Thomas Zimmermann
2022-12-20 9:40 ` Javier Martinez Canillas
2022-12-19 16:05 ` [PATCH 16/18] fbdev/vesafb: Do not use struct fb_info.apertures Thomas Zimmermann
2022-12-20 9:43 ` Javier Martinez Canillas
2022-12-19 16:05 ` [PATCH 17/18] fbdev/vga16fb: " Thomas Zimmermann
2022-12-20 9:44 ` Javier Martinez Canillas
2022-12-19 16:05 ` Thomas Zimmermann [this message]
2022-12-20 9:46 ` [PATCH 18/18] drm/fbdev: Remove aperture handling and FBINFO_MISC_FIRMWARE Javier Martinez Canillas
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20221219160516.23436-19-tzimmermann@suse.de \
--to=tzimmermann@suse.de \
--cc=airlied@gmail.com \
--cc=amd-gfx@lists.freedesktop.org \
--cc=daniel@ffwll.ch \
--cc=deller@gmx.de \
--cc=dri-devel@lists.freedesktop.org \
--cc=intel-gfx@lists.freedesktop.org \
--cc=javierm@redhat.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-fbdev@vger.kernel.org \
--cc=linux-hyperv@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).