#include <linux/device.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/slab.h>
#include <linux/i2c.h>
#include <linux/nfc.h>
#include <linux/netdevice.h>
#include <linux/interrupt.h>
#include <net/nfc/nfc.h>
#include "pn533.h"
#define VERSION …
#define PN533_I2C_DRIVER_NAME …
struct pn533_i2c_phy { … };
static int pn533_i2c_send_ack(struct pn533 *dev, gfp_t flags)
{ … }
static int pn533_i2c_send_frame(struct pn533 *dev,
struct sk_buff *out)
{ … }
static void pn533_i2c_abort_cmd(struct pn533 *dev, gfp_t flags)
{ … }
static int pn533_i2c_read(struct pn533_i2c_phy *phy, struct sk_buff **skb)
{ … }
static irqreturn_t pn533_i2c_irq_thread_fn(int irq, void *data)
{ … }
static const struct pn533_phy_ops i2c_phy_ops = …;
static int pn533_i2c_probe(struct i2c_client *client)
{ … }
static void pn533_i2c_remove(struct i2c_client *client)
{ … }
static const struct of_device_id of_pn533_i2c_match[] __maybe_unused = …;
MODULE_DEVICE_TABLE(of, of_pn533_i2c_match);
static const struct i2c_device_id pn533_i2c_id_table[] = …;
MODULE_DEVICE_TABLE(i2c, pn533_i2c_id_table);
static struct i2c_driver pn533_i2c_driver = …;
module_i2c_driver(…) …;
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_VERSION(…);
MODULE_LICENSE(…) …;