Loading...
Note: File does not exist in v6.2.
1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef __DRM_FB_CMA_HELPER_H__
3#define __DRM_FB_CMA_HELPER_H__
4
5struct drm_fbdev_cma;
6struct drm_gem_cma_object;
7
8struct drm_fb_helper_surface_size;
9struct drm_framebuffer_funcs;
10struct drm_fb_helper_funcs;
11struct drm_framebuffer;
12struct drm_fb_helper;
13struct drm_device;
14struct drm_file;
15struct drm_mode_fb_cmd2;
16struct drm_plane;
17struct drm_plane_state;
18
19int drm_fb_cma_fbdev_init_with_funcs(struct drm_device *dev,
20 unsigned int preferred_bpp, unsigned int max_conn_count,
21 const struct drm_framebuffer_funcs *funcs);
22int drm_fb_cma_fbdev_init(struct drm_device *dev, unsigned int preferred_bpp,
23 unsigned int max_conn_count);
24void drm_fb_cma_fbdev_fini(struct drm_device *dev);
25
26struct drm_fbdev_cma *drm_fbdev_cma_init_with_funcs(struct drm_device *dev,
27 unsigned int preferred_bpp, unsigned int max_conn_count,
28 const struct drm_framebuffer_funcs *funcs);
29struct drm_fbdev_cma *drm_fbdev_cma_init(struct drm_device *dev,
30 unsigned int preferred_bpp, unsigned int max_conn_count);
31void drm_fbdev_cma_fini(struct drm_fbdev_cma *fbdev_cma);
32
33void drm_fbdev_cma_restore_mode(struct drm_fbdev_cma *fbdev_cma);
34void drm_fbdev_cma_hotplug_event(struct drm_fbdev_cma *fbdev_cma);
35void drm_fbdev_cma_set_suspend(struct drm_fbdev_cma *fbdev_cma, bool state);
36void drm_fbdev_cma_set_suspend_unlocked(struct drm_fbdev_cma *fbdev_cma,
37 bool state);
38
39struct drm_gem_cma_object *drm_fb_cma_get_gem_obj(struct drm_framebuffer *fb,
40 unsigned int plane);
41
42dma_addr_t drm_fb_cma_get_gem_addr(struct drm_framebuffer *fb,
43 struct drm_plane_state *state,
44 unsigned int plane);
45
46#endif
47