linux/drivers/video/backlight/otm3225a.c

// SPDX-License-Identifier: GPL-2.0
/* Driver for ORISE Technology OTM3225A SOC for TFT LCD
 * Copyright (C) 2017, EETS GmbH, Felix Brack <[email protected]>
 *
 * This driver implements a lcd device for the ORISE OTM3225A display
 * controller. The control interface to the display is SPI and the display's
 * memory is updated over the 16-bit RGB interface.
 * The main source of information for writing this driver was provided by the
 * OTM3225A datasheet from ORISE Technology. Some information arise from the
 * ILI9328 datasheet from ILITEK as well as from the datasheets and sample code
 * provided by Crystalfontz America Inc. who sells the CFAF240320A-032T, a 3.2"
 * TFT LC display using the OTM3225A controller.
 */

#include <linux/delay.h>
#include <linux/device.h>
#include <linux/kernel.h>
#include <linux/lcd.h>
#include <linux/module.h>
#include <linux/spi/spi.h>

#define OTM3225A_INDEX_REG
#define OTM3225A_DATA_REG

/* instruction register list */
#define DRIVER_OUTPUT_CTRL_1
#define DRIVER_WAVEFORM_CTRL
#define ENTRY_MODE
#define SCALING_CTRL
#define DISPLAY_CTRL_1
#define DISPLAY_CTRL_2
#define DISPLAY_CTRL_3
#define FRAME_CYCLE_CTRL
#define EXT_DISP_IFACE_CTRL_1
#define FRAME_MAKER_POS
#define EXT_DISP_IFACE_CTRL_2
#define POWER_CTRL_1
#define POWER_CTRL_2
#define POWER_CTRL_3
#define POWER_CTRL_4
#define GRAM_ADDR_HORIZ_SET
#define GRAM_ADDR_VERT_SET
#define GRAM_READ_WRITE
#define POWER_CTRL_7
#define FRAME_RATE_CTRL
#define GAMMA_CTRL_1
#define GAMMA_CTRL_2
#define GAMMA_CTRL_3
#define GAMMA_CTRL_4
#define GAMMA_CTRL_5
#define GAMMA_CTRL_6
#define GAMMA_CTRL_7
#define GAMMA_CTRL_8
#define GAMMA_CTRL_9
#define GAMMA_CTRL_10
#define WINDOW_HORIZ_RAM_START
#define WINDOW_HORIZ_RAM_END
#define WINDOW_VERT_RAM_START
#define WINDOW_VERT_RAM_END
#define DRIVER_OUTPUT_CTRL_2
#define BASE_IMG_DISPLAY_CTRL
#define VERT_SCROLL_CTRL
#define PD1_DISPLAY_POS
#define PD1_RAM_START
#define PD1_RAM_END
#define PD2_DISPLAY_POS
#define PD2_RAM_START
#define PD2_RAM_END
#define PANEL_IFACE_CTRL_1
#define PANEL_IFACE_CTRL_2
#define PANEL_IFACE_CTRL_4
#define PANEL_IFACE_CTRL_5

struct otm3225a_data {};

struct otm3225a_spi_instruction {};

static struct otm3225a_spi_instruction display_init[] =;

static struct otm3225a_spi_instruction display_enable_rgb_interface[] =;

static struct otm3225a_spi_instruction display_off[] =;

static struct otm3225a_spi_instruction display_on[] =;

static void otm3225a_write(struct spi_device *spi,
			   struct otm3225a_spi_instruction *instruction,
			   unsigned int count)
{}

static int otm3225a_set_power(struct lcd_device *ld, int power)
{}

static int otm3225a_get_power(struct lcd_device *ld)
{}

static const struct lcd_ops otm3225a_ops =;

static int otm3225a_probe(struct spi_device *spi)
{}

static struct spi_driver otm3225a_driver =;

module_spi_driver();

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