summaryrefslogtreecommitdiff
path: root/drivers/dahdi/wcte12xp
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/dahdi/wcte12xp')
-rw-r--r--drivers/dahdi/wcte12xp/base.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/drivers/dahdi/wcte12xp/base.c b/drivers/dahdi/wcte12xp/base.c
index 3139484..a524482 100644
--- a/drivers/dahdi/wcte12xp/base.c
+++ b/drivers/dahdi/wcte12xp/base.c
@@ -1666,8 +1666,6 @@ static int t1_software_init(struct t1 *wc)
return -1;
}
- set_bit(INITIALIZED, &wc->bit_flags);
-
return 0;
}
@@ -2454,8 +2452,16 @@ static int __devinit te12xp_init_one(struct pci_dev *pdev, const struct pci_devi
}
}
+ res = t1_software_init(wc);
+ if (res) {
+ voicebus_release(&wc->vb);
+ free_wc(wc);
+ return res;
+ }
+
+ set_bit(INITIALIZED, &wc->bit_flags);
mod_timer(&wc->timer, jiffies + HZ/5);
- t1_software_init(wc);
+
t1_info(wc, "Found a %s\n", wc->variety);
voicebus_unlock_latency(&wc->vb);