Lines Matching refs:flip_state
846 struct vc4_async_flip_state *flip_state = in vc4_async_page_flip_complete() local
848 struct drm_crtc *crtc = flip_state->crtc; in vc4_async_page_flip_complete()
853 vc4_plane_async_set_fb(plane, flip_state->fb); in vc4_async_page_flip_complete()
854 if (flip_state->event) { in vc4_async_page_flip_complete()
858 drm_crtc_send_vblank_event(crtc, flip_state->event); in vc4_async_page_flip_complete()
863 drm_framebuffer_put(flip_state->fb); in vc4_async_page_flip_complete()
871 if (flip_state->old_fb) { in vc4_async_page_flip_complete()
875 cma_bo = drm_fb_cma_get_gem_obj(flip_state->old_fb, 0); in vc4_async_page_flip_complete()
878 drm_framebuffer_put(flip_state->old_fb); in vc4_async_page_flip_complete()
881 kfree(flip_state); in vc4_async_page_flip_complete()
901 struct vc4_async_flip_state *flip_state; in vc4_async_page_flip() local
916 flip_state = kzalloc(sizeof(*flip_state), GFP_KERNEL); in vc4_async_page_flip()
917 if (!flip_state) { in vc4_async_page_flip()
923 flip_state->fb = fb; in vc4_async_page_flip()
924 flip_state->crtc = crtc; in vc4_async_page_flip()
925 flip_state->event = event; in vc4_async_page_flip()
932 kfree(flip_state); in vc4_async_page_flip()
944 flip_state->old_fb = plane->state->fb; in vc4_async_page_flip()
945 if (flip_state->old_fb) in vc4_async_page_flip()
946 drm_framebuffer_get(flip_state->old_fb); in vc4_async_page_flip()
956 vc4_queue_seqno_cb(dev, &flip_state->cb, bo->seqno, in vc4_async_page_flip()