linux/drivers/fsi/fsi-master-i2cr.c

// SPDX-License-Identifier: GPL-2.0
/* Copyright (C) IBM Corporation 2023 */

#include <linux/device.h>
#include <linux/fsi.h>
#include <linux/i2c.h>
#include <linux/module.h>
#include <linux/mod_devicetable.h>
#include <linux/mutex.h>

#include "fsi-master-i2cr.h"

#define CREATE_TRACE_POINTS
#include <trace/events/fsi_master_i2cr.h>

#define I2CR_ADDRESS_CFAM(a)
#define I2CR_INITIAL_PARITY

#define I2CR_STATUS_CMD
#define I2CR_STATUS_ERR
#define I2CR_ERROR_CMD
#define I2CR_LOG_CMD

static const u8 i2cr_cfam[] =;

static bool i2cr_check_parity32(u32 v, bool parity)
{}

static bool i2cr_check_parity64(u64 v)
{}

static u32 i2cr_get_command(u32 address, bool parity)
{}

static int i2cr_transfer(struct i2c_client *client, u32 command, u64 *data)
{}

static int i2cr_check_status(struct i2c_client *client)
{}

int fsi_master_i2cr_read(struct fsi_master_i2cr *i2cr, u32 addr, u64 *data)
{}
EXPORT_SYMBOL_GPL();

int fsi_master_i2cr_write(struct fsi_master_i2cr *i2cr, u32 addr, u64 data)
{}
EXPORT_SYMBOL_GPL();

static int i2cr_read(struct fsi_master *master, int link, uint8_t id, uint32_t addr, void *val,
		     size_t size)
{}

static int i2cr_write(struct fsi_master *master, int link, uint8_t id, uint32_t addr,
		      const void *val, size_t size)
{}

static void i2cr_release(struct device *dev)
{}

static int i2cr_probe(struct i2c_client *client)
{}

static void i2cr_remove(struct i2c_client *client)
{}

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

static struct i2c_driver i2cr_driver =;

module_i2c_driver()

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