]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blame - include/drm/drm_fb_cma_helper.h
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi...
[mirror_ubuntu-artful-kernel.git] / include / drm / drm_fb_cma_helper.h
CommitLineData
2e3b3c42
LPC
1#ifndef __DRM_FB_CMA_HELPER_H__
2#define __DRM_FB_CMA_HELPER_H__
3
4struct drm_fbdev_cma;
5struct drm_gem_cma_object;
6
199c7717
NT
7struct drm_fb_helper_surface_size;
8struct drm_framebuffer_funcs;
9struct drm_fb_helper_funcs;
2e3b3c42 10struct drm_framebuffer;
199c7717 11struct drm_fb_helper;
2e3b3c42
LPC
12struct drm_device;
13struct drm_file;
14struct drm_mode_fb_cmd2;
196594ef
MV
15struct drm_plane;
16struct drm_plane_state;
2e3b3c42 17
199c7717 18struct drm_fbdev_cma *drm_fbdev_cma_init_with_funcs(struct drm_device *dev,
e4563f6b
GKB
19 unsigned int preferred_bpp, unsigned int max_conn_count,
20 const struct drm_framebuffer_funcs *funcs);
2e3b3c42 21struct drm_fbdev_cma *drm_fbdev_cma_init(struct drm_device *dev,
e4563f6b 22 unsigned int preferred_bpp, unsigned int max_conn_count);
2e3b3c42
LPC
23void drm_fbdev_cma_fini(struct drm_fbdev_cma *fbdev_cma);
24
25void drm_fbdev_cma_restore_mode(struct drm_fbdev_cma *fbdev_cma);
26void drm_fbdev_cma_hotplug_event(struct drm_fbdev_cma *fbdev_cma);
917f4253 27void drm_fbdev_cma_set_suspend(struct drm_fbdev_cma *fbdev_cma, int state);
a4405b56
NT
28void drm_fbdev_cma_set_suspend_unlocked(struct drm_fbdev_cma *fbdev_cma,
29 int state);
199c7717
NT
30
31void drm_fb_cma_destroy(struct drm_framebuffer *fb);
32int drm_fb_cma_create_handle(struct drm_framebuffer *fb,
33 struct drm_file *file_priv, unsigned int *handle);
2e3b3c42 34
3995b395
NT
35struct drm_framebuffer *drm_fb_cma_create_with_funcs(struct drm_device *dev,
36 struct drm_file *file_priv, const struct drm_mode_fb_cmd2 *mode_cmd,
37 const struct drm_framebuffer_funcs *funcs);
2e3b3c42 38struct drm_framebuffer *drm_fb_cma_create(struct drm_device *dev,
1eb83451 39 struct drm_file *file_priv, const struct drm_mode_fb_cmd2 *mode_cmd);
2e3b3c42
LPC
40
41struct drm_gem_cma_object *drm_fb_cma_get_gem_obj(struct drm_framebuffer *fb,
42 unsigned int plane);
43
4636ce93
YF
44dma_addr_t drm_fb_cma_get_gem_addr(struct drm_framebuffer *fb,
45 struct drm_plane_state *state,
46 unsigned int plane);
47
14d7f96f
MV
48int drm_fb_cma_prepare_fb(struct drm_plane *plane,
49 struct drm_plane_state *state);
50
6f646095 51#ifdef CONFIG_DEBUG_FS
80588a86
MR
52struct seq_file;
53
6f646095
RC
54int drm_fb_cma_debugfs_show(struct seq_file *m, void *arg);
55#endif
56
2e3b3c42
LPC
57#endif
58