#include <linux/i2c.h>
#include <linux/interrupt.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/types.h>
#include <linux/of_device.h>
#include "stmpe.h"
static int i2c_reg_read(struct stmpe *stmpe, u8 reg)
{ … }
static int i2c_reg_write(struct stmpe *stmpe, u8 reg, u8 val)
{ … }
static int i2c_block_read(struct stmpe *stmpe, u8 reg, u8 length, u8 *values)
{ … }
static int i2c_block_write(struct stmpe *stmpe, u8 reg, u8 length,
const u8 *values)
{ … }
static struct stmpe_client_info i2c_ci = …;
static const struct of_device_id stmpe_of_match[] = …;
MODULE_DEVICE_TABLE(of, stmpe_of_match);
static int
stmpe_i2c_probe(struct i2c_client *i2c)
{ … }
static void stmpe_i2c_remove(struct i2c_client *i2c)
{ … }
static const struct i2c_device_id stmpe_i2c_id[] = …;
MODULE_DEVICE_TABLE(i2c, stmpe_i2c_id);
static struct i2c_driver stmpe_i2c_driver = …;
static int __init stmpe_init(void)
{ … }
subsys_initcall(stmpe_init);
static void __exit stmpe_exit(void)
{ … }
module_exit(stmpe_exit);
MODULE_DESCRIPTION(…) …;
MODULE_AUTHOR(…) …;