intel_plane
struct intel_plane *intel_plane;
intel_plane = to_intel_plane(plane);
if (WARN_ON(intel_plane->pipe != intel_crtc->pipe)) {
intel_plane);
struct intel_plane *intel_plane = to_intel_plane(plane);
ret = intel_plane->check_plane(crtc_state, intel_state);
crtc_state->active_planes |= BIT(intel_plane->id);
crtc_state->active_planes &= ~BIT(intel_plane->id);
crtc_state->nv12_planes |= BIT(intel_plane->id);
crtc_state->nv12_planes &= ~BIT(intel_plane->id);
struct intel_plane *intel_plane = to_intel_plane(plane);
intel_atomic_get_new_plane_state(state, intel_plane);
intel_plane->update_plane(intel_plane,
intel_plane->disable_plane(intel_plane, to_intel_crtc(crtc));
i9xx_cursor_max_stride(struct intel_plane *plane,
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
static void i9xx_update_cursor(struct intel_plane *plane,
static void i9xx_disable_cursor(struct intel_plane *plane,
static bool i9xx_cursor_get_hw_state(struct intel_plane *plane,
struct intel_plane *plane = to_intel_plane(plane_state->plane);
struct intel_plane *intel_plane;
intel_plane = to_intel_plane(plane);
if (intel_plane->pipe != crtc->pipe)
struct intel_plane *plane;
static void assert_plane(struct intel_plane *plane, bool state)
struct intel_plane *plane;
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
struct intel_plane *plane = to_intel_plane(_plane);
struct intel_plane *intel_plane = to_intel_plane(plane);
intel_plane->frontbuffer_bit);
intel_plane->update_plane(intel_plane,
intel_plane->disable_plane(intel_plane, to_intel_crtc(crtc));
static struct intel_plane *
struct intel_plane *primary = NULL;
static struct intel_plane *
struct intel_plane *cursor = NULL;
struct intel_plane *primary = NULL;
struct intel_plane *cursor = NULL;
struct intel_plane *plane;
struct intel_plane *plane;
struct intel_plane *plane =
struct intel_plane *plane;
struct intel_plane *plane;
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
struct intel_plane *intel_plane = to_intel_plane(state->base.plane);
struct drm_i915_private *dev_priv = to_i915(intel_plane->base.dev);
if (intel_plane->id == PLANE_CURSOR)
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
struct intel_plane *plane)
struct intel_plane *intel_plane = to_intel_plane(primary);
intel_plane_disable_noatomic(intel_crtc, intel_plane);
i9xx_plane_max_stride(struct intel_plane *plane,
static void i9xx_update_plane(struct intel_plane *plane,
static void i9xx_disable_plane(struct intel_plane *plane,
static bool i9xx_plane_get_hw_state(struct intel_plane *plane,
struct intel_plane *intel_plane =
drm_plane_index(&intel_plane->base),
intel_plane->base.base.id,
intel_plane->base.name);
intel_plane->base.base.id, intel_plane->base.name,
struct intel_plane *plane;
struct intel_plane *plane = to_intel_plane(crtc->base.primary);
struct intel_plane *plane = to_intel_plane(crtc->base.primary);
i845_cursor_max_stride(struct intel_plane *plane,
static void i845_update_cursor(struct intel_plane *plane,
static void i845_disable_cursor(struct intel_plane *plane,
static bool i845_cursor_get_hw_state(struct intel_plane *plane,
#define for_each_intel_plane(dev, intel_plane) \
list_for_each_entry(intel_plane, \
#define for_each_intel_plane_mask(dev, intel_plane, plane_mask) \
list_for_each_entry(intel_plane, \
drm_plane_mask(&intel_plane->base)))
#define for_each_intel_plane_on_crtc(dev, intel_crtc, intel_plane) \
list_for_each_entry(intel_plane, \
for_each_if((intel_plane)->pipe == (intel_crtc)->pipe)
#define to_intel_plane(x) container_of(x, struct intel_plane, base)
struct intel_plane *plane)
unsigned int i9xx_plane_max_stride(struct intel_plane *plane,
struct intel_plane *intel_sprite_plane_create(struct drm_i915_private *dev_priv,
void skl_update_plane(struct intel_plane *plane,
void skl_disable_plane(struct intel_plane *plane, struct intel_crtc *crtc);
bool skl_plane_get_hw_state(struct intel_plane *plane, enum i915_pipe *pipe);
unsigned int skl_plane_max_stride(struct intel_plane *plane,
unsigned int (*max_stride)(struct intel_plane *plane,
void (*update_plane)(struct intel_plane *plane,
void (*disable_plane)(struct intel_plane *plane,
bool (*get_hw_state)(struct intel_plane *plane, enum i915_pipe *pipe);
struct intel_plane *plane;
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
struct intel_plane *plane;
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
struct intel_plane *plane;
struct intel_plane *plane;
struct intel_plane *plane = to_intel_plane(pstate->base.plane);
struct intel_plane *intel_plane = to_intel_plane(pstate->plane);
if (intel_plane->id == PLANE_CURSOR)
struct intel_plane *plane = to_intel_plane(intel_pstate->base.plane);
struct intel_plane *intel_plane = to_intel_plane(plane);
enum plane_id intel_plane_id = intel_plane->id;
const struct intel_plane *intel_plane;
for_each_intel_plane_on_crtc(dev, intel_crtc, intel_plane) {
enum plane_id plane_id = intel_plane->id;
intel_plane->base.base.id,
intel_plane->base.name,
struct intel_plane *plane;
struct intel_plane *plane;
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
g4x_disable_plane(struct intel_plane *plane, struct intel_crtc *crtc)
g4x_plane_get_hw_state(struct intel_plane *plane,
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
struct intel_plane *plane = to_intel_plane(_plane);
struct intel_plane *
struct intel_plane *intel_plane = NULL;
intel_plane = kzalloc(sizeof(*intel_plane), GFP_KERNEL);
if (!intel_plane) {
state = intel_create_plane_state(&intel_plane->base);
intel_plane->base.state = &state->base;
intel_plane->has_ccs = skl_plane_has_ccs(dev_priv, pipe,
intel_plane->max_stride = skl_plane_max_stride;
intel_plane->update_plane = skl_update_plane;
intel_plane->disable_plane = skl_disable_plane;
intel_plane->get_hw_state = skl_plane_get_hw_state;
intel_plane->check_plane = skl_plane_check;
if (intel_plane->has_ccs)
intel_plane->max_stride = i9xx_plane_max_stride;
intel_plane->update_plane = vlv_update_plane;
intel_plane->disable_plane = vlv_disable_plane;
intel_plane->get_hw_state = vlv_plane_get_hw_state;
intel_plane->check_plane = vlv_sprite_check;
intel_plane->max_stride = g4x_sprite_max_stride;
intel_plane->update_plane = ivb_update_plane;
intel_plane->disable_plane = ivb_disable_plane;
intel_plane->get_hw_state = ivb_plane_get_hw_state;
intel_plane->check_plane = g4x_sprite_check;
intel_plane->max_stride = g4x_sprite_max_stride;
intel_plane->update_plane = g4x_update_plane;
intel_plane->disable_plane = g4x_disable_plane;
intel_plane->get_hw_state = g4x_plane_get_hw_state;
intel_plane->check_plane = g4x_sprite_check;
intel_plane->pipe = pipe;
intel_plane->i9xx_plane = plane;
intel_plane->id = PLANE_SPRITE0 + plane;
intel_plane->frontbuffer_bit = INTEL_FRONTBUFFER(pipe, intel_plane->id);
ret = drm_universal_plane_init(&dev_priv->drm, &intel_plane->base,
ret = drm_universal_plane_init(&dev_priv->drm, &intel_plane->base,
drm_plane_create_rotation_property(&intel_plane->base,
drm_plane_create_color_properties(&intel_plane->base,
drm_plane_helper_add(&intel_plane->base, &intel_plane_helper_funcs);
return intel_plane;
kfree(intel_plane);
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
skl_plane_max_stride(struct intel_plane *plane,
skl_program_scaler(struct intel_plane *plane,
skl_update_plane(struct intel_plane *plane,
skl_disable_plane(struct intel_plane *plane, struct intel_crtc *crtc)
skl_plane_get_hw_state(struct intel_plane *plane,
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
vlv_update_plane(struct intel_plane *plane,
vlv_disable_plane(struct intel_plane *plane, struct intel_crtc *crtc)
vlv_plane_get_hw_state(struct intel_plane *plane,
ivb_update_plane(struct intel_plane *plane,
ivb_disable_plane(struct intel_plane *plane, struct intel_crtc *crtc)
ivb_plane_get_hw_state(struct intel_plane *plane,
g4x_sprite_max_stride(struct intel_plane *plane,
g4x_update_plane(struct intel_plane *plane,