diff --git a/drivers/media/pci/ddbridge/ddbridge-core.c b/drivers/media/pci/ddbridge/ddbridge-core.c index c80e1d8498d3..5f6367fee586 100644 --- a/drivers/media/pci/ddbridge/ddbridge-core.c +++ b/drivers/media/pci/ddbridge/ddbridge-core.c @@ -58,10 +58,21 @@ #define DDB_MAX_ADAPTER 64 +/****************************************************************************/ + DVB_DEFINE_MOD_OPT_ADAPTER_NR(adapter_nr); +static int adapter_alloc; +module_param(adapter_alloc, int, 0444); +MODULE_PARM_DESC(adapter_alloc, + "0-one adapter per io, 1-one per tab with io, 2-one per tab, 3-one for all"); + +/****************************************************************************/ + DEFINE_MUTEX(redirect_lock); +struct workqueue_struct *ddb_wq; + static struct ddb *ddbs[DDB_MAX_ADAPTER]; /****************************************************************************/ @@ -3612,3 +3623,10 @@ int ddb_init(struct ddb *dev) dev_err(dev->dev, "fail1\n"); return -1; } + +void ddb_unmap(struct ddb *dev) +{ + if (dev->regs) + iounmap(dev->regs); + vfree(dev); +} diff --git a/drivers/media/pci/ddbridge/ddbridge-main.c b/drivers/media/pci/ddbridge/ddbridge-main.c index ec608c496b69..ccac7fe31336 100644 --- a/drivers/media/pci/ddbridge/ddbridge-main.c +++ b/drivers/media/pci/ddbridge/ddbridge-main.c @@ -41,16 +41,11 @@ /****************************************************************************/ /* module parameters */ -int adapter_alloc; -module_param(adapter_alloc, int, 0444); -MODULE_PARM_DESC(adapter_alloc, - "0-one adapter per io, 1-one per tab with io, 2-one per tab, 3-one for all"); - #ifdef CONFIG_PCI_MSI #ifdef CONFIG_DVB_DDBRIDGE_MSIENABLE -int msi = 1; +static int msi = 1; #else -int msi; +static int msi; #endif module_param(msi, int, 0444); #ifdef CONFIG_DVB_DDBRIDGE_MSIENABLE @@ -89,19 +84,8 @@ module_param(stv0910_single, int, 0444); MODULE_PARM_DESC(stv0910_single, "use stv0910 cards as single demods"); /****************************************************************************/ - -struct workqueue_struct *ddb_wq; - /****************************************************************************/ /****************************************************************************/ -/****************************************************************************/ - -static void ddb_unmap(struct ddb *dev) -{ - if (dev->regs) - iounmap(dev->regs); - vfree(dev); -} static void ddb_irq_disable(struct ddb *dev) { diff --git a/drivers/media/pci/ddbridge/ddbridge.h b/drivers/media/pci/ddbridge/ddbridge.h index 60fe5ec93f3d..d890400dc1c3 100644 --- a/drivers/media/pci/ddbridge/ddbridge.h +++ b/drivers/media/pci/ddbridge/ddbridge.h @@ -369,8 +369,6 @@ int ddbridge_flashread(struct ddb *dev, u32 link, u8 *buf, u32 addr, u32 len); /****************************************************************************/ /* ddbridge-main.c (modparams) */ -extern int adapter_alloc; -extern int msi; extern int ci_bitrate; extern int ts_loop; extern int xo2_speed; @@ -394,5 +392,6 @@ int ddb_device_create(struct ddb *dev); int ddb_class_create(void); void ddb_class_destroy(void); int ddb_init(struct ddb *dev); +void ddb_unmap(struct ddb *dev); #endif /* DDBRIDGE_H */