linux/drivers/media/cec/platform/s5p/s5p_cec.c

// SPDX-License-Identifier: GPL-2.0-or-later
/* drivers/media/platform/s5p-cec/s5p_cec.c
 *
 * Samsung S5P CEC driver
 *
 * Copyright (c) 2014 Samsung Electronics Co., Ltd.
 *
 * This driver is based on the "cec interface driver for exynos soc" by
 * SangPil Moon.
 */

#include <linux/clk.h>
#include <linux/interrupt.h>
#include <linux/kernel.h>
#include <linux/mfd/syscon.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/of_platform.h>
#include <linux/platform_device.h>
#include <linux/pm_runtime.h>
#include <linux/timer.h>
#include <linux/workqueue.h>
#include <media/cec.h>
#include <media/cec-notifier.h>

#include "exynos_hdmi_cec.h"
#include "regs-cec.h"
#include "s5p_cec.h"

#define CEC_NAME

static int debug;
module_param(debug, int, 0644);
MODULE_PARM_DESC();

static int s5p_cec_adap_enable(struct cec_adapter *adap, bool enable)
{}

static int s5p_cec_adap_log_addr(struct cec_adapter *adap, u8 addr)
{}

static int s5p_cec_adap_transmit(struct cec_adapter *adap, u8 attempts,
				 u32 signal_free_time, struct cec_msg *msg)
{}

static irqreturn_t s5p_cec_irq_handler(int irq, void *priv)
{}

static irqreturn_t s5p_cec_irq_handler_thread(int irq, void *priv)
{}

static const struct cec_adap_ops s5p_cec_adap_ops =;

static int s5p_cec_probe(struct platform_device *pdev)
{}

static void s5p_cec_remove(struct platform_device *pdev)
{}

static int __maybe_unused s5p_cec_runtime_suspend(struct device *dev)
{}

static int __maybe_unused s5p_cec_runtime_resume(struct device *dev)
{}

static const struct dev_pm_ops s5p_cec_pm_ops =;

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

static struct platform_driver s5p_cec_pdrv =;

module_platform_driver();

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