linux/drivers/gpu/drm/panel/panel-samsung-ld9040.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * ld9040 AMOLED LCD drm_panel driver.
 *
 * Copyright (c) 2014 Samsung Electronics Co., Ltd
 * Derived from drivers/video/backlight/ld9040.c
 *
 * Andrzej Hajda <[email protected]>
*/

#include <linux/backlight.h>
#include <linux/delay.h>
#include <linux/gpio/consumer.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/regulator/consumer.h>
#include <linux/spi/spi.h>

#include <video/mipi_display.h>
#include <video/of_videomode.h>
#include <video/videomode.h>

#include <drm/drm_modes.h>
#include <drm/drm_panel.h>

/* Manufacturer Command Set */
#define MCS_MANPWR
#define MCS_ELVSS_ON
#define MCS_USER_SETTING
#define MCS_DISPCTL
#define MCS_POWER_CTRL
#define MCS_GTCON
#define MCS_PANEL_CONDITION
#define MCS_GAMMA_SET1
#define MCS_GAMMA_CTRL

/* array of gamma tables for gamma value 2.2 */
static u8 const ld9040_gammas[25][22] =;

struct ld9040 {};

static inline struct ld9040 *panel_to_ld9040(struct drm_panel *panel)
{}

static int ld9040_clear_error(struct ld9040 *ctx)
{}

static int ld9040_spi_write_word(struct ld9040 *ctx, u16 data)
{}

static void ld9040_dcs_write(struct ld9040 *ctx, const u8 *data, size_t len)
{}

#define ld9040_dcs_write_seq_static(ctx, seq...)

static void ld9040_brightness_set(struct ld9040 *ctx)
{}

static void ld9040_init(struct ld9040 *ctx)
{}

static int ld9040_power_on(struct ld9040 *ctx)
{}

static int ld9040_power_off(struct ld9040 *ctx)
{}

static int ld9040_disable(struct drm_panel *panel)
{}

static int ld9040_unprepare(struct drm_panel *panel)
{}

static int ld9040_prepare(struct drm_panel *panel)
{}

static int ld9040_enable(struct drm_panel *panel)
{}

static int ld9040_get_modes(struct drm_panel *panel,
			    struct drm_connector *connector)
{}

static const struct drm_panel_funcs ld9040_drm_funcs =;

static int ld9040_parse_dt(struct ld9040 *ctx)
{}

static int ld9040_bl_update_status(struct backlight_device *dev)
{}

static const struct backlight_ops ld9040_bl_ops =;

static const struct backlight_properties ld9040_bl_props =;

static int ld9040_probe(struct spi_device *spi)
{}

static void ld9040_remove(struct spi_device *spi)
{}

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

static const struct spi_device_id ld9040_ids[] =;
MODULE_DEVICE_TABLE(spi, ld9040_ids);

static struct spi_driver ld9040_driver =;
module_spi_driver();

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