diff options
Diffstat (limited to 'target/linux/bcm27xx/patches-5.4/950-0106-vc4_firmware_kms-fix-build.patch')
-rw-r--r-- | target/linux/bcm27xx/patches-5.4/950-0106-vc4_firmware_kms-fix-build.patch | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/target/linux/bcm27xx/patches-5.4/950-0106-vc4_firmware_kms-fix-build.patch b/target/linux/bcm27xx/patches-5.4/950-0106-vc4_firmware_kms-fix-build.patch new file mode 100644 index 0000000000..ee2221d60d --- /dev/null +++ b/target/linux/bcm27xx/patches-5.4/950-0106-vc4_firmware_kms-fix-build.patch @@ -0,0 +1,59 @@ +From 9e8086c8bd92ea746d42a26ec376b31caf9e3395 Mon Sep 17 00:00:00 2001 +From: popcornmix <popcornmix@gmail.com> +Date: Sun, 17 Jun 2018 13:22:07 +0100 +Subject: [PATCH] vc4_firmware_kms: fix build + +--- + drivers/gpu/drm/vc4/vc4_firmware_kms.c | 8 ++++++-- + 1 file changed, 6 insertions(+), 2 deletions(-) + +--- a/drivers/gpu/drm/vc4/vc4_firmware_kms.c ++++ b/drivers/gpu/drm/vc4/vc4_firmware_kms.c +@@ -18,6 +18,7 @@ + #include "drm/drm_plane_helper.h" + #include "drm/drm_crtc_helper.h" + #include "drm/drm_fourcc.h" ++#include "drm/drm_probe_helper.h" + #include "linux/clk.h" + #include "linux/debugfs.h" + #include "drm/drm_fb_cma_helper.h" +@@ -33,6 +34,8 @@ + #define SMICS 0x0 + #define SMICS_INTERRUPTS (BIT(9) | BIT(10) | BIT(11)) + ++#define vc4_crtc vc4_kms_crtc ++#define to_vc4_crtc to_vc4_kms_crtc + struct vc4_crtc { + struct drm_crtc base; + struct drm_encoder *encoder; +@@ -273,7 +276,6 @@ static int vc4_plane_atomic_check(struct + + static void vc4_plane_destroy(struct drm_plane *plane) + { +- drm_plane_helper_disable(plane); + drm_plane_cleanup(plane); + } + +@@ -591,7 +593,7 @@ static struct drm_connector *vc4_fkms_co + connector->interlace_allowed = 0; + connector->doublescan_allowed = 0; + +- drm_mode_connector_attach_encoder(connector, encoder); ++ drm_connector_attach_encoder(connector, encoder); + + return connector; + +@@ -734,11 +736,13 @@ err: + static void vc4_fkms_unbind(struct device *dev, struct device *master, + void *data) + { ++ struct drm_device *drm = dev_get_drvdata(master); + struct platform_device *pdev = to_platform_device(dev); + struct vc4_crtc *vc4_crtc = dev_get_drvdata(dev); + + vc4_fkms_connector_destroy(vc4_crtc->connector); + vc4_fkms_encoder_destroy(vc4_crtc->encoder); ++ drm_atomic_helper_shutdown(drm); + drm_crtc_cleanup(&vc4_crtc->base); + + platform_set_drvdata(pdev, NULL); |