]> git.proxmox.com Git - pve-kernel.git/blobdiff - patches/kernel/0012-drm-simpledrm-Request-memory-region-in-driver.patch
rebase patches on top of Ubuntu-5.15.0-29.30
[pve-kernel.git] / patches / kernel / 0012-drm-simpledrm-Request-memory-region-in-driver.patch
diff --git a/patches/kernel/0012-drm-simpledrm-Request-memory-region-in-driver.patch b/patches/kernel/0012-drm-simpledrm-Request-memory-region-in-driver.patch
deleted file mode 100644 (file)
index 5bf59ac..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Thomas Zimmermann <tzimmermann@suse.de>
-Date: Tue, 25 Jan 2022 10:12:20 +0100
-Subject: [PATCH] drm/simpledrm: Request memory region in driver
-
-Requesting the framebuffer memory in simpledrm marks the memory
-range as busy. This used to be done by the firmware sysfb code,
-but the driver is the correct place.
-
-v2:
-       * use I/O memory if request_mem_region() fails (Jocelyn)
-
-Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
-Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
-Reviewed-by: Jocelyn Falempe <jfalempe@redhat.com>
-Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
----
- drivers/gpu/drm/tiny/simpledrm.c | 22 +++++++++++++++++-----
- 1 file changed, 17 insertions(+), 5 deletions(-)
-
-diff --git a/drivers/gpu/drm/tiny/simpledrm.c b/drivers/gpu/drm/tiny/simpledrm.c
-index 5a6e89825bc2..6da507960af6 100644
---- a/drivers/gpu/drm/tiny/simpledrm.c
-+++ b/drivers/gpu/drm/tiny/simpledrm.c
-@@ -525,21 +525,33 @@ static int simpledrm_device_init_mm(struct simpledrm_device *sdev)
- {
-       struct drm_device *dev = &sdev->dev;
-       struct platform_device *pdev = sdev->pdev;
--      struct resource *mem;
-+      struct resource *res, *mem;
-       void __iomem *screen_base;
-       int ret;
--      mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
--      if (!mem)
-+      res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-+      if (!res)
-               return -EINVAL;
--      ret = devm_aperture_acquire_from_firmware(dev, mem->start, resource_size(mem));
-+      ret = devm_aperture_acquire_from_firmware(dev, res->start, resource_size(res));
-       if (ret) {
-               drm_err(dev, "could not acquire memory range %pr: error %d\n",
--                      mem, ret);
-+                      res, ret);
-               return ret;
-       }
-+      mem = devm_request_mem_region(&pdev->dev, res->start, resource_size(res),
-+                                    sdev->dev.driver->name);
-+      if (!mem) {
-+              /*
-+               * We cannot make this fatal. Sometimes this comes from magic
-+               * spaces our resource handlers simply don't know about. Use
-+               * the I/O-memory resource as-is and try to map that instead.
-+               */
-+              drm_warn(dev, "could not acquire memory region %pr\n", res);
-+              mem = res;
-+      }
-+
-       screen_base = devm_ioremap_wc(&pdev->dev, mem->start,
-                                     resource_size(mem));
-       if (!screen_base)