linux/drivers/gpu/drm/panel/panel-novatek-nt36672a.c

// SPDX-License-Identifier: GPL-2.0+
/*
 * Copyright (C) 2020 Linaro Ltd
 * Author: Sumit Semwal <[email protected]>
 *
 * This driver is for the DSI interface to panels using the NT36672A display driver IC
 * from Novatek.
 * Currently supported are the Tianma FHD+ panels found in some Xiaomi phones, including
 * some variants of the Poco F1 phone.
 *
 * Panels using the Novatek NT37762A IC should add appropriate configuration per-panel and
 * use this driver.
 */

#include <linux/delay.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/of.h>

#include <linux/gpio/consumer.h>
#include <linux/pinctrl/consumer.h>
#include <linux/regulator/consumer.h>

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

#include <video/mipi_display.h>

struct nt36672a_panel_cmd {};

static const char * const nt36672a_regulator_names[] =;

static unsigned long const nt36672a_regulator_enable_loads[] =;

struct nt36672a_panel_desc {};

struct nt36672a_panel {};

static inline struct nt36672a_panel *to_nt36672a_panel(struct drm_panel *panel)
{}

static int nt36672a_send_cmds(struct drm_panel *panel, const struct nt36672a_panel_cmd *cmds,
			      int num)
{}

static int nt36672a_panel_power_off(struct drm_panel *panel)
{}

static int nt36672a_panel_unprepare(struct drm_panel *panel)
{}

static int nt36672a_panel_power_on(struct nt36672a_panel *pinfo)
{}

static int nt36672a_panel_prepare(struct drm_panel *panel)
{}

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

static const struct drm_panel_funcs panel_funcs =;

static const struct nt36672a_panel_cmd tianma_fhd_video_on_cmds_1[] =;

static const struct nt36672a_panel_cmd tianma_fhd_video_on_cmds_2[] =;

static const struct nt36672a_panel_cmd tianma_fhd_video_off_cmds[] =;

static const struct drm_display_mode tianma_fhd_video_panel_default_mode =;

static const struct nt36672a_panel_desc tianma_fhd_video_panel_desc =;

static int nt36672a_panel_add(struct nt36672a_panel *pinfo)
{}

static int nt36672a_panel_probe(struct mipi_dsi_device *dsi)
{}

static void nt36672a_panel_remove(struct mipi_dsi_device *dsi)
{}

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

static struct mipi_dsi_driver nt36672a_panel_driver =;
module_mipi_dsi_driver();

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