Lines Matching defs:fb

726 	if (!plane->fb)
731 plane->old_fb = plane->fb;
734 DRM_ERROR("failed to disable plane with busy fb\n");
738 /* disconnect the plane from the fb and crtc: */
741 plane->fb = NULL;
848 if (plane->state && plane->state->fb)
849 plane_resp->fb_id = plane->state->fb->base.id;
850 else if (!plane->state && plane->fb)
851 plane_resp->fb_id = plane->fb->base.id;
912 struct drm_framebuffer *fb,
926 /* Check whether this plane supports the fb pixel format. */
927 ret = drm_plane_check_pixel_format(plane, fb->format->format,
928 fb->modifier);
931 &fb->format->format, fb->modifier);
945 ret = drm_framebuffer_check_src_coords(src_x, src_y, src_w, src_h, fb);
978 * This function will take a reference on the new fb for the plane
985 struct drm_framebuffer *fb,
997 /* No fb means shut it down */
998 if (!fb) {
999 plane->old_fb = plane->fb;
1003 plane->fb = NULL;
1010 ret = __setplane_check(plane, crtc, fb,
1016 plane->old_fb = plane->fb;
1017 ret = plane->funcs->update_plane(plane, crtc, fb,
1022 plane->fb = fb;
1023 drm_framebuffer_get(plane->fb);
1038 struct drm_framebuffer *fb,
1049 /* No fb means shut it down */
1050 if (!fb)
1060 ret = __setplane_check(plane, crtc, fb,
1066 return plane->funcs->update_plane(plane, crtc, fb,
1073 struct drm_framebuffer *fb,
1087 ret = __setplane_atomic(plane, crtc, fb,
1091 ret = __setplane_internal(plane, crtc, fb,
1106 struct drm_framebuffer *fb = NULL;
1113 * First, find the plane, crtc, and fb objects. If not available,
1124 fb = drm_framebuffer_lookup(dev, file_priv, plane_req->fb_id);
1125 if (!fb) {
1133 drm_framebuffer_put(fb);
1140 ret = setplane_internal(plane, crtc, fb,
1146 if (fb)
1147 drm_framebuffer_put(fb);
1159 struct drm_framebuffer *fb = NULL;
1176 * Obtain fb we'll be using (either new or existing) and take an extra
1177 * reference to it if fb != null. setplane will take care of dropping
1182 fb = drm_internal_framebuffer_create(dev, &fbreq, file_priv);
1183 if (IS_ERR(fb)) {
1185 return PTR_ERR(fb);
1193 fb = NULL;
1197 fb = plane->state->fb;
1199 fb = plane->fb;
1201 if (fb)
1202 drm_framebuffer_get(fb);
1213 if (fb) {
1214 crtc_w = fb->width;
1215 crtc_h = fb->height;
1216 src_w = fb->width << 16;
1217 src_h = fb->height << 16;
1221 ret = __setplane_atomic(plane, crtc, fb,
1225 ret = __setplane_internal(plane, crtc, fb,
1229 if (fb)
1230 drm_framebuffer_put(fb);
1352 struct drm_framebuffer *fb = NULL, *old_fb;
1434 old_fb = plane->state->fb;
1436 old_fb = plane->fb;
1447 fb = drm_framebuffer_lookup(dev, file_priv, page_flip->fb_id);
1448 if (!fb) {
1460 fb);
1463 &crtc->mode, fb);
1475 if (old_fb->format->format != fb->format->format) {
1501 plane->old_fb = plane->fb;
1503 ret = crtc->funcs->page_flip_target(crtc, fb, e,
1508 ret = crtc->funcs->page_flip(crtc, fb, e, page_flip->flags,
1513 /* Keep the old fb, don't unref it. */
1517 plane->fb = fb;
1518 drm_framebuffer_get(fb);
1523 if (fb)
1524 drm_framebuffer_put(fb);
1525 fb = NULL;
1597 * Drivers with a per-buffer upload target could compare the &drm_plane_state.fb
1599 * plane has changed or not since the last plane update. If &drm_plane_state.fb
1614 * drm_plane_enable_fb_damage_clips - Enables plane fb damage clips property.