fix for changes in driver_register for 2.6.10 and higher versions
This commit is contained in:
parent
2476232664
commit
5e7f03944c
|
@ -1329,7 +1329,7 @@ static int __devinit fritzpci_probe(struct pci_dev *pdev, const struct pci_devic
|
|||
}
|
||||
|
||||
printk(KERN_INFO "mISDN_fcpcipnp: found adapter %s at %s\n",
|
||||
(char *) ent->driver_data, pdev->slot_name);
|
||||
(char *) ent->driver_data, pci_name(pdev));
|
||||
|
||||
card->addr = pci_resource_start(pdev, 1);
|
||||
card->irq = pdev->irq;
|
||||
|
@ -1456,7 +1456,10 @@ static char FritzName[] = "AVM Fritz";
|
|||
|
||||
static int __init Fritz_init(void)
|
||||
{
|
||||
int err, pci_nr_found;
|
||||
int err;
|
||||
#ifdef OLD_PCI_REGISTER_DRIVER
|
||||
int pci_nr_found;
|
||||
#endif
|
||||
|
||||
printk(KERN_INFO "AVM Fritz PCI/PnP driver Rev. %s\n", mISDN_getrev(avm_fritz_rev));
|
||||
#ifdef MODULE
|
||||
|
@ -1476,25 +1479,31 @@ static int __init Fritz_init(void)
|
|||
err = pci_register_driver(&fcpci_driver);
|
||||
if (err < 0)
|
||||
goto out;
|
||||
#ifdef OLD_PCI_REGISTER_DRIVER
|
||||
pci_nr_found = err;
|
||||
#endif
|
||||
#if defined(CONFIG_PNP)
|
||||
err = pnp_register_driver(&fcpnp_driver);
|
||||
if (err < 0)
|
||||
goto out_unregister_pci;
|
||||
#endif
|
||||
#if !defined(CONFIG_HOTPLUG) || defined(MODULE)
|
||||
#ifdef OLD_PCI_REGISTER_DRIVER
|
||||
if (pci_nr_found + err == 0) {
|
||||
err = -ENODEV;
|
||||
goto out_unregister_isapnp;
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
return 0;
|
||||
|
||||
#if !defined(CONFIG_HOTPLUG) || defined(MODULE)
|
||||
#ifdef OLD_PCI_REGISTER_DRIVER
|
||||
out_unregister_isapnp:
|
||||
#if defined(CONFIG_PNP)
|
||||
pnp_unregister_driver(&fcpnp_driver);
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
out_unregister_pci:
|
||||
pci_unregister_driver(&fcpci_driver);
|
||||
|
|
|
@ -812,7 +812,7 @@ static int __devinit sedlpci_probe(struct pci_dev *pdev, const struct pci_device
|
|||
}
|
||||
|
||||
printk(KERN_INFO "mISDN: sedlpci found adapter %s at %s\n",
|
||||
(char *) ent->driver_data, pdev->slot_name);
|
||||
(char *) ent->driver_data, pci_name(pdev));
|
||||
|
||||
card->cfg = pci_resource_start(pdev, 0);
|
||||
card->irq = pdev->irq;
|
||||
|
@ -937,7 +937,10 @@ static struct isapnp_driver sedlpnp_driver = {
|
|||
|
||||
static int __init Speedfax_init(void)
|
||||
{
|
||||
int err, pci_nr_found;
|
||||
int err;
|
||||
#ifdef OLD_PCI_REGISTER_DRIVER
|
||||
int pci_nr_found;
|
||||
#endif
|
||||
|
||||
#ifdef MODULE
|
||||
speedfax.owner = THIS_MODULE;
|
||||
|
@ -960,25 +963,31 @@ static int __init Speedfax_init(void)
|
|||
err = pci_register_driver(&sedlpci_driver);
|
||||
if (err < 0)
|
||||
goto out;
|
||||
#ifdef OLD_PCI_REGISTER_DRIVER
|
||||
pci_nr_found = err;
|
||||
#endif
|
||||
#if defined(CONFIG_PNP)
|
||||
err = pnp_register_driver(&sedlpnp_driver);
|
||||
if (err < 0)
|
||||
goto out_unregister_pci;
|
||||
#endif
|
||||
#ifdef OLD_PCI_REGISTER_DRIVER
|
||||
#if !defined(CONFIG_HOTPLUG) || defined(MODULE)
|
||||
if (pci_nr_found + err == 0) {
|
||||
err = -ENODEV;
|
||||
goto out_unregister_isapnp;
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
return 0;
|
||||
|
||||
#ifdef OLD_PCI_REGISTER_DRIVER
|
||||
#if !defined(CONFIG_HOTPLUG) || defined(MODULE)
|
||||
out_unregister_isapnp:
|
||||
#if defined(CONFIG_PNP)
|
||||
pnp_unregister_driver(&sedlpnp_driver);
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
out_unregister_pci:
|
||||
pci_unregister_driver(&sedlpci_driver);
|
||||
|
|
|
@ -1503,7 +1503,7 @@ static int __devinit w6692_probe(struct pci_dev *pdev, const struct pci_device_i
|
|||
}
|
||||
|
||||
printk(KERN_INFO "mISDN_w6692: found adapter %s at %s\n",
|
||||
(char *) ent->driver_data, pdev->slot_name);
|
||||
(char *) ent->driver_data, pci_name(pdev));
|
||||
|
||||
card->addr = pci_resource_start(pdev, 1);
|
||||
card->irq = pdev->irq;
|
||||
|
@ -1580,11 +1580,13 @@ static int __init w6692_init(void)
|
|||
if (err < 0)
|
||||
goto out;
|
||||
|
||||
#ifdef OLD_PCI_REGISTER_DRIVER
|
||||
if (err == 0) {
|
||||
err = -ENODEV;
|
||||
pci_unregister_driver(&w6692_driver);
|
||||
goto out;
|
||||
}
|
||||
#endif
|
||||
return 0;
|
||||
|
||||
out:
|
||||
|
|
|
@ -84,5 +84,11 @@ typedef struct wait_queue *wait_queue_head_t;
|
|||
#define init_waitqueue_entry(q,p) ((q)->task)=(p)
|
||||
#endif /* COMPAT_HAS_NEW_WAITQ */
|
||||
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10)
|
||||
#define OLD_PCI_REGISTER_DRIVER 1
|
||||
#else
|
||||
#undef OLD_PCI_REGISTER_DRIVER
|
||||
#endif
|
||||
|
||||
#endif /* __KERNEL__ */
|
||||
#endif /* _LINUX_ISDN_COMPAT_H */
|
||||
|
|
Loading…
Reference in New Issue