diff options
Diffstat (limited to 'target/linux/bcm27xx/patches-5.4/950-0550-drm-vc4-plane-Create-overlays-for-any-CRTC.patch')
-rw-r--r-- | target/linux/bcm27xx/patches-5.4/950-0550-drm-vc4-plane-Create-overlays-for-any-CRTC.patch | 70 |
1 files changed, 0 insertions, 70 deletions
diff --git a/target/linux/bcm27xx/patches-5.4/950-0550-drm-vc4-plane-Create-overlays-for-any-CRTC.patch b/target/linux/bcm27xx/patches-5.4/950-0550-drm-vc4-plane-Create-overlays-for-any-CRTC.patch deleted file mode 100644 index 7b9ec02cf6..0000000000 --- a/target/linux/bcm27xx/patches-5.4/950-0550-drm-vc4-plane-Create-overlays-for-any-CRTC.patch +++ /dev/null @@ -1,70 +0,0 @@ -From b65167e0bcce67f2e7b7e813dba536f1cca3ef9f Mon Sep 17 00:00:00 2001 -From: Maxime Ripard <maxime@cerno.tech> -Date: Thu, 6 Feb 2020 14:50:06 +0100 -Subject: [PATCH] drm/vc4: plane: Create overlays for any CRTC - -Now that we have everything in place, we can now register all the overlay -planes that can be assigned to all the CRTCs. - -This has two side effects: - - - The number of overlay planes is reduced from 24 to 8. This is temporary - and will be increased again in the next patch. - - - The ID of the various planes is changed again, and we will now have all - the primary planes, then all the overlay planes and finally the cursor - planes. This shouldn't cause any issue since the ordering between - primary, overlay and cursor planes is preserved. - -Signed-off-by: Maxime Ripard <maxime@cerno.tech> ---- - drivers/gpu/drm/vc4/vc4_plane.c | 35 +++++++++++++++++---------------- - 1 file changed, 18 insertions(+), 17 deletions(-) - ---- a/drivers/gpu/drm/vc4/vc4_plane.c -+++ b/drivers/gpu/drm/vc4/vc4_plane.c -@@ -1454,26 +1454,27 @@ int vc4_plane_create_additional_planes(s - struct drm_crtc *crtc; - unsigned int i; - -- drm_for_each_crtc(crtc, drm) { -- /* Set up some arbitrary number of planes. We're not limited -- * by a set number of physical registers, just the space in -- * the HVS (16k) and how small an plane can be (28 bytes). -- * However, each plane we set up takes up some memory, and -- * increases the cost of looping over planes, which atomic -- * modesetting does quite a bit. As a result, we pick a -- * modest number of planes to expose, that should hopefully -- * still cover any sane usecase. -- */ -- for (i = 0; i < 8; i++) { -- struct drm_plane *plane = -- vc4_plane_init(drm, DRM_PLANE_TYPE_OVERLAY); -+ /* Set up some arbitrary number of planes. We're not limited -+ * by a set number of physical registers, just the space in -+ * the HVS (16k) and how small an plane can be (28 bytes). -+ * However, each plane we set up takes up some memory, and -+ * increases the cost of looping over planes, which atomic -+ * modesetting does quite a bit. As a result, we pick a -+ * modest number of planes to expose, that should hopefully -+ * still cover any sane usecase. -+ */ -+ for (i = 0; i < 8; i++) { -+ struct drm_plane *plane = -+ vc4_plane_init(drm, DRM_PLANE_TYPE_OVERLAY); - -- if (IS_ERR(plane)) -- continue; -+ if (IS_ERR(plane)) -+ continue; - -- plane->possible_crtcs = drm_crtc_mask(crtc); -- } -+ plane->possible_crtcs = -+ GENMASK(drm->mode_config.num_crtc - 1, 0); -+ } - -+ drm_for_each_crtc(crtc, drm) { - /* Set up the legacy cursor after overlay initialization, - * since we overlay planes on the CRTC in the order they were - * initialized. |