linux/drivers/staging/fbtft/fb_uc1701.c

// SPDX-License-Identifier: GPL-2.0+
/*
 * FB driver for the UC1701 LCD Controller
 *
 * The display is monochrome and the video memory is RGB565.
 * Any pixel value except 0 turns the pixel on.
 *
 * Copyright (C) 2014 Juergen Holzmann
 */

#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/init.h>
#include <linux/gpio/consumer.h>
#include <linux/spi/spi.h>
#include <linux/delay.h>

#include "fbtft.h"

#define DRVNAME
#define WIDTH
#define HEIGHT
#define PAGES

/* 1: Display on/off */
#define LCD_DISPLAY_ENABLE
/* 2: display start line set */
#define LCD_START_LINE
/* 3: Page address set (lower 4 bits select one of the pages) */
#define LCD_PAGE_ADDRESS
/* 4: column address */
#define LCD_COL_ADDRESS
/* 8: select orientation */
#define LCD_BOTTOMVIEW
/* 9: inverted display */
#define LCD_DISPLAY_INVERT
/* 10: show memory content or switch all pixels on */
#define LCD_ALL_PIXEL
/* 11: lcd bias set */
#define LCD_BIAS
/* 14: Reset Controller */
#define LCD_RESET_CMD
/* 15: output mode select (turns display upside-down) */
#define LCD_SCAN_DIR
/* 16: power control set */
#define LCD_POWER_CONTROL
/* 17: voltage regulator resistor ratio set */
#define LCD_VOLTAGE
/* 18: Volume mode set */
#define LCD_VOLUME_MODE
/* 22: NOP command */
#define LCD_NO_OP
/* 25: advanced program control */
#define LCD_ADV_PROG_CTRL
/* 25: advanced program control2 */
#define LCD_ADV_PROG_CTRL2
#define LCD_TEMPCOMP_HIGH
/* column offset for normal orientation */
#define SHIFT_ADDR_NORMAL
/* column offset for bottom view orientation */
#define SHIFT_ADDR_TOPVIEW

static int init_display(struct fbtft_par *par)
{}

static void set_addr_win(struct fbtft_par *par, int xs, int ys, int xe, int ye)
{}

static int write_vmem(struct fbtft_par *par, size_t offset, size_t len)
{}

static struct fbtft_display display =;

FBTFT_REGISTER_DRIVER();

MODULE_ALIAS();
MODULE_ALIAS();

MODULE_DESCRIPTION();
MODULE_AUTHOR();
MODULE_LICENSE();