Lines Matching defs:plane
20 vkms_plane_duplicate_state(struct drm_plane *plane)
38 __drm_atomic_helper_plane_duplicate_state(plane,
44 static void vkms_plane_destroy_state(struct drm_plane *plane,
65 static void vkms_plane_reset(struct drm_plane *plane)
69 if (plane->state)
70 vkms_plane_destroy_state(plane, plane->state);
78 plane->state = &vkms_state->base;
79 plane->state->plane = plane;
91 static void vkms_plane_atomic_update(struct drm_plane *plane,
95 struct drm_framebuffer *fb = plane->state->fb;
98 if (!plane->state->crtc || !fb)
101 vkms_plane_state = to_vkms_plane_state(plane->state);
104 memcpy(&composer->src, &plane->state->src, sizeof(struct drm_rect));
105 memcpy(&composer->dst, &plane->state->dst, sizeof(struct drm_rect));
113 static int vkms_plane_atomic_check(struct drm_plane *plane,
127 if (plane->type == DRM_PLANE_TYPE_CURSOR)
137 /* for now primary plane must be visible and full screen */
144 static int vkms_prepare_fb(struct drm_plane *plane,
158 return drm_gem_fb_prepare_fb(plane, state);
161 static void vkms_cleanup_fb(struct drm_plane *plane,
185 struct drm_plane *plane;
189 plane = kzalloc(sizeof(*plane), GFP_KERNEL);
190 if (!plane)
203 ret = drm_universal_plane_init(dev, plane, 1 << index,
208 kfree(plane);
212 drm_plane_helper_add(plane, funcs);
214 return plane;