linux/drivers/gpu/drm/bridge/microchip-lvds.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * Copyright (C) 2023 Microchip Technology Inc. and its subsidiaries
 *
 * Author: Manikandan Muralidharan <[email protected]>
 * Author: Dharma Balasubiramani <[email protected]>
 *
 */

#include <linux/clk.h>
#include <linux/component.h>
#include <linux/delay.h>
#include <linux/jiffies.h>
#include <linux/mfd/syscon.h>
#include <linux/of_graph.h>
#include <linux/pinctrl/devinfo.h>
#include <linux/phy/phy.h>
#include <linux/platform_device.h>
#include <linux/pm_runtime.h>
#include <linux/regmap.h>
#include <linux/reset.h>

#include <drm/drm_atomic_helper.h>
#include <drm/drm_bridge.h>
#include <drm/drm_of.h>
#include <drm/drm_panel.h>
#include <drm/drm_print.h>
#include <drm/drm_probe_helper.h>
#include <drm/drm_simple_kms_helper.h>

#define LVDS_POLL_TIMEOUT_MS

/* LVDSC register offsets */
#define LVDSC_CR
#define LVDSC_CFGR
#define LVDSC_SR
#define LVDSC_WPMR

/* Bitfields in LVDSC_CR (Control Register) */
#define LVDSC_CR_SER_EN

/* Bitfields in LVDSC_CFGR (Configuration Register) */
#define LVDSC_CFGR_PIXSIZE_24BITS
#define LVDSC_CFGR_DEN_POL_HIGH
#define LVDSC_CFGR_DC_UNBALANCED
#define LVDSC_CFGR_MAPPING_JEIDA

/*Bitfields in LVDSC_SR */
#define LVDSC_SR_CS

/* Bitfields in LVDSC_WPMR (Write Protection Mode Register) */
#define LVDSC_WPMR_WPKEY_MASK
#define LVDSC_WPMR_WPKEY_PSSWD

struct mchp_lvds {};

static inline struct mchp_lvds *bridge_to_lvds(struct drm_bridge *bridge)
{}

static inline u32 lvds_readl(struct mchp_lvds *lvds, u32 offset)
{}

static inline void lvds_writel(struct mchp_lvds *lvds, u32 offset, u32 val)
{}

static void lvds_serialiser_on(struct mchp_lvds *lvds)
{}

static int mchp_lvds_attach(struct drm_bridge *bridge,
			    enum drm_bridge_attach_flags flags)
{}

static void mchp_lvds_enable(struct drm_bridge *bridge)
{}

static void mchp_lvds_disable(struct drm_bridge *bridge)
{}

static const struct drm_bridge_funcs mchp_lvds_bridge_funcs =;

static int mchp_lvds_probe(struct platform_device *pdev)
{}

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

static struct platform_driver mchp_lvds_driver =;
module_platform_driver();

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