linux/drivers/gpu/drm/omapdrm/dss/hdmi5.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * HDMI driver for OMAP5
 *
 * Copyright (C) 2014 Texas Instruments Incorporated - https://www.ti.com/
 *
 * Authors:
 *	Yong Zhi
 *	Mythri pk
 *	Archit Taneja <[email protected]>
 *	Tomi Valkeinen <[email protected]>
 */

#define DSS_SUBSYS_NAME

#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/err.h>
#include <linux/io.h>
#include <linux/interrupt.h>
#include <linux/mutex.h>
#include <linux/delay.h>
#include <linux/string.h>
#include <linux/platform_device.h>
#include <linux/pm_runtime.h>
#include <linux/clk.h>
#include <linux/regulator/consumer.h>
#include <linux/component.h>
#include <linux/of.h>
#include <linux/of_graph.h>
#include <sound/omap-hdmi-audio.h>

#include <drm/drm_atomic.h>
#include <drm/drm_atomic_state_helper.h>
#include <drm/drm_edid.h>

#include "omapdss.h"
#include "hdmi5_core.h"
#include "dss.h"

static int hdmi_runtime_get(struct omap_hdmi *hdmi)
{}

static void hdmi_runtime_put(struct omap_hdmi *hdmi)
{}

static irqreturn_t hdmi_irq_handler(int irq, void *data)
{}

static int hdmi_power_on_core(struct omap_hdmi *hdmi)
{}

static void hdmi_power_off_core(struct omap_hdmi *hdmi)
{}

static int hdmi_power_on_full(struct omap_hdmi *hdmi)
{}

static void hdmi_power_off_full(struct omap_hdmi *hdmi)
{}

static int hdmi_dump_regs(struct seq_file *s, void *p)
{}

static void hdmi_start_audio_stream(struct omap_hdmi *hd)
{}

static void hdmi_stop_audio_stream(struct omap_hdmi *hd)
{}

static int hdmi_core_enable(struct omap_hdmi *hdmi)
{}

static void hdmi_core_disable(struct omap_hdmi *hdmi)
{}

/* -----------------------------------------------------------------------------
 * DRM Bridge Operations
 */

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

static void hdmi5_bridge_mode_set(struct drm_bridge *bridge,
				  const struct drm_display_mode *mode,
				  const struct drm_display_mode *adjusted_mode)
{}

static void hdmi5_bridge_enable(struct drm_bridge *bridge,
				struct drm_bridge_state *bridge_state)
{}

static void hdmi5_bridge_disable(struct drm_bridge *bridge,
				 struct drm_bridge_state *bridge_state)
{}

static const struct drm_edid *hdmi5_bridge_edid_read(struct drm_bridge *bridge,
						     struct drm_connector *connector)
{}

static const struct drm_bridge_funcs hdmi5_bridge_funcs =;

static void hdmi5_bridge_init(struct omap_hdmi *hdmi)
{}

static void hdmi5_bridge_cleanup(struct omap_hdmi *hdmi)
{}

/* -----------------------------------------------------------------------------
 * Audio Callbacks
 */

static int hdmi_audio_startup(struct device *dev,
			      void (*abort_cb)(struct device *dev))
{}

static int hdmi_audio_shutdown(struct device *dev)
{}

static int hdmi_audio_start(struct device *dev)
{}

static void hdmi_audio_stop(struct device *dev)
{}

static int hdmi_audio_config(struct device *dev,
			     struct omap_dss_audio *dss_audio)
{}

static const struct omap_hdmi_audio_ops hdmi_audio_ops =;

static int hdmi_audio_register(struct omap_hdmi *hdmi)
{}

/* -----------------------------------------------------------------------------
 * Component Bind & Unbind
 */

static int hdmi5_bind(struct device *dev, struct device *master, void *data)
{}

static void hdmi5_unbind(struct device *dev, struct device *master, void *data)
{}

static const struct component_ops hdmi5_component_ops =;

/* -----------------------------------------------------------------------------
 * Probe & Remove, Suspend & Resume
 */

static int hdmi5_init_output(struct omap_hdmi *hdmi)
{}

static void hdmi5_uninit_output(struct omap_hdmi *hdmi)
{}

static int hdmi5_probe_of(struct omap_hdmi *hdmi)
{}

static int hdmi5_probe(struct platform_device *pdev)
{}

static void hdmi5_remove(struct platform_device *pdev)
{}

static const struct of_device_id hdmi_of_match[] =;

struct platform_driver omapdss_hdmi5hw_driver =;