#include <linux/fb.h>
#include <drm/drm_crtc_helper.h>
#include <drm/drm_drv.h>
#include <drm/drm_fb_helper.h>
#include <drm/drm_framebuffer.h>
#include <drm/drm_gem_framebuffer_helper.h>
#include <drm/drm_prime.h>
#include <drm/exynos_drm.h>
#include "exynos_drm_drv.h"
#include "exynos_drm_fb.h"
#include "exynos_drm_fbdev.h"
#define MAX_CONNECTOR …
#define PREFERRED_BPP …
static int exynos_drm_fb_mmap(struct fb_info *info, struct vm_area_struct *vma)
{ … }
static void exynos_drm_fb_destroy(struct fb_info *info)
{ … }
static const struct fb_ops exynos_drm_fb_ops = …;
static int exynos_drm_fbdev_update(struct drm_fb_helper *helper,
struct drm_fb_helper_surface_size *sizes,
struct exynos_drm_gem *exynos_gem)
{ … }
static int exynos_drm_fbdev_create(struct drm_fb_helper *helper,
struct drm_fb_helper_surface_size *sizes)
{ … }
static const struct drm_fb_helper_funcs exynos_drm_fb_helper_funcs = …;
static void exynos_drm_fbdev_client_unregister(struct drm_client_dev *client)
{ … }
static int exynos_drm_fbdev_client_restore(struct drm_client_dev *client)
{ … }
static int exynos_drm_fbdev_client_hotplug(struct drm_client_dev *client)
{ … }
static const struct drm_client_funcs exynos_drm_fbdev_client_funcs = …;
void exynos_drm_fbdev_setup(struct drm_device *dev)
{ … }