diff --git a/ddbridge/ddbridge-core.c b/ddbridge/ddbridge-core.c index b94e066..8d35228 100644 --- a/ddbridge/ddbridge-core.c +++ b/ddbridge/ddbridge-core.c @@ -26,6 +26,20 @@ DEFINE_MUTEX(redirect_lock); +static struct workqueue_struct *ddb_wq; + +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"); + +#ifdef CONFIG_PCI_MSI +static int msi = 1; +module_param(msi, int, 0444); +MODULE_PARM_DESC(msi, + " Control MSI interrupts: 0-disable, 1-enable (default)"); +#endif + static int ci_bitrate = 70000; module_param(ci_bitrate, int, 0444); MODULE_PARM_DESC(ci_bitrate, " Bitrate in KHz for output to CI."); @@ -5480,3 +5494,11 @@ static void ddb_reset_ios(struct ddb *dev) rm->output->base + i * rm->output->size); usleep_range(5000, 6000); } + +static void ddb_unmap(struct ddb *dev) +{ + if (dev->regs) + iounmap(dev->regs); + vfree(dev); +} + diff --git a/ddbridge/ddbridge.c b/ddbridge/ddbridge.c index 94e1783..bd25af8 100644 --- a/ddbridge/ddbridge.c +++ b/ddbridge/ddbridge.c @@ -29,34 +29,12 @@ #include "ddbridge.h" #include "ddbridge-regs.h" - -static struct workqueue_struct *ddb_wq; - -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"); - -#ifdef CONFIG_PCI_MSI -static int msi = 1; -module_param(msi, int, 0444); -MODULE_PARM_DESC(msi, - " Control MSI interrupts: 0-disable, 1-enable (default)"); -#endif - #include "ddbridge-core.c" /****************************************************************************/ /****************************************************************************/ /****************************************************************************/ -static void ddb_unmap(struct ddb *dev) -{ - if (dev->regs) - iounmap(dev->regs); - vfree(dev); -} - static void __devexit ddb_irq_disable(struct ddb *dev) { if (dev->link[0].info->regmap->irq_version == 2) { diff --git a/ddbridge/octonet.c b/ddbridge/octonet.c index 0d53108..1714d8d 100644 --- a/ddbridge/octonet.c +++ b/ddbridge/octonet.c @@ -125,7 +125,7 @@ static int __exit octonet_remove(struct platform_device *pdev) free_irq(platform_get_irq(dev->pfdev, 0), dev); ddb_ports_release(dev); - octonet_unmap(dev); + ddb_unmap(dev); platform_set_drvdata(pdev, 0); return 0; } @@ -203,7 +203,7 @@ fail: dev_err(dev->dev, "fail\n"); ddbwritel(dev, 0, ETHER_CONTROL); ddbwritel(dev, 0, INTERRUPT_ENABLE); - octonet_unmap(dev); + ddb_unmap(dev); platform_set_drvdata(pdev, 0); return -1; }