linux/drivers/video/backlight/hx8357.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * Driver for the Himax HX-8357 LCD Controller
 *
 * Copyright 2012 Free Electrons
 */

#include <linux/delay.h>
#include <linux/gpio/consumer.h>
#include <linux/lcd.h>
#include <linux/mod_devicetable.h>
#include <linux/module.h>
#include <linux/property.h>
#include <linux/spi/spi.h>

#define HX8357_NUM_IM_PINS

#define HX8357_SWRESET
#define HX8357_GET_RED_CHANNEL
#define HX8357_GET_GREEN_CHANNEL
#define HX8357_GET_BLUE_CHANNEL
#define HX8357_GET_POWER_MODE
#define HX8357_GET_MADCTL
#define HX8357_GET_PIXEL_FORMAT
#define HX8357_GET_DISPLAY_MODE
#define HX8357_GET_SIGNAL_MODE
#define HX8357_GET_DIAGNOSTIC_RESULT
#define HX8357_ENTER_SLEEP_MODE
#define HX8357_EXIT_SLEEP_MODE
#define HX8357_ENTER_PARTIAL_MODE
#define HX8357_ENTER_NORMAL_MODE
#define HX8357_EXIT_INVERSION_MODE
#define HX8357_ENTER_INVERSION_MODE
#define HX8357_SET_DISPLAY_OFF
#define HX8357_SET_DISPLAY_ON
#define HX8357_SET_COLUMN_ADDRESS
#define HX8357_SET_PAGE_ADDRESS
#define HX8357_WRITE_MEMORY_START
#define HX8357_READ_MEMORY_START
#define HX8357_SET_PARTIAL_AREA
#define HX8357_SET_SCROLL_AREA
#define HX8357_SET_TEAR_OFF
#define HX8357_SET_TEAR_ON
#define HX8357_SET_ADDRESS_MODE
#define HX8357_SET_SCROLL_START
#define HX8357_EXIT_IDLE_MODE
#define HX8357_ENTER_IDLE_MODE
#define HX8357_SET_PIXEL_FORMAT
#define HX8357_SET_PIXEL_FORMAT_DBI_3BIT
#define HX8357_SET_PIXEL_FORMAT_DBI_16BIT
#define HX8357_SET_PIXEL_FORMAT_DBI_18BIT
#define HX8357_SET_PIXEL_FORMAT_DPI_3BIT
#define HX8357_SET_PIXEL_FORMAT_DPI_16BIT
#define HX8357_SET_PIXEL_FORMAT_DPI_18BIT
#define HX8357_WRITE_MEMORY_CONTINUE
#define HX8357_READ_MEMORY_CONTINUE
#define HX8357_SET_TEAR_SCAN_LINES
#define HX8357_GET_SCAN_LINES
#define HX8357_READ_DDB_START
#define HX8357_SET_DISPLAY_MODE
#define HX8357_SET_DISPLAY_MODE_RGB_THROUGH
#define HX8357_SET_DISPLAY_MODE_RGB_INTERFACE
#define HX8357_SET_PANEL_DRIVING
#define HX8357_SET_DISPLAY_FRAME
#define HX8357_SET_RGB
#define HX8357_SET_RGB_ENABLE_HIGH
#define HX8357_SET_GAMMA
#define HX8357_SET_POWER
#define HX8357_SET_VCOM
#define HX8357_SET_POWER_NORMAL
#define HX8357_SET_PANEL_RELATED

#define HX8369_SET_DISPLAY_BRIGHTNESS
#define HX8369_WRITE_CABC_DISPLAY_VALUE
#define HX8369_WRITE_CABC_BRIGHT_CTRL
#define HX8369_WRITE_CABC_MIN_BRIGHTNESS
#define HX8369_SET_POWER
#define HX8369_SET_DISPLAY_MODE
#define HX8369_SET_DISPLAY_WAVEFORM_CYC
#define HX8369_SET_VCOM
#define HX8369_SET_EXTENSION_COMMAND
#define HX8369_SET_GIP
#define HX8369_SET_GAMMA_CURVE_RELATED

struct hx8357_data {};

static u8 hx8357_seq_power[] =;

static u8 hx8357_seq_vcom[] =;

static u8 hx8357_seq_power_normal[] =;

static u8 hx8357_seq_panel_driving[] =;

static u8 hx8357_seq_display_frame[] =;

static u8 hx8357_seq_panel_related[] =;

static u8 hx8357_seq_undefined1[] =;

static u8 hx8357_seq_undefined2[] =;

static u8 hx8357_seq_gamma[] =;

static u8 hx8357_seq_address_mode[] =;

static u8 hx8357_seq_pixel_format[] =;

static u8 hx8357_seq_column_address[] =;

static u8 hx8357_seq_page_address[] =;

static u8 hx8357_seq_rgb[] =;

static u8 hx8357_seq_display_mode[] =;

static u8 hx8369_seq_write_CABC_min_brightness[] =;

static u8 hx8369_seq_write_CABC_control[] =;

static u8 hx8369_seq_set_display_brightness[] =;

static u8 hx8369_seq_write_CABC_control_setting[] =;

static u8 hx8369_seq_extension_command[] =;

static u8 hx8369_seq_display_related[] =;

static u8 hx8369_seq_panel_waveform_cycle[] =;

static u8 hx8369_seq_set_address_mode[] =;

static u8 hx8369_seq_vcom[] =;

static u8 hx8369_seq_gip[] =;

static u8 hx8369_seq_power[] =;

static u8 hx8369_seq_gamma_curve_related[] =;

static int hx8357_spi_write_then_read(struct lcd_device *lcdev,
				u8 *txbuf, u16 txlen,
				u8 *rxbuf, u16 rxlen)
{}

static inline int hx8357_spi_write_array(struct lcd_device *lcdev,
					u8 *value, u8 len)
{}

static inline int hx8357_spi_write_byte(struct lcd_device *lcdev,
					u8 value)
{}

static int hx8357_enter_standby(struct lcd_device *lcdev)
{}

static int hx8357_exit_standby(struct lcd_device *lcdev)
{}

static void hx8357_lcd_reset(struct lcd_device *lcdev)
{}

static int hx8357_lcd_init(struct lcd_device *lcdev)
{}

static int hx8369_lcd_init(struct lcd_device *lcdev)
{}

#define POWER_IS_ON(pwr)

static int hx8357_set_power(struct lcd_device *lcdev, int power)
{}

static int hx8357_get_power(struct lcd_device *lcdev)
{}

static const struct lcd_ops hx8357_ops =;

hx8357_init_fn;

static int hx8357_probe(struct spi_device *spi)
{}

static const struct of_device_id hx8357_dt_ids[] =;
MODULE_DEVICE_TABLE(of, hx8357_dt_ids);

static struct spi_driver hx8357_driver =;

module_spi_driver();

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