#include <linux/sizes.h>
#include <linux/delay.h>
#include <linux/init.h>
#include <linux/media.h>
#include <linux/module.h>
#include <linux/slab.h>
#include <linux/spi/spi.h>
#include "s5c73m3.h"
#define S5C73M3_SPI_DRV_NAME …
static const struct of_device_id s5c73m3_spi_ids[] = …;
MODULE_DEVICE_TABLE(of, s5c73m3_spi_ids);
enum spi_direction { … };
static int spi_xmit(struct spi_device *spi_dev, void *addr, const int len,
enum spi_direction dir)
{ … }
int s5c73m3_spi_write(struct s5c73m3 *state, const void *addr,
const unsigned int len, const unsigned int tx_size)
{ … }
int s5c73m3_spi_read(struct s5c73m3 *state, void *addr,
const unsigned int len, const unsigned int tx_size)
{ … }
static int s5c73m3_spi_probe(struct spi_device *spi)
{ … }
int s5c73m3_register_spi_driver(struct s5c73m3 *state)
{ … }
void s5c73m3_unregister_spi_driver(struct s5c73m3 *state)
{ … }