Lines Matching refs:plane

6  * DRM core plane blending related functions
41 * The basic plane composition model supported by standard plane properties only
49 * For the atomic ioctl the following standard (atomic) properties on the plane object
50 * encode the basic plane composition model:
77 * Mode object ID of the &drm_framebuffer this plane should scan out.
79 * Mode object ID of the &drm_crtc this plane should be connected to.
96 * plane-wide opacity, from transparent (0) to opaque (0xffff). It can be
99 * pre-multiplied by the global alpha associated to the plane.
110 * Signals that a drm plane is rotated <degrees> degrees in counter
114 * Signals that the contents of a drm plane is reflected along the
132 * planes. Without this property the primary plane is always below the cursor
133 * plane, and ordering between all other planes is undefined. The positive
139 * any plane has a zpos property (either mutable or immutable), then all
145 * how the pixels from the current plane are composited with the
175 * Each of the RGB component values from the plane's pixel
177 * Alpha component value from the plane's pixel. If the plane's
184 * Plane alpha value set by the plane "alpha" property. If the
185 * plane does not expose the "alpha" property, then this is
190 * pairs supported by this plane. The blob is a drm_format_modifier_blob
191 * struct. Without this property the plane doesn't support buffers with
195 * plane or the CRTC (e.g. for the background color, which currently is not
201 * @plane: drm plane
204 * for it in the DRM core. It is attached to @plane.
212 int drm_plane_create_alpha_property(struct drm_plane *plane)
216 prop = drm_property_create_range(plane->dev, 0, "alpha",
221 drm_object_attach_property(&plane->base, prop, DRM_BLEND_ALPHA_OPAQUE);
222 plane->alpha_property = prop;
224 if (plane->state)
225 plane->state->alpha = DRM_BLEND_ALPHA_OPAQUE;
233 * @plane: drm plane
265 int drm_plane_create_rotation_property(struct drm_plane *plane,
283 prop = drm_property_create_bitmask(plane->dev, 0, "rotation",
289 drm_object_attach_property(&plane->base, prop, rotation);
291 if (plane->state)
292 plane->state->rotation = rotation;
294 plane->rotation_property = prop;
334 * @plane: drm plane
342 * Drivers that attach a mutable zpos property to any plane should call the
362 int drm_plane_create_zpos_property(struct drm_plane *plane,
368 prop = drm_property_create_range(plane->dev, 0, "zpos", min, max);
372 drm_object_attach_property(&plane->base, prop, zpos);
374 plane->zpos_property = prop;
376 if (plane->state) {
377 plane->state->zpos = zpos;
378 plane->state->normalized_zpos = zpos;
387 * @plane: drm plane
401 int drm_plane_create_zpos_immutable_property(struct drm_plane *plane,
406 prop = drm_property_create_range(plane->dev, DRM_MODE_PROP_IMMUTABLE,
411 drm_object_attach_property(&plane->base, prop, zpos);
413 plane->zpos_property = prop;
415 if (plane->state) {
416 plane->state->zpos = zpos;
417 plane->state->normalized_zpos = zpos;
432 return sa->plane->base.id - sb->plane->base.id;
442 struct drm_plane *plane;
457 drm_for_each_plane_mask(plane, dev, crtc_state->plane_mask) {
459 drm_atomic_get_plane_state(state, plane);
466 plane->base.id, plane->name,
473 plane = states[i]->plane;
477 plane->base.id, plane->name, i);
496 * first by their zpos values, then by plane id (if zpos is equal). The plane
509 struct drm_plane *plane;
513 for_each_oldnew_plane_in_state(state, plane, old_plane_state, new_plane_state, i) {
538 * @plane: drm plane
565 int drm_plane_create_blend_mode_property(struct drm_plane *plane,
568 struct drm_device *dev = plane->dev;
606 drm_object_attach_property(&plane->base, prop, DRM_MODE_BLEND_PREMULTI);
607 plane->blend_mode_property = prop;