diff options
Diffstat (limited to 'target/linux/bcm27xx/patches-4.19/950-0111-vc4_fkms-Apply-firmware-overscan-offset-to-hardware-.patch')
-rw-r--r-- | target/linux/bcm27xx/patches-4.19/950-0111-vc4_fkms-Apply-firmware-overscan-offset-to-hardware-.patch | 57 |
1 files changed, 0 insertions, 57 deletions
diff --git a/target/linux/bcm27xx/patches-4.19/950-0111-vc4_fkms-Apply-firmware-overscan-offset-to-hardware-.patch b/target/linux/bcm27xx/patches-4.19/950-0111-vc4_fkms-Apply-firmware-overscan-offset-to-hardware-.patch deleted file mode 100644 index 764edb66ff..0000000000 --- a/target/linux/bcm27xx/patches-4.19/950-0111-vc4_fkms-Apply-firmware-overscan-offset-to-hardware-.patch +++ /dev/null @@ -1,57 +0,0 @@ -From 5ef3d566615961b75f85868b028193bb54727140 Mon Sep 17 00:00:00 2001 -From: popcornmix <popcornmix@gmail.com> -Date: Tue, 18 Apr 2017 21:43:46 +0100 -Subject: [PATCH] vc4_fkms: Apply firmware overscan offset to hardware - cursor - ---- - drivers/gpu/drm/vc4/vc4_firmware_kms.c | 17 +++++++++++++++++ - 1 file changed, 17 insertions(+) - ---- a/drivers/gpu/drm/vc4/vc4_firmware_kms.c -+++ b/drivers/gpu/drm/vc4/vc4_firmware_kms.c -@@ -42,6 +42,7 @@ struct vc4_crtc { - void __iomem *regs; - - struct drm_pending_vblank_event *event; -+ u32 overscan[4]; - }; - - static inline struct vc4_crtc *to_vc4_crtc(struct drm_crtc *crtc) -@@ -191,6 +192,7 @@ static void vc4_cursor_plane_atomic_upda - struct drm_plane_state *old_state) - { - struct vc4_dev *vc4 = to_vc4_dev(plane->dev); -+ struct vc4_crtc *vc4_crtc = to_vc4_crtc(plane->crtc); - struct drm_plane_state *state = plane->state; - struct drm_framebuffer *fb = state->fb; - struct drm_gem_cma_object *bo = drm_fb_cma_get_gem_obj(fb, 0); -@@ -216,6 +218,12 @@ static void vc4_cursor_plane_atomic_upda - bo->paddr + fb->offsets[0], - fb->pitches[0]); - -+ /* add on the top/left offsets when overscan is active */ -+ if (vc4_crtc) { -+ packet_state[1] += vc4_crtc->overscan[0]; -+ packet_state[2] += vc4_crtc->overscan[1]; -+ } -+ - ret = rpi_firmware_property(vc4->firmware, - RPI_FIRMWARE_SET_CURSOR_STATE, - &packet_state, -@@ -695,6 +703,15 @@ static int vc4_fkms_bind(struct device * - if (ret) - goto err_destroy_connector; - -+ ret = rpi_firmware_property(vc4->firmware, -+ RPI_FIRMWARE_FRAMEBUFFER_GET_OVERSCAN, -+ &vc4_crtc->overscan, -+ sizeof(vc4_crtc->overscan)); -+ if (ret) { -+ DRM_ERROR("Failed to get overscan state: 0x%08x\n", vc4_crtc->overscan[0]); -+ memset(&vc4_crtc->overscan, 0, sizeof(vc4_crtc->overscan)); -+ } -+ - platform_set_drvdata(pdev, vc4_crtc); - - return 0; |