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

// SPDX-License-Identifier: GPL-2.0
/*
 * drivers/i2c/busses/i2c-mt7621.c
 *
 * Copyright (C) 2013 Steven Liu <[email protected]>
 * Copyright (C) 2016 Michael Lee <[email protected]>
 * Copyright (C) 2018 Jan Breuer <[email protected]>
 *
 * Improve driver for i2cdetect from i2c-tools to detect i2c devices on the bus.
 * (C) 2014 Sittisak <[email protected]>
 */

#include <linux/clk.h>
#include <linux/delay.h>
#include <linux/i2c.h>
#include <linux/io.h>
#include <linux/iopoll.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/platform_device.h>
#include <linux/reset.h>

#define REG_SM0CFG2_REG
#define REG_SM0CTL0_REG
#define REG_SM0CTL1_REG
#define REG_SM0D0_REG
#define REG_SM0D1_REG
#define REG_PINTEN_REG
#define REG_PINTST_REG
#define REG_PINTCL_REG

/* REG_SM0CFG2_REG */
#define SM0CFG2_IS_AUTOMODE

/* REG_SM0CTL0_REG */
#define SM0CTL0_ODRAIN
#define SM0CTL0_CLK_DIV_MASK
#define SM0CTL0_CLK_DIV_MAX
#define SM0CTL0_CS_STATUS
#define SM0CTL0_SCL_STATE
#define SM0CTL0_SDA_STATE
#define SM0CTL0_EN
#define SM0CTL0_SCL_STRETCH

/* REG_SM0CTL1_REG */
#define SM0CTL1_ACK_MASK
#define SM0CTL1_PGLEN_MASK
#define SM0CTL1_PGLEN(x)
#define SM0CTL1_READ
#define SM0CTL1_READ_LAST
#define SM0CTL1_STOP
#define SM0CTL1_WRITE
#define SM0CTL1_START
#define SM0CTL1_MODE_MASK
#define SM0CTL1_TRI

/* timeout waiting for I2C devices to respond */
#define TIMEOUT_MS

struct mtk_i2c {};

static int mtk_i2c_wait_idle(struct mtk_i2c *i2c)
{}

static void mtk_i2c_reset(struct mtk_i2c *i2c)
{}

static void mtk_i2c_dump_reg(struct mtk_i2c *i2c)
{}

static int mtk_i2c_check_ack(struct mtk_i2c *i2c, u32 expected)
{}

static int mtk_i2c_start(struct mtk_i2c *i2c)
{}

static int mtk_i2c_stop(struct mtk_i2c *i2c)
{}

static int mtk_i2c_cmd(struct mtk_i2c *i2c, u32 cmd, int page_len)
{}

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

static u32 mtk_i2c_func(struct i2c_adapter *a)
{}

static const struct i2c_algorithm mtk_i2c_algo =;

static const struct of_device_id i2c_mtk_dt_ids[] =;

MODULE_DEVICE_TABLE(of, i2c_mtk_dt_ids);

static void mtk_i2c_init(struct mtk_i2c *i2c)
{}

static int mtk_i2c_probe(struct platform_device *pdev)
{}

static void mtk_i2c_remove(struct platform_device *pdev)
{}

static struct platform_driver mtk_i2c_driver =;

module_platform_driver();

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