#include <linux/module.h>
#include <linux/mempool.h>
#include <linux/string.h>
#include <linux/slab.h>
#include <linux/errno.h>
#include <linux/init.h>
#include <linux/pci.h>
#include <linux/skbuff.h>
#include <linux/interrupt.h>
#include <linux/spinlock.h>
#include <linux/workqueue.h>
#include <scsi/scsi_host.h>
#include <scsi/scsi_tcq.h>
#include "snic.h"
#include "snic_fwint.h"
#define PCI_DEVICE_ID_CISCO_SNIC …
static struct pci_device_id snic_id_table[] = …;
unsigned int snic_log_level = …;
module_param(snic_log_level, int, S_IRUGO|S_IWUSR);
MODULE_PARM_DESC(…) …;
#ifdef CONFIG_SCSI_SNIC_DEBUG_FS
unsigned int snic_trace_max_pages = …;
module_param(snic_trace_max_pages, uint, S_IRUGO|S_IWUSR);
MODULE_PARM_DESC(…) …;
#endif
unsigned int snic_max_qdepth = …;
module_param(snic_max_qdepth, uint, S_IRUGO | S_IWUSR);
MODULE_PARM_DESC(…) …;
static int
snic_slave_alloc(struct scsi_device *sdev)
{ … }
static int
snic_slave_configure(struct scsi_device *sdev)
{ … }
static int
snic_change_queue_depth(struct scsi_device *sdev, int qdepth)
{ … }
static const struct scsi_host_template snic_host_template = …;
void
snic_handle_link_event(struct snic *snic)
{ … }
static int
snic_notify_set(struct snic *snic)
{ … }
static int
snic_dev_wait(struct vnic_dev *vdev,
int (*start)(struct vnic_dev *, int),
int (*finished)(struct vnic_dev *, int *),
int arg)
{ … }
static int
snic_cleanup(struct snic *snic)
{ … }
static void
snic_iounmap(struct snic *snic)
{ … }
static int
snic_vdev_open_done(struct vnic_dev *vdev, int *done)
{ … }
static int
snic_add_host(struct Scsi_Host *shost, struct pci_dev *pdev)
{ … }
static void
snic_del_host(struct Scsi_Host *shost)
{ … }
int
snic_get_state(struct snic *snic)
{ … }
void
snic_set_state(struct snic *snic, enum snic_state state)
{ … }
static int
snic_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
{ … }
static void
snic_remove(struct pci_dev *pdev)
{ … }
struct snic_global *snic_glob;
static int
snic_global_data_init(void)
{ … }
static void
snic_global_data_cleanup(void)
{ … }
static struct pci_driver snic_driver = …;
static int __init
snic_init_module(void)
{ … }
static void __exit
snic_cleanup_module(void)
{ … }
module_init(…) …;
module_exit(snic_cleanup_module);
MODULE_LICENSE(…) …;
MODULE_DESCRIPTION(…);
MODULE_VERSION(…);
MODULE_DEVICE_TABLE(pci, snic_id_table);
MODULE_AUTHOR(…) …;