Lines Matching full:state

36 	struct mtk_plane_state *state;  in mtk_plane_reset()  local
38 if (plane->state) { in mtk_plane_reset()
39 __drm_atomic_helper_plane_destroy_state(plane->state); in mtk_plane_reset()
41 state = to_mtk_plane_state(plane->state); in mtk_plane_reset()
42 memset(state, 0, sizeof(*state)); in mtk_plane_reset()
44 state = kzalloc(sizeof(*state), GFP_KERNEL); in mtk_plane_reset()
45 if (!state) in mtk_plane_reset()
47 plane->state = &state->base; in mtk_plane_reset()
50 state->base.plane = plane; in mtk_plane_reset()
51 state->pending.format = DRM_FORMAT_RGB565; in mtk_plane_reset()
56 struct mtk_plane_state *old_state = to_mtk_plane_state(plane->state); in mtk_plane_duplicate_state()
57 struct mtk_plane_state *state; in mtk_plane_duplicate_state() local
59 state = kzalloc(sizeof(*state), GFP_KERNEL); in mtk_plane_duplicate_state()
60 if (!state) in mtk_plane_duplicate_state()
63 __drm_atomic_helper_plane_duplicate_state(plane, &state->base); in mtk_plane_duplicate_state()
65 WARN_ON(state->base.plane != plane); in mtk_plane_duplicate_state()
67 state->pending = old_state->pending; in mtk_plane_duplicate_state()
69 return &state->base; in mtk_plane_duplicate_state()
73 struct drm_plane_state *state) in mtk_drm_plane_destroy_state() argument
75 __drm_atomic_helper_plane_destroy_state(state); in mtk_drm_plane_destroy_state()
76 kfree(to_mtk_plane_state(state)); in mtk_drm_plane_destroy_state()
80 struct drm_plane_state *state) in mtk_plane_atomic_async_check() argument
85 if (plane != state->crtc->cursor) in mtk_plane_atomic_async_check()
88 if (!plane->state) in mtk_plane_atomic_async_check()
91 if (!plane->state->fb) in mtk_plane_atomic_async_check()
94 ret = mtk_drm_crtc_plane_check(state->crtc, plane, in mtk_plane_atomic_async_check()
95 to_mtk_plane_state(state)); in mtk_plane_atomic_async_check()
99 if (state->state) in mtk_plane_atomic_async_check()
100 crtc_state = drm_atomic_get_existing_crtc_state(state->state, in mtk_plane_atomic_async_check()
101 state->crtc); in mtk_plane_atomic_async_check()
103 crtc_state = state->crtc->state; in mtk_plane_atomic_async_check()
105 return drm_atomic_helper_check_plane_state(plane->state, crtc_state, in mtk_plane_atomic_async_check()
114 struct mtk_plane_state *state = to_mtk_plane_state(plane->state); in mtk_plane_atomic_async_update() local
116 plane->state->crtc_x = new_state->crtc_x; in mtk_plane_atomic_async_update()
117 plane->state->crtc_y = new_state->crtc_y; in mtk_plane_atomic_async_update()
118 plane->state->crtc_h = new_state->crtc_h; in mtk_plane_atomic_async_update()
119 plane->state->crtc_w = new_state->crtc_w; in mtk_plane_atomic_async_update()
120 plane->state->src_x = new_state->src_x; in mtk_plane_atomic_async_update()
121 plane->state->src_y = new_state->src_y; in mtk_plane_atomic_async_update()
122 plane->state->src_h = new_state->src_h; in mtk_plane_atomic_async_update()
123 plane->state->src_w = new_state->src_w; in mtk_plane_atomic_async_update()
124 swap(plane->state->fb, new_state->fb); in mtk_plane_atomic_async_update()
125 state->pending.async_dirty = true; in mtk_plane_atomic_async_update()
140 struct drm_plane_state *state) in mtk_plane_atomic_check() argument
142 struct drm_framebuffer *fb = state->fb; in mtk_plane_atomic_check()
149 if (WARN_ON(!state->crtc)) in mtk_plane_atomic_check()
152 ret = mtk_drm_crtc_plane_check(state->crtc, plane, in mtk_plane_atomic_check()
153 to_mtk_plane_state(state)); in mtk_plane_atomic_check()
157 crtc_state = drm_atomic_get_crtc_state(state->state, state->crtc); in mtk_plane_atomic_check()
161 return drm_atomic_helper_check_plane_state(state, crtc_state, in mtk_plane_atomic_check()
170 struct mtk_plane_state *state = to_mtk_plane_state(plane->state); in mtk_plane_atomic_disable() local
172 state->pending.enable = false; in mtk_plane_atomic_disable()
174 state->pending.dirty = true; in mtk_plane_atomic_disable()
180 struct mtk_plane_state *state = to_mtk_plane_state(plane->state); in mtk_plane_atomic_update() local
181 struct drm_crtc *crtc = plane->state->crtc; in mtk_plane_atomic_update()
182 struct drm_framebuffer *fb = plane->state->fb; in mtk_plane_atomic_update()
191 if (!plane->state->visible) { in mtk_plane_atomic_update()
202 addr += (plane->state->src.x1 >> 16) * fb->format->cpp[0]; in mtk_plane_atomic_update()
203 addr += (plane->state->src.y1 >> 16) * pitch; in mtk_plane_atomic_update()
205 state->pending.enable = true; in mtk_plane_atomic_update()
206 state->pending.pitch = pitch; in mtk_plane_atomic_update()
207 state->pending.format = format; in mtk_plane_atomic_update()
208 state->pending.addr = addr; in mtk_plane_atomic_update()
209 state->pending.x = plane->state->dst.x1; in mtk_plane_atomic_update()
210 state->pending.y = plane->state->dst.y1; in mtk_plane_atomic_update()
211 state->pending.width = drm_rect_width(&plane->state->dst); in mtk_plane_atomic_update()
212 state->pending.height = drm_rect_height(&plane->state->dst); in mtk_plane_atomic_update()
213 state->pending.rotation = plane->state->rotation; in mtk_plane_atomic_update()
215 state->pending.dirty = true; in mtk_plane_atomic_update()