#define pr_fmt(fmt) …
#include <linux/module.h>
#include <linux/init.h>
#include <linux/interrupt.h>
#include <linux/delay.h>
#include <linux/slab.h>
#include <linux/poll.h>
#include <linux/io.h>
#include <linux/pci.h>
#include <linux/pci_ids.h>
#include <linux/timer.h>
#include <linux/i2c.h>
#include <linux/swab.h>
#include <linux/vmalloc.h>
#include "ddbridge.h"
#include "ddbridge-i2c.h"
#include "ddbridge-regs.h"
#include "ddbridge-hw.h"
#include "ddbridge-io.h"
#ifdef CONFIG_PCI_MSI
#ifdef CONFIG_DVB_DDBRIDGE_MSIENABLE
static int msi = …;
#else
static int msi;
#endif
module_param(msi, int, 0444);
#ifdef CONFIG_DVB_DDBRIDGE_MSIENABLE
MODULE_PARM_DESC(…) …;
#else
MODULE_PARM_DESC(msi, "Control MSI interrupts: 0-disable (default), 1-enable");
#endif
#endif
static void ddb_irq_disable(struct ddb *dev)
{ … }
static void ddb_msi_exit(struct ddb *dev)
{ … }
static void ddb_irq_exit(struct ddb *dev)
{ … }
static void ddb_remove(struct pci_dev *pdev)
{ … }
#ifdef CONFIG_PCI_MSI
static void ddb_irq_msi(struct ddb *dev, int nr)
{ … }
#endif
static int ddb_irq_init(struct ddb *dev)
{ … }
static int ddb_probe(struct pci_dev *pdev,
const struct pci_device_id *id)
{ … }
#define DDB_DEVICE_ANY(_device) …
static const struct pci_device_id ddb_id_table[] = …;
MODULE_DEVICE_TABLE(pci, ddb_id_table);
static struct pci_driver ddb_pci_driver = …;
static __init int module_init_ddbridge(void)
{ … }
static __exit void module_exit_ddbridge(void)
{ … }
module_init(…) …;
module_exit(module_exit_ddbridge);
MODULE_DESCRIPTION(…) …;
MODULE_AUTHOR(…) …;
MODULE_LICENSE(…) …;
MODULE_VERSION(…);