summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/drm_blend.c
diff options
context:
space:
mode:
authorDmitry Baryshkov <dmitry.baryshkov@linaro.org>2023-12-04 15:13:54 +0200
committerDmitry Baryshkov <dmitry.baryshkov@linaro.org>2023-12-04 21:33:10 +0200
commit90422201f8f2b4e26ab7bd43b92786a11c1ffebf (patch)
tree8dff91f5bec56676b038479fdfa45896eb8fda02 /drivers/gpu/drm/drm_blend.c
parente5fba1ada1c1d676438138d815acd8f427a1eaf0 (diff)
Revert "drm: Introduce pixel_source DRM plane property"
This reverts commit e50e5fed41c7eed2db4119645bf3480ec43fec11. Although the Solid Fill planes patchset got all reviews and acknowledgements, it doesn't fulfill requirements for the new uABI. It has neither corresponding open-source userspace implementation nor the IGT tests coverage. Reverting this patchset until userspace obligations are fulfilled. Acked-by: Simon Ser <contact@emersion.fr> Acked-by: Maxime Ripard <mripard@kernel.org> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Link: https://patchwork.freedesktop.org/patch/msgid/20231204131455.19023-8-dmitry.baryshkov@linaro.org
Diffstat (limited to 'drivers/gpu/drm/drm_blend.c')
-rw-r--r--drivers/gpu/drm/drm_blend.c94
1 files changed, 0 insertions, 94 deletions
diff --git a/drivers/gpu/drm/drm_blend.c b/drivers/gpu/drm/drm_blend.c
index fce734cdb85b..6e74de833466 100644
--- a/drivers/gpu/drm/drm_blend.c
+++ b/drivers/gpu/drm/drm_blend.c
@@ -185,25 +185,6 @@
* plane does not expose the "alpha" property, then this is
* assumed to be 1.0
*
- * pixel_source:
- * pixel_source is set up with drm_plane_create_pixel_source_property().
- * It is used to toggle the active source of pixel data for the plane.
- * The plane will only display data from the set pixel_source -- any
- * data from other sources will be ignored.
- *
- * For non-framebuffer sources, if pixel_source is set to a non-framebuffer
- * and non-NONE source, and the corresponding source property is NULL, then
- * the atomic commit should return an error.
- *
- * Possible values:
- *
- * "NONE":
- * No active pixel source.
- * Committing with a NONE pixel source will disable the plane.
- *
- * "FB":
- * Framebuffer source set by the "FB_ID" property.
- *
* Note that all the property extensions described here apply either to the
* plane or the CRTC (e.g. for the background color, which currently is not
* exposed and assumed to be black).
@@ -634,78 +615,3 @@ int drm_plane_create_blend_mode_property(struct drm_plane *plane,
return 0;
}
EXPORT_SYMBOL(drm_plane_create_blend_mode_property);
-
-static const struct drm_prop_enum_list drm_pixel_source_enum_list[] = {
- { DRM_PLANE_PIXEL_SOURCE_NONE, "NONE" },
- { DRM_PLANE_PIXEL_SOURCE_FB, "FB" },
-};
-
-/**
- * drm_plane_create_pixel_source_property - create a new pixel source property
- * @plane: DRM plane
- * @extra_sources: Bitmask of additional supported pixel_sources for the driver.
- * DRM_PLANE_PIXEL_SOURCE_FB and DRM_PLANE_PIXEL_SOURCE_NONE will
- * always be enabled as supported sources.
- *
- * This creates a new property describing the current source of pixel data for the
- * plane. The pixel_source will be initialized as DRM_PLANE_PIXEL_SOURCE_FB by default.
- *
- * Drivers can set a custom default source by overriding the pixel_source value in
- * drm_plane_funcs.reset()
- *
- * The property is exposed to userspace as an enumeration property called
- * "pixel_source" and has the following enumeration values:
- *
- * "NONE":
- * No active pixel source
- *
- * "FB":
- * Framebuffer pixel source
- *
- * Returns:
- * Zero on success, negative errno on failure.
- */
-int drm_plane_create_pixel_source_property(struct drm_plane *plane,
- unsigned long extra_sources)
-{
- struct drm_device *dev = plane->dev;
- struct drm_property *prop;
- static const unsigned int valid_source_mask = BIT(DRM_PLANE_PIXEL_SOURCE_FB) |
- BIT(DRM_PLANE_PIXEL_SOURCE_NONE);
- int i;
-
- /* FB is supported by default */
- unsigned long supported_sources = extra_sources |
- BIT(DRM_PLANE_PIXEL_SOURCE_FB) |
- BIT(DRM_PLANE_PIXEL_SOURCE_NONE);
-
- if (WARN_ON(supported_sources & ~valid_source_mask))
- return -EINVAL;
-
- prop = drm_property_create(dev, DRM_MODE_PROP_ENUM | DRM_MODE_PROP_ATOMIC, "pixel_source",
- hweight32(supported_sources));
-
- if (!prop)
- return -ENOMEM;
-
- for (i = 0; i < ARRAY_SIZE(drm_pixel_source_enum_list); i++) {
- int ret;
-
- if (!test_bit(drm_pixel_source_enum_list[i].type, &supported_sources))
- continue;
-
- ret = drm_property_add_enum(prop, drm_pixel_source_enum_list[i].type,
- drm_pixel_source_enum_list[i].name);
- if (ret) {
- drm_property_destroy(dev, prop);
-
- return ret;
- }
- }
-
- drm_object_attach_property(&plane->base, prop, DRM_PLANE_PIXEL_SOURCE_FB);
- plane->pixel_source_property = prop;
-
- return 0;
-}
-EXPORT_SYMBOL(drm_plane_create_pixel_source_property);