Lines Matching refs:plane
27 static int omap_plane_prepare_fb(struct drm_plane *plane, in omap_plane_prepare_fb() argument
33 drm_gem_plane_helper_prepare_fb(plane, new_state); in omap_plane_prepare_fb()
38 static void omap_plane_cleanup_fb(struct drm_plane *plane, in omap_plane_cleanup_fb() argument
45 static void omap_plane_atomic_update(struct drm_plane *plane, in omap_plane_atomic_update() argument
48 struct omap_drm_private *priv = plane->dev->dev_private; in omap_plane_atomic_update()
49 struct omap_plane *omap_plane = to_omap_plane(plane); in omap_plane_atomic_update()
51 plane); in omap_plane_atomic_update()
84 dev_err(plane->dev->dev, "Failed to setup plane %s\n", in omap_plane_atomic_update()
93 static void omap_plane_atomic_disable(struct drm_plane *plane, in omap_plane_atomic_disable() argument
97 plane); in omap_plane_atomic_disable()
98 struct omap_drm_private *priv = plane->dev->dev_private; in omap_plane_atomic_disable()
99 struct omap_plane *omap_plane = to_omap_plane(plane); in omap_plane_atomic_disable()
102 new_state->zpos = plane->type == DRM_PLANE_TYPE_PRIMARY ? 0 : omap_plane->id; in omap_plane_atomic_disable()
107 static int omap_plane_atomic_check(struct drm_plane *plane, in omap_plane_atomic_check() argument
111 plane); in omap_plane_atomic_check()
154 static void omap_plane_destroy(struct drm_plane *plane) in omap_plane_destroy() argument
156 struct omap_plane *omap_plane = to_omap_plane(plane); in omap_plane_destroy()
160 drm_plane_cleanup(plane); in omap_plane_destroy()
166 void omap_plane_install_properties(struct drm_plane *plane, in omap_plane_install_properties() argument
169 struct drm_device *dev = plane->dev; in omap_plane_install_properties()
173 if (!plane->rotation_property) in omap_plane_install_properties()
174 drm_plane_create_rotation_property(plane, in omap_plane_install_properties()
181 if (plane->rotation_property && obj != &plane->base) in omap_plane_install_properties()
182 drm_object_attach_property(obj, plane->rotation_property, in omap_plane_install_properties()
189 static void omap_plane_reset(struct drm_plane *plane) in omap_plane_reset() argument
191 struct omap_plane *omap_plane = to_omap_plane(plane); in omap_plane_reset()
193 drm_atomic_helper_plane_reset(plane); in omap_plane_reset()
194 if (!plane->state) in omap_plane_reset()
201 plane->state->zpos = plane->type == DRM_PLANE_TYPE_PRIMARY in omap_plane_reset()
203 plane->state->color_encoding = DRM_COLOR_YCBCR_BT601; in omap_plane_reset()
204 plane->state->color_range = DRM_COLOR_YCBCR_FULL_RANGE; in omap_plane_reset()
207 static int omap_plane_atomic_set_property(struct drm_plane *plane, in omap_plane_atomic_set_property() argument
212 struct omap_drm_private *priv = plane->dev->dev_private; in omap_plane_atomic_set_property()
222 static int omap_plane_atomic_get_property(struct drm_plane *plane, in omap_plane_atomic_get_property() argument
227 struct omap_drm_private *priv = plane->dev->dev_private; in omap_plane_atomic_get_property()
248 static bool omap_plane_supports_yuv(struct drm_plane *plane) in omap_plane_supports_yuv() argument
250 struct omap_drm_private *priv = plane->dev->dev_private; in omap_plane_supports_yuv()
251 struct omap_plane *omap_plane = to_omap_plane(plane); in omap_plane_supports_yuv()
285 struct drm_plane *plane; in omap_plane_init() local
309 plane = &omap_plane->base; in omap_plane_init()
311 ret = drm_universal_plane_init(dev, plane, possible_crtcs, in omap_plane_init()
317 drm_plane_helper_add(plane, &omap_plane_helper_funcs); in omap_plane_init()
319 omap_plane_install_properties(plane, &plane->base); in omap_plane_init()
320 drm_plane_create_zpos_property(plane, 0, 0, num_planes - 1); in omap_plane_init()
321 drm_plane_create_alpha_property(plane); in omap_plane_init()
322 drm_plane_create_blend_mode_property(plane, BIT(DRM_MODE_BLEND_PREMULTI) | in omap_plane_init()
325 if (omap_plane_supports_yuv(plane)) in omap_plane_init()
326 drm_plane_create_color_properties(plane, in omap_plane_init()
334 return plane; in omap_plane_init()