Lines Matching full:plane

26  * New plane/sprite handling.
28 * The older chips had a separate interface for programming plane related
29 * registers; newer ones are much simpler and we can use the new DRM plane
69 struct intel_plane *plane = to_intel_plane(plane_state->uapi.plane); in chv_sprite_update_csc() local
70 struct intel_display *display = to_intel_display(plane->base.dev); in chv_sprite_update_csc()
72 enum plane_id plane_id = plane->id; in chv_sprite_update_csc()
141 struct intel_plane *plane = to_intel_plane(plane_state->uapi.plane); in vlv_sprite_update_clrc() local
142 struct intel_display *display = to_intel_display(plane->base.dev); in vlv_sprite_update_clrc()
144 enum pipe pipe = plane->pipe; in vlv_sprite_update_clrc()
145 enum plane_id plane_id = plane->id; in vlv_sprite_update_clrc()
256 static unsigned int vlv_sprite_min_alignment(struct intel_plane *plane, in vlv_sprite_min_alignment() argument
359 struct intel_plane *plane = to_intel_plane(plane_state->uapi.plane); in vlv_sprite_update_gamma() local
360 struct intel_display *display = to_intel_display(plane->base.dev); in vlv_sprite_update_gamma()
362 enum pipe pipe = plane->pipe; in vlv_sprite_update_gamma()
363 enum plane_id plane_id = plane->id; in vlv_sprite_update_gamma()
381 vlv_sprite_update_noarm(struct intel_plane *plane, in vlv_sprite_update_noarm() argument
385 struct intel_display *display = to_intel_display(plane->base.dev); in vlv_sprite_update_noarm()
386 enum pipe pipe = plane->pipe; in vlv_sprite_update_noarm()
387 enum plane_id plane_id = plane->id; in vlv_sprite_update_noarm()
402 vlv_sprite_update_arm(struct intel_plane *plane, in vlv_sprite_update_arm() argument
406 struct intel_display *display = to_intel_display(plane->base.dev); in vlv_sprite_update_arm()
407 struct drm_i915_private *dev_priv = to_i915(plane->base.dev); in vlv_sprite_update_arm()
408 enum pipe pipe = plane->pipe; in vlv_sprite_update_arm()
409 enum plane_id plane_id = plane->id; in vlv_sprite_update_arm()
439 * The control register self-arms if the plane was previously in vlv_sprite_update_arm()
440 * disabled. Try to make the plane enable atomic by writing in vlv_sprite_update_arm()
452 vlv_sprite_disable_arm(struct intel_plane *plane, in vlv_sprite_disable_arm() argument
455 struct intel_display *display = to_intel_display(plane->base.dev); in vlv_sprite_disable_arm()
456 enum pipe pipe = plane->pipe; in vlv_sprite_disable_arm()
457 enum plane_id plane_id = plane->id; in vlv_sprite_disable_arm()
464 vlv_sprite_get_hw_state(struct intel_plane *plane, in vlv_sprite_get_hw_state() argument
467 struct intel_display *display = to_intel_display(plane->base.dev); in vlv_sprite_get_hw_state()
468 struct drm_i915_private *dev_priv = to_i915(plane->base.dev); in vlv_sprite_get_hw_state()
470 enum plane_id plane_id = plane->id; in vlv_sprite_get_hw_state()
474 power_domain = POWER_DOMAIN_PIPE(plane->pipe); in vlv_sprite_get_hw_state()
479 ret = intel_de_read(display, SPCNTR(plane->pipe, plane_id)) & SP_ENABLE; in vlv_sprite_get_hw_state()
481 *pipe = plane->pipe; in vlv_sprite_get_hw_state()
662 to_i915(plane_state->uapi.plane->dev); in ivb_need_sprite_gamma()
673 to_i915(plane_state->uapi.plane->dev); in ivb_sprite_ctl()
770 struct intel_plane *plane = to_intel_plane(plane_state->uapi.plane); in ivb_sprite_update_gamma() local
771 struct intel_display *display = to_intel_display(plane->base.dev); in ivb_sprite_update_gamma()
772 enum pipe pipe = plane->pipe; in ivb_sprite_update_gamma()
798 ivb_sprite_update_noarm(struct intel_plane *plane, in ivb_sprite_update_noarm() argument
802 struct intel_display *display = to_intel_display(plane->base.dev); in ivb_sprite_update_noarm()
803 struct drm_i915_private *dev_priv = to_i915(plane->base.dev); in ivb_sprite_update_noarm()
804 enum pipe pipe = plane->pipe; in ivb_sprite_update_noarm()
829 ivb_sprite_update_arm(struct intel_plane *plane, in ivb_sprite_update_arm() argument
833 struct intel_display *display = to_intel_display(plane->base.dev); in ivb_sprite_update_arm()
834 struct drm_i915_private *dev_priv = to_i915(plane->base.dev); in ivb_sprite_update_arm()
835 enum pipe pipe = plane->pipe; in ivb_sprite_update_arm()
865 * The control register self-arms if the plane was previously in ivb_sprite_update_arm()
866 * disabled. Try to make the plane enable atomic by writing in ivb_sprite_update_arm()
877 ivb_sprite_disable_arm(struct intel_plane *plane, in ivb_sprite_disable_arm() argument
880 struct intel_display *display = to_intel_display(plane->base.dev); in ivb_sprite_disable_arm()
881 struct drm_i915_private *dev_priv = to_i915(plane->base.dev); in ivb_sprite_disable_arm()
882 enum pipe pipe = plane->pipe; in ivb_sprite_disable_arm()
892 ivb_sprite_get_hw_state(struct intel_plane *plane, in ivb_sprite_get_hw_state() argument
895 struct intel_display *display = to_intel_display(plane->base.dev); in ivb_sprite_get_hw_state()
896 struct drm_i915_private *dev_priv = to_i915(plane->base.dev); in ivb_sprite_get_hw_state()
901 power_domain = POWER_DOMAIN_PIPE(plane->pipe); in ivb_sprite_get_hw_state()
906 ret = intel_de_read(display, SPRCTL(plane->pipe)) & SPRITE_ENABLE; in ivb_sprite_get_hw_state()
908 *pipe = plane->pipe; in ivb_sprite_get_hw_state()
962 g4x_sprite_max_stride(struct intel_plane *plane, in g4x_sprite_max_stride() argument
977 hsw_sprite_max_stride(struct intel_plane *plane, in hsw_sprite_max_stride() argument
988 static unsigned int g4x_sprite_min_alignment(struct intel_plane *plane, in g4x_sprite_min_alignment() argument
1012 to_i915(plane_state->uapi.plane->dev); in g4x_sprite_ctl()
1081 struct intel_plane *plane = to_intel_plane(plane_state->uapi.plane); in g4x_sprite_update_gamma() local
1082 struct intel_display *display = to_intel_display(plane->base.dev); in g4x_sprite_update_gamma()
1084 enum pipe pipe = plane->pipe; in g4x_sprite_update_gamma()
1111 struct intel_plane *plane = to_intel_plane(plane_state->uapi.plane); in ilk_sprite_update_gamma() local
1112 struct intel_display *display = to_intel_display(plane->base.dev); in ilk_sprite_update_gamma()
1114 enum pipe pipe = plane->pipe; in ilk_sprite_update_gamma()
1136 g4x_sprite_update_noarm(struct intel_plane *plane, in g4x_sprite_update_noarm() argument
1140 struct intel_display *display = to_intel_display(plane->base.dev); in g4x_sprite_update_noarm()
1141 enum pipe pipe = plane->pipe; in g4x_sprite_update_noarm()
1165 g4x_sprite_update_arm(struct intel_plane *plane, in g4x_sprite_update_arm() argument
1169 struct intel_display *display = to_intel_display(plane->base.dev); in g4x_sprite_update_arm()
1170 struct drm_i915_private *dev_priv = to_i915(plane->base.dev); in g4x_sprite_update_arm()
1171 enum pipe pipe = plane->pipe; in g4x_sprite_update_arm()
1194 * The control register self-arms if the plane was previously in g4x_sprite_update_arm()
1195 * disabled. Try to make the plane enable atomic by writing in g4x_sprite_update_arm()
1209 g4x_sprite_disable_arm(struct intel_plane *plane, in g4x_sprite_disable_arm() argument
1212 struct intel_display *display = to_intel_display(plane->base.dev); in g4x_sprite_disable_arm()
1213 enum pipe pipe = plane->pipe; in g4x_sprite_disable_arm()
1222 g4x_sprite_get_hw_state(struct intel_plane *plane, in g4x_sprite_get_hw_state() argument
1225 struct intel_display *display = to_intel_display(plane->base.dev); in g4x_sprite_get_hw_state()
1226 struct drm_i915_private *dev_priv = to_i915(plane->base.dev); in g4x_sprite_get_hw_state()
1231 power_domain = POWER_DOMAIN_PIPE(plane->pipe); in g4x_sprite_get_hw_state()
1236 ret = intel_de_read(display, DVSCNTR(plane->pipe)) & DVS_ENABLE; in g4x_sprite_get_hw_state()
1238 *pipe = plane->pipe; in g4x_sprite_get_hw_state()
1333 struct intel_plane *plane = to_intel_plane(plane_state->uapi.plane); in g4x_sprite_check() local
1334 struct drm_i915_private *dev_priv = to_i915(plane->base.dev); in g4x_sprite_check()
1379 struct intel_plane *plane = to_intel_plane(plane_state->uapi.plane); in chv_plane_check_rotation() local
1380 struct intel_display *display = to_intel_display(plane->base.dev); in chv_plane_check_rotation()
1381 struct drm_i915_private *dev_priv = to_i915(plane->base.dev); in chv_plane_check_rotation()
1591 struct intel_plane *plane; in intel_sprite_plane_create() local
1599 plane = intel_plane_alloc(); in intel_sprite_plane_create()
1600 if (IS_ERR(plane)) in intel_sprite_plane_create()
1601 return plane; in intel_sprite_plane_create()
1604 plane->update_noarm = vlv_sprite_update_noarm; in intel_sprite_plane_create()
1605 plane->update_arm = vlv_sprite_update_arm; in intel_sprite_plane_create()
1606 plane->disable_arm = vlv_sprite_disable_arm; in intel_sprite_plane_create()
1607 plane->get_hw_state = vlv_sprite_get_hw_state; in intel_sprite_plane_create()
1608 plane->check_plane = vlv_sprite_check; in intel_sprite_plane_create()
1609 plane->max_stride = i965_plane_max_stride; in intel_sprite_plane_create()
1610 plane->min_alignment = vlv_sprite_min_alignment; in intel_sprite_plane_create()
1611 plane->min_cdclk = vlv_plane_min_cdclk; in intel_sprite_plane_create()
1623 plane->update_noarm = ivb_sprite_update_noarm; in intel_sprite_plane_create()
1624 plane->update_arm = ivb_sprite_update_arm; in intel_sprite_plane_create()
1625 plane->disable_arm = ivb_sprite_disable_arm; in intel_sprite_plane_create()
1626 plane->get_hw_state = ivb_sprite_get_hw_state; in intel_sprite_plane_create()
1627 plane->check_plane = g4x_sprite_check; in intel_sprite_plane_create()
1630 plane->max_stride = hsw_sprite_max_stride; in intel_sprite_plane_create()
1631 plane->min_cdclk = hsw_plane_min_cdclk; in intel_sprite_plane_create()
1633 plane->max_stride = g4x_sprite_max_stride; in intel_sprite_plane_create()
1634 plane->min_cdclk = ivb_sprite_min_cdclk; in intel_sprite_plane_create()
1637 plane->min_alignment = g4x_sprite_min_alignment; in intel_sprite_plane_create()
1644 plane->update_noarm = g4x_sprite_update_noarm; in intel_sprite_plane_create()
1645 plane->update_arm = g4x_sprite_update_arm; in intel_sprite_plane_create()
1646 plane->disable_arm = g4x_sprite_disable_arm; in intel_sprite_plane_create()
1647 plane->get_hw_state = g4x_sprite_get_hw_state; in intel_sprite_plane_create()
1648 plane->check_plane = g4x_sprite_check; in intel_sprite_plane_create()
1649 plane->max_stride = g4x_sprite_max_stride; in intel_sprite_plane_create()
1650 plane->min_alignment = g4x_sprite_min_alignment; in intel_sprite_plane_create()
1651 plane->min_cdclk = g4x_sprite_min_cdclk; in intel_sprite_plane_create()
1675 plane->pipe = pipe; in intel_sprite_plane_create()
1676 plane->id = PLANE_SPRITE0 + sprite; in intel_sprite_plane_create()
1677 plane->frontbuffer_bit = INTEL_FRONTBUFFER(pipe, plane->id); in intel_sprite_plane_create()
1681 ret = drm_universal_plane_init(display->drm, &plane->base, in intel_sprite_plane_create()
1691 drm_plane_create_rotation_property(&plane->base, in intel_sprite_plane_create()
1695 drm_plane_create_color_properties(&plane->base, in intel_sprite_plane_create()
1704 drm_plane_create_zpos_immutable_property(&plane->base, zpos); in intel_sprite_plane_create()
1706 intel_plane_helper_add(plane); in intel_sprite_plane_create()
1708 return plane; in intel_sprite_plane_create()
1711 intel_plane_free(plane); in intel_sprite_plane_create()