#include <linux/bitops.h>
#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/mfd/syscon.h>
#include <linux/mod_devicetable.h>
#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/regmap.h>
#include <video/of_videomode.h>
#include <video/videomode.h>
#include <drm/drm_modes.h>
#include <drm/drm_panel.h>
#define SYS_CLCD …
#define SYS_CLCD_CLCDID_MASK …
#define SYS_CLCD_ID_SANYO_3_8 …
#define SYS_CLCD_ID_SHARP_8_4 …
#define SYS_CLCD_ID_EPSON_2_2 …
#define SYS_CLCD_ID_SANYO_2_5 …
#define SYS_CLCD_ID_VGA …
#define IB2_CTRL …
#define IB2_CTRL_LCD_SD …
#define IB2_CTRL_LCD_BL_ON …
#define IB2_CTRL_LCD_MASK …
struct versatile_panel_type { … };
struct versatile_panel { … };
static const struct versatile_panel_type versatile_panels[] = …;
static inline struct versatile_panel *
to_versatile_panel(struct drm_panel *panel)
{ … }
static int versatile_panel_disable(struct drm_panel *panel)
{ … }
static int versatile_panel_enable(struct drm_panel *panel)
{ … }
static int versatile_panel_get_modes(struct drm_panel *panel,
struct drm_connector *connector)
{ … }
static const struct drm_panel_funcs versatile_panel_drm_funcs = …;
static int versatile_panel_probe(struct platform_device *pdev)
{ … }
static const struct of_device_id versatile_panel_match[] = …;
MODULE_DEVICE_TABLE(of, versatile_panel_match);
static struct platform_driver versatile_panel_driver = …;
module_platform_driver(…) …;
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;