linux/drivers/i2c/busses/i2c-uniphier.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * Copyright (C) 2015 Masahiro Yamada <[email protected]>
 */

#include <linux/clk.h>
#include <linux/i2c.h>
#include <linux/interrupt.h>
#include <linux/io.h>
#include <linux/module.h>
#include <linux/platform_device.h>

#define UNIPHIER_I2C_DTRM
#define UNIPHIER_I2C_DTRM_IRQEN
#define UNIPHIER_I2C_DTRM_STA
#define UNIPHIER_I2C_DTRM_STO
#define UNIPHIER_I2C_DTRM_NACK
#define UNIPHIER_I2C_DTRM_RD
#define UNIPHIER_I2C_DREC
#define UNIPHIER_I2C_DREC_MST
#define UNIPHIER_I2C_DREC_TX
#define UNIPHIER_I2C_DREC_STS
#define UNIPHIER_I2C_DREC_LRB
#define UNIPHIER_I2C_DREC_LAB
#define UNIPHIER_I2C_DREC_BBN
#define UNIPHIER_I2C_MYAD
#define UNIPHIER_I2C_CLK
#define UNIPHIER_I2C_BRST
#define UNIPHIER_I2C_BRST_FOEN
#define UNIPHIER_I2C_BRST_RSCL
#define UNIPHIER_I2C_HOLD
#define UNIPHIER_I2C_BSTS
#define UNIPHIER_I2C_BSTS_SDA
#define UNIPHIER_I2C_BSTS_SCL
#define UNIPHIER_I2C_NOISE
#define UNIPHIER_I2C_SETUP

struct uniphier_i2c_priv {};

static irqreturn_t uniphier_i2c_interrupt(int irq, void *dev_id)
{}

static int uniphier_i2c_xfer_byte(struct i2c_adapter *adap, u32 txdata,
				  u32 *rxdatap)
{}

static int uniphier_i2c_send_byte(struct i2c_adapter *adap, u32 txdata)
{}

static int uniphier_i2c_tx(struct i2c_adapter *adap, u16 addr, u16 len,
			   const u8 *buf)
{}

static int uniphier_i2c_rx(struct i2c_adapter *adap, u16 addr, u16 len,
			   u8 *buf)
{}

static int uniphier_i2c_stop(struct i2c_adapter *adap)
{}

static int uniphier_i2c_xfer_one(struct i2c_adapter *adap,
				 struct i2c_msg *msg, bool stop)
{}

static int uniphier_i2c_check_bus_busy(struct i2c_adapter *adap)
{}

static int uniphier_i2c_xfer(struct i2c_adapter *adap, struct i2c_msg *msgs, int num)
{}

static u32 uniphier_i2c_functionality(struct i2c_adapter *adap)
{}

static const struct i2c_algorithm uniphier_i2c_algo =;

static void uniphier_i2c_reset(struct uniphier_i2c_priv *priv, bool reset_on)
{}

static int uniphier_i2c_get_scl(struct i2c_adapter *adap)
{}

static void uniphier_i2c_set_scl(struct i2c_adapter *adap, int val)
{}

static int uniphier_i2c_get_sda(struct i2c_adapter *adap)
{}

static void uniphier_i2c_unprepare_recovery(struct i2c_adapter *adap)
{}

static struct i2c_bus_recovery_info uniphier_i2c_bus_recovery_info =;

static void uniphier_i2c_hw_init(struct uniphier_i2c_priv *priv)
{}

static int uniphier_i2c_probe(struct platform_device *pdev)
{}

static void uniphier_i2c_remove(struct platform_device *pdev)
{}

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

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

static const struct dev_pm_ops uniphier_i2c_pm_ops =;

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

static struct platform_driver uniphier_i2c_drv =;
module_platform_driver();

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