#include <linux/clk.h>
#include <linux/fb.h>
#include <linux/io.h>
#include <linux/lcd.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/platform_device.h>
#include <linux/regmap.h>
#include <linux/mfd/syscon.h>
#include <linux/mfd/syscon/clps711x.h>
#include <linux/regulator/consumer.h>
#include <video/of_display_timing.h>
#define CLPS711X_FB_NAME …
#define CLPS711X_FB_BPP_MAX …
#define CLPS711X_LCDCON …
#define LCDCON_GSEN …
#define LCDCON_GSMD …
#define CLPS711X_PALLSW …
#define CLPS711X_PALMSW …
#define CLPS711X_FBADDR …
struct clps711x_fb_info { … };
static int clps711x_fb_setcolreg(u_int regno, u_int red, u_int green,
u_int blue, u_int transp, struct fb_info *info)
{ … }
static int clps711x_fb_check_var(struct fb_var_screeninfo *var,
struct fb_info *info)
{ … }
static int clps711x_fb_set_par(struct fb_info *info)
{ … }
static int clps711x_fb_blank(int blank, struct fb_info *info)
{ … }
static const struct fb_ops clps711x_fb_ops = …;
static int clps711x_lcd_check_fb(struct lcd_device *lcddev, struct fb_info *fi)
{ … }
static int clps711x_lcd_get_power(struct lcd_device *lcddev)
{ … }
static int clps711x_lcd_set_power(struct lcd_device *lcddev, int blank)
{ … }
static const struct lcd_ops clps711x_lcd_ops = …;
static int clps711x_fb_probe(struct platform_device *pdev)
{ … }
static void clps711x_fb_remove(struct platform_device *pdev)
{ … }
static const struct of_device_id clps711x_fb_dt_ids[] = …;
MODULE_DEVICE_TABLE(of, clps711x_fb_dt_ids);
static struct platform_driver clps711x_fb_driver = …;
module_platform_driver(…) …;
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;