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