#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/pci.h>
#include <linux/pgtable.h>
#include <asm/io.h>
#include <linux/ioport.h>
#include <asm/page.h>
#include <linux/types.h>
#include <linux/interrupt.h>
#include <linux/kmod.h>
#include <linux/vmalloc.h>
#include <linux/init.h>
#include <media/dmxdev.h>
#include <media/dvbdev.h>
#include "bt878.h"
#include "dst_priv.h"
static unsigned int bt878_verbose = …;
static unsigned int bt878_debug;
module_param_named(verbose, bt878_verbose, int, 0444);
MODULE_PARM_DESC(…) …;
module_param_named(debug, bt878_debug, int, 0644);
MODULE_PARM_DESC(…) …;
int bt878_num;
struct bt878 bt878[BT878_MAX];
EXPORT_SYMBOL(…);
EXPORT_SYMBOL(…);
#define btwrite(dat,adr) …
#define btread(adr) …
#define btand(dat,adr) …
#define btor(dat,adr) …
#define btaor(dat,mask,adr) …
#if defined(dprintk)
#undef dprintk
#endif
#define dprintk(fmt, arg...) …
static void bt878_mem_free(struct bt878 *bt)
{ … }
static int bt878_mem_alloc(struct bt878 *bt)
{ … }
#define RISC_WRITE …
#define RISC_JUMP …
#define RISC_SYNC …
#define RISC_WR_SOL …
#define RISC_WR_EOL …
#define RISC_IRQ …
#define RISC_STATUS(status) …
#define RISC_SYNC_RESYNC …
#define RISC_SYNC_FM1 …
#define RISC_SYNC_VRO …
#define RISC_FLUSH() …
#define RISC_INSTR(instr) …
static int bt878_make_risc(struct bt878 *bt)
{ … }
static void bt878_risc_program(struct bt878 *bt, u32 op_sync_orin)
{ … }
void bt878_start(struct bt878 *bt, u32 controlreg, u32 op_sync_orin,
u32 irq_err_ignore)
{ … }
void bt878_stop(struct bt878 *bt)
{ … }
EXPORT_SYMBOL(…);
EXPORT_SYMBOL(…);
static irqreturn_t bt878_irq(int irq, void *dev_id)
{ … }
int
bt878_device_control(struct bt878 *bt, unsigned int cmd, union dst_gpio_packet *mp)
{ … }
EXPORT_SYMBOL(…);
#define BROOKTREE_878_DEVICE(vend, dev, name) …
static const struct pci_device_id bt878_pci_tbl[] = …;
MODULE_DEVICE_TABLE(pci, bt878_pci_tbl);
static const char * card_name(const struct pci_device_id *id)
{ … }
static int bt878_probe(struct pci_dev *dev, const struct pci_device_id *pci_id)
{ … }
static void bt878_remove(struct pci_dev *pci_dev)
{ … }
static struct pci_driver bt878_pci_driver = …;
static int __init bt878_init_module(void)
{ … }
static void __exit bt878_cleanup_module(void)
{ … }
module_init(…) …;
module_exit(bt878_cleanup_module);
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;