Home | History | Annotate | Download | only in drm

Lines Matching defs:plane

201 		struct drm_plane *plane = state->planes[i].ptr;
203 if (!plane)
206 plane->funcs->atomic_destroy_state(plane,
459 * drm_atomic_get_plane_state - get plane state
461 * @plane: plane to get state object for
463 * This function returns the plane state for the given plane, allocating it if
464 * needed. It will also grab the relevant plane lock to make sure that the state
475 struct drm_plane *plane)
477 int ret, index = drm_plane_index(plane);
483 WARN_ON(plane->fb);
484 WARN_ON(plane->old_fb);
485 WARN_ON(plane->crtc);
487 plane_state = drm_atomic_get_existing_plane_state(state, plane);
491 ret = drm_modeset_lock(&plane->mutex, state->acquire_ctx);
495 plane_state = plane->funcs->atomic_duplicate_state(plane);
500 state->planes[index].ptr = plane;
501 state->planes[index].old_state = plane->state;
505 DRM_DEBUG_ATOMIC("Added [PLANE:%d:%s] %p state to %p\n",
506 plane->base.id, plane->name, plane_state, state);
533 plane switching without the intermediate
540 * drm_atomic_plane_check - check plane state
541 * @old_plane_state: old plane state to check
542 * @new_plane_state: new plane state to check
544 * Provides core sanity checks for plane state.
552 struct drm_plane *plane = new_plane_state->plane;
562 DRM_DEBUG_ATOMIC("[PLANE:%d:%s] CRTC set but no FB\n",
563 plane->base.id, plane->name);
566 DRM_DEBUG_ATOMIC("[PLANE:%d:%s] FB set but no CRTC\n",
567 plane->base.id, plane->name);
575 /* Check whether this plane is usable on this CRTC */
576 if (!(plane->possible_crtcs & drm_crtc_mask(crtc))) {
577 DRM_DEBUG_ATOMIC("Invalid [CRTC:%d:%s] for [PLANE:%d:%s]\n",
579 plane->base.id, plane->name);
583 /* Check whether this plane supports the fb pixel format. */
584 ret = drm_plane_check_pixel_format(plane, fb->format->format,
588 DRM_DEBUG_ATOMIC("[PLANE:%d:%s] invalid pixel format %s, modifier 0x%"PRIx64"\n",
589 plane->base.id, plane->name,
601 DRM_DEBUG_ATOMIC("[PLANE:%d:%s] invalid CRTC coordinates %ux%u+%d+%d\n",
602 plane->base.id, plane->name,
616 DRM_DEBUG_ATOMIC("[PLANE:%d:%s] invalid source coordinates "
618 plane->base.id, plane->name,
642 DRM_DEBUG_ATOMIC("[PLANE:%d:%s] invalid damage clip %d %d %d %d\n",
643 plane->base.id, plane->name, clips->x1,
652 DRM_DEBUG_ATOMIC("[PLANE:%d:%s] switching CRTC directly\n",
653 plane->base.id, plane->name);
663 struct drm_plane *plane = state->plane;
667 drm_printf(p, "plane[%u]: %s\n", plane->base.id, plane->name);
681 if (plane->funcs->atomic_print_state)
682 plane->funcs->atomic_print_state(p, state);
1098 * when an atomic commit also needs to check all currently enabled plane on
1102 * Since acquiring a plane state will always also acquire the w/w mutex of the
1103 * current CRTC for that plane (if there is any) adding all the plane states for
1117 struct drm_plane *plane;
1124 drm_for_each_plane_mask(plane, state->dev, old_crtc_state->plane_mask) {
1126 drm_atomic_get_plane_state(state, plane);
1150 struct drm_plane *plane;
1162 for_each_oldnew_plane_in_state(state, plane, old_plane_state, new_plane_state, i) {
1165 DRM_DEBUG_ATOMIC("[PLANE:%d:%s] atomic core check failed\n",
1166 plane->base.id, plane->name);
1272 int __drm_atomic_helper_disable_plane(struct drm_plane *plane,
1442 struct drm_plane *plane __unused;
1452 for_each_new_plane_in_state(state, plane, plane_state, i)
1466 struct drm_plane *plane;
1474 list_for_each_entry(plane, &config->plane_list, head) {
1476 drm_modeset_lock(&plane->mutex, NULL);
1477 drm_atomic_plane_print_state(p, plane->state);
1479 drm_modeset_unlock(&plane->mutex);