2012-07-02 16:37:47 +02:00
# ifndef __DRM_FB_CMA_HELPER_H__
# define __DRM_FB_CMA_HELPER_H__
struct drm_fbdev_cma ;
struct drm_gem_cma_object ;
2016-04-28 17:18:35 +02:00
struct drm_fb_helper_surface_size ;
struct drm_framebuffer_funcs ;
struct drm_fb_helper_funcs ;
2012-07-02 16:37:47 +02:00
struct drm_framebuffer ;
2016-04-28 17:18:35 +02:00
struct drm_fb_helper ;
2012-07-02 16:37:47 +02:00
struct drm_device ;
struct drm_file ;
struct drm_mode_fb_cmd2 ;
2016-11-15 11:55:29 +01:00
struct drm_plane ;
struct drm_plane_state ;
2012-07-02 16:37:47 +02:00
2016-04-28 17:18:35 +02:00
struct drm_fbdev_cma * drm_fbdev_cma_init_with_funcs ( struct drm_device * dev ,
unsigned int preferred_bpp , unsigned int num_crtc ,
unsigned int max_conn_count , const struct drm_fb_helper_funcs * funcs ) ;
2012-07-02 16:37:47 +02:00
struct drm_fbdev_cma * drm_fbdev_cma_init ( struct drm_device * dev ,
unsigned int preferred_bpp , unsigned int num_crtc ,
unsigned int max_conn_count ) ;
void drm_fbdev_cma_fini ( struct drm_fbdev_cma * fbdev_cma ) ;
void drm_fbdev_cma_restore_mode ( struct drm_fbdev_cma * fbdev_cma ) ;
void drm_fbdev_cma_hotplug_event ( struct drm_fbdev_cma * fbdev_cma ) ;
2016-02-11 17:30:14 -08:00
void drm_fbdev_cma_set_suspend ( struct drm_fbdev_cma * fbdev_cma , int state ) ;
2016-04-28 17:18:35 +02:00
int drm_fbdev_cma_create_with_funcs ( struct drm_fb_helper * helper ,
struct drm_fb_helper_surface_size * sizes ,
2016-05-12 20:25:21 +02:00
const struct drm_framebuffer_funcs * funcs ) ;
2016-04-28 17:18:35 +02:00
void drm_fb_cma_destroy ( struct drm_framebuffer * fb ) ;
int drm_fb_cma_create_handle ( struct drm_framebuffer * fb ,
struct drm_file * file_priv , unsigned int * handle ) ;
2012-07-02 16:37:47 +02:00
2016-05-12 20:25:22 +02:00
struct drm_framebuffer * drm_fb_cma_create_with_funcs ( struct drm_device * dev ,
struct drm_file * file_priv , const struct drm_mode_fb_cmd2 * mode_cmd ,
const struct drm_framebuffer_funcs * funcs ) ;
2012-07-02 16:37:47 +02:00
struct drm_framebuffer * drm_fb_cma_create ( struct drm_device * dev ,
2015-11-11 19:11:29 +02:00
struct drm_file * file_priv , const struct drm_mode_fb_cmd2 * mode_cmd ) ;
2012-07-02 16:37:47 +02:00
struct drm_gem_cma_object * drm_fb_cma_get_gem_obj ( struct drm_framebuffer * fb ,
unsigned int plane ) ;
2016-11-14 11:07:31 +01:00
int drm_fb_cma_prepare_fb ( struct drm_plane * plane ,
struct drm_plane_state * state ) ;
2012-12-10 10:46:43 -06:00
# ifdef CONFIG_DEBUG_FS
2016-02-08 13:58:56 +01:00
struct seq_file ;
2012-12-10 10:46:43 -06:00
int drm_fb_cma_debugfs_show ( struct seq_file * m , void * arg ) ;
# endif
2012-07-02 16:37:47 +02:00
# endif