#include <linux/component.h>
#include <linux/dma-mapping.h>
#include <linux/platform_device.h>
#include <linux/pm_runtime.h>
#include <linux/uaccess.h>
#include <drm/drm_atomic.h>
#include <drm/drm_atomic_helper.h>
#include <drm/drm_drv.h>
#include <drm/drm_file.h>
#include <drm/drm_fourcc.h>
#include <drm/drm_ioctl.h>
#include <drm/drm_probe_helper.h>
#include <drm/drm_vblank.h>
#include <drm/exynos_drm.h>
#include "exynos_drm_drv.h"
#include "exynos_drm_fb.h"
#include "exynos_drm_fbdev.h"
#include "exynos_drm_g2d.h"
#include "exynos_drm_gem.h"
#include "exynos_drm_ipp.h"
#include "exynos_drm_plane.h"
#include "exynos_drm_vidi.h"
#define DRIVER_NAME …
#define DRIVER_DESC …
#define DRIVER_DATE …
#define DRIVER_MAJOR …
#define DRIVER_MINOR …
static int exynos_drm_open(struct drm_device *dev, struct drm_file *file)
{ … }
static void exynos_drm_postclose(struct drm_device *dev, struct drm_file *file)
{ … }
static const struct drm_ioctl_desc exynos_ioctls[] = …;
DEFINE_DRM_GEM_FOPS(exynos_drm_driver_fops);
static const struct drm_driver exynos_drm_driver = …;
static int exynos_drm_suspend(struct device *dev)
{ … }
static void exynos_drm_resume(struct device *dev)
{ … }
static const struct dev_pm_ops exynos_drm_pm_ops = …;
static struct platform_driver exynos_drm_platform_driver;
struct exynos_drm_driver_info { … };
#define DRM_COMPONENT_DRIVER …
#define DRM_VIRTUAL_DEVICE …
#define DRM_FIMC_DEVICE …
#define DRV_PTR(drv, cond) …
static struct exynos_drm_driver_info exynos_drm_drivers[] = …;
static struct component_match *exynos_drm_match_add(struct device *dev)
{ … }
static int exynos_drm_bind(struct device *dev)
{ … }
static void exynos_drm_unbind(struct device *dev)
{ … }
static const struct component_master_ops exynos_drm_ops = …;
static int exynos_drm_platform_probe(struct platform_device *pdev)
{ … }
static void exynos_drm_platform_remove(struct platform_device *pdev)
{ … }
static void exynos_drm_platform_shutdown(struct platform_device *pdev)
{ … }
static struct platform_driver exynos_drm_platform_driver = …;
static void exynos_drm_unregister_devices(void)
{ … }
static int exynos_drm_register_devices(void)
{ … }
static void exynos_drm_unregister_drivers(void)
{ … }
static int exynos_drm_register_drivers(void)
{ … }
static int exynos_drm_init(void)
{ … }
static void exynos_drm_exit(void)
{ … }
module_init(…) …;
module_exit(exynos_drm_exit);
MODULE_AUTHOR(…) …;
MODULE_AUTHOR(…) …;
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;