summaryrefslogtreecommitdiff
path: root/drivers/dahdi/xpp/xpp_dahdi.c
diff options
context:
space:
mode:
authorTzafrir Cohen <tzafrir.cohen@xorcom.com>2009-11-04 21:45:55 +0000
committerTzafrir Cohen <tzafrir.cohen@xorcom.com>2009-11-04 21:45:55 +0000
commit303b8aadf67449b6633bac29135e2e8134fb8a97 (patch)
treeb4817a27c4f917e93958f67b65c3dfb3fc17d48c /drivers/dahdi/xpp/xpp_dahdi.c
parent8326c1faa72044e72fd4095cd9f8eec960633a7b (diff)
T1 CAS support in the xpp "pri" module
Merged revisions 7244-7245,7266,7276,7457 via svnmerge from http://svn.digium.com/svn/dahdi/linux/trunk ........ r7244 | tzafrir | 2009-09-29 18:23:13 +0200 (Tue, 29 Sep 2009) | 5 lines xpp: make card_hooksig an optional card method. Done in preperation for T1 CAS support, as the PRI module will use RBS instead. ........ r7245 | tzafrir | 2009-09-29 18:45:15 +0200 (Tue, 29 Sep 2009) | 2 lines xpp: refactor pcm mask handling. ........ r7266 | tzafrir | 2009-09-30 00:43:05 +0200 (Wed, 30 Sep 2009) | 2 lines xpp: T1 CAS support ........ r7276 | tzafrir | 2009-09-30 15:49:48 +0200 (Wed, 30 Sep 2009) | 2 lines xpp: PRI PIC firmware: T1-CAS fixes ........ r7457 | tzafrir | 2009-11-03 22:24:13 +0200 (Tue, 03 Nov 2009) | 4 lines xpp: More E1/T1 CAS fixes. Mostly connect/disconnect xpp revs: mostly 7458, 7466 ........ git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/branches/2.2@7485 a0bf4364-ded3-4de4-8d8a-66a801d63aff
Diffstat (limited to 'drivers/dahdi/xpp/xpp_dahdi.c')
-rw-r--r--drivers/dahdi/xpp/xpp_dahdi.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/dahdi/xpp/xpp_dahdi.c b/drivers/dahdi/xpp/xpp_dahdi.c
index 6e7ee85..33fb137 100644
--- a/drivers/dahdi/xpp/xpp_dahdi.c
+++ b/drivers/dahdi/xpp/xpp_dahdi.c
@@ -940,6 +940,12 @@ static int xpp_hooksig(struct dahdi_chan *chan, enum dahdi_txsig txsig)
__FUNCTION__, pos);
return -ENODEV;
}
+ if(!xpd->xops->card_hooksig) {
+ LINE_ERR(xpd, pos,
+ "%s: No hooksig method for this channel. Ignore.\n",
+ __FUNCTION__);
+ return -ENODEV;
+ }
xbus = xpd->xbus;
BUG_ON(!xbus);
DBG(SIGNAL, "Setting %s to %s (%d)\n", chan->name, txsig2str(txsig), txsig);
@@ -1081,7 +1087,8 @@ int dahdi_register_xpd(xpd_t *xpd)
span->open = xpp_open;
span->close = xpp_close;
span->flags = DAHDI_FLAG_RBS;
- span->hooksig = xpp_hooksig; /* Only with RBS bits */
+ if(xops->card_hooksig)
+ span->hooksig = xpp_hooksig; /* Only with RBS bits */
span->ioctl = xpp_ioctl;
span->maint = xpp_maint;
/*