aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bcm27xx/patches-5.10/950-0665-drm-vc4-Notify-the-firmware-when-DRM-is-in-charge.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/bcm27xx/patches-5.10/950-0665-drm-vc4-Notify-the-firmware-when-DRM-is-in-charge.patch')
-rw-r--r--target/linux/bcm27xx/patches-5.10/950-0665-drm-vc4-Notify-the-firmware-when-DRM-is-in-charge.patch54
1 files changed, 0 insertions, 54 deletions
diff --git a/target/linux/bcm27xx/patches-5.10/950-0665-drm-vc4-Notify-the-firmware-when-DRM-is-in-charge.patch b/target/linux/bcm27xx/patches-5.10/950-0665-drm-vc4-Notify-the-firmware-when-DRM-is-in-charge.patch
deleted file mode 100644
index 6bb1f6fd32..0000000000
--- a/target/linux/bcm27xx/patches-5.10/950-0665-drm-vc4-Notify-the-firmware-when-DRM-is-in-charge.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From 154a12e5c0d417cae205b8e16431f29c627311e6 Mon Sep 17 00:00:00 2001
-From: Maxime Ripard <maxime@cerno.tech>
-Date: Wed, 23 Jun 2021 11:54:58 +0200
-Subject: [PATCH] drm/vc4: Notify the firmware when DRM is in charge
-
-Once the call to drm_fb_helper_remove_conflicting_framebuffers() has
-been made, simplefb has been unregistered and the KMS driver is entirely
-in charge of the display.
-
-Thus, we can notify the firmware it can free whatever resource it was
-using to maintain simplefb functional.
-
-Signed-off-by: Maxime Ripard <maxime@cerno.tech>
----
- drivers/gpu/drm/vc4/vc4_drv.c | 19 +++++++++++++++++++
- 1 file changed, 19 insertions(+)
-
---- a/drivers/gpu/drm/vc4/vc4_drv.c
-+++ b/drivers/gpu/drm/vc4/vc4_drv.c
-@@ -36,6 +36,8 @@
- #include <drm/drm_fb_helper.h>
- #include <drm/drm_vblank.h>
-
-+#include <soc/bcm2835/raspberrypi-firmware.h>
-+
- #include "uapi/drm/vc4_drm.h"
-
- #include "vc4_drv.h"
-@@ -305,8 +307,25 @@ static int vc4_drm_bind(struct device *d
- if (ret)
- return ret;
-
-+ node = of_parse_phandle(dev->of_node, "raspberrypi,firmware", 0);
-+ if (node) {
-+ vc4->firmware = rpi_firmware_get(dev->of_node);
-+ of_node_put(node);
-+
-+ if (!vc4->firmware)
-+ return -EPROBE_DEFER;
-+ }
-+
- drm_fb_helper_remove_conflicting_framebuffers(NULL, "vc4drmfb", false);
-
-+ if (vc4->firmware) {
-+ ret = rpi_firmware_property(vc4->firmware,
-+ RPI_FIRMWARE_NOTIFY_DISPLAY_DONE,
-+ NULL, 0);
-+ if (ret)
-+ drm_warn(drm, "Couldn't stop firmware display driver: %d\n", ret);
-+ }
-+
- ret = component_bind_all(dev, drm);
- if (ret)
- return ret;