[svn-commits] tzafrir: linux/trunk r10302 - /linux/trunk/drivers/dahdi/xpp/

SVN commits to the Digium repositories svn-commits at lists.digium.com
Wed Nov 2 12:05:43 CDT 2011


Author: tzafrir
Date: Wed Nov  2 12:05:38 2011
New Revision: 10302

URL: http://svnview.digium.com/svn/dahdi?view=rev&rev=10302
Log:
xpp: bugfix: clear NOTOPEN span alarm on assign

The NOTOPEN span alarm flag is set at span unassignment time.

* It needs to be cleared when the span is reassigned.
* That is: only if the span is actually connected.

Signed-off-by: Tzafrir Cohen <tzafrir.cohen at xorcom.com>

Modified:
    linux/trunk/drivers/dahdi/xpp/card_bri.c
    linux/trunk/drivers/dahdi/xpp/card_pri.c
    linux/trunk/drivers/dahdi/xpp/xpp_dahdi.c
    linux/trunk/drivers/dahdi/xpp/xpp_dahdi.h

Modified: linux/trunk/drivers/dahdi/xpp/card_bri.c
URL: http://svnview.digium.com/svn/dahdi/linux/trunk/drivers/dahdi/xpp/card_bri.c?view=diff&rev=10302&r1=10301&r2=10302
==============================================================================
--- linux/trunk/drivers/dahdi/xpp/card_bri.c (original)
+++ linux/trunk/drivers/dahdi/xpp/card_bri.c Wed Nov  2 12:05:38 2011
@@ -863,6 +863,7 @@
 	.maint = xpp_maint,
 	.echocan_create = xpp_echocan_create,
 	.echocan_name = xpp_echocan_name,
+	.assigned = xpp_span_assigned,
 #ifdef	DAHDI_SYNC_TICK
 	.sync_tick = dahdi_sync_tick,
 #endif

Modified: linux/trunk/drivers/dahdi/xpp/card_pri.c
URL: http://svnview.digium.com/svn/dahdi/linux/trunk/drivers/dahdi/xpp/card_pri.c?view=diff&rev=10302&r1=10301&r2=10302
==============================================================================
--- linux/trunk/drivers/dahdi/xpp/card_pri.c (original)
+++ linux/trunk/drivers/dahdi/xpp/card_pri.c Wed Nov  2 12:05:38 2011
@@ -1242,6 +1242,7 @@
 	.maint = xpp_maint,
 	.echocan_create = xpp_echocan_create,
 	.echocan_name = xpp_echocan_name,
+	.assigned = xpp_span_assigned,
 #ifdef	DAHDI_SYNC_TICK
 	.sync_tick = dahdi_sync_tick,
 #endif

Modified: linux/trunk/drivers/dahdi/xpp/xpp_dahdi.c
URL: http://svnview.digium.com/svn/dahdi/linux/trunk/drivers/dahdi/xpp/xpp_dahdi.c?view=diff&rev=10302&r1=10301&r2=10302
==============================================================================
--- linux/trunk/drivers/dahdi/xpp/xpp_dahdi.c (original)
+++ linux/trunk/drivers/dahdi/xpp/xpp_dahdi.c Wed Nov  2 12:05:38 2011
@@ -945,6 +945,19 @@
 }
 EXPORT_SYMBOL(xpp_echocan_create);
 
+void xpp_span_assigned(struct dahdi_span *span)
+{
+	struct phonedev	*phonedev = container_of(span, struct phonedev, span);
+	xpd_t		*xpd = container_of(phonedev, struct xpd, phonedev);
+
+	XPD_INFO(xpd, "Span assigned: %d\n", span->spanno);
+	if (xpd->card_present) {
+		span->alarms &= ~DAHDI_ALARM_NOTOPEN;
+		dahdi_alarm_notify(&phonedev->span);
+	}
+}
+EXPORT_SYMBOL(xpp_span_assigned);
+
 static const struct dahdi_span_ops xpp_span_ops = {
 	.owner = THIS_MODULE,
 	.open = xpp_open,
@@ -953,6 +966,7 @@
 	.maint = xpp_maint,
 	.echocan_create = xpp_echocan_create,
 	.echocan_name = xpp_echocan_name,
+	.assigned = xpp_span_assigned,
 };
 
 static const struct dahdi_span_ops xpp_rbs_span_ops = {
@@ -964,6 +978,7 @@
 	.maint = xpp_maint,
 	.echocan_create = xpp_echocan_create,
 	.echocan_name = xpp_echocan_name,
+	.assigned = xpp_span_assigned,
 };
 
 void xpd_set_spanname(xpd_t *xpd)

Modified: linux/trunk/drivers/dahdi/xpp/xpp_dahdi.h
URL: http://svnview.digium.com/svn/dahdi/linux/trunk/drivers/dahdi/xpp/xpp_dahdi.h?view=diff&rev=10302&r1=10301&r2=10302
==============================================================================
--- linux/trunk/drivers/dahdi/xpp/xpp_dahdi.h (original)
+++ linux/trunk/drivers/dahdi/xpp/xpp_dahdi.h Wed Nov  2 12:05:38 2011
@@ -47,6 +47,7 @@
 int xpp_ioctl(struct dahdi_chan *chan, unsigned int cmd, unsigned long arg);
 int xpp_hooksig(struct dahdi_chan *chan, enum dahdi_txsig txsig);
 int xpp_maint(struct dahdi_span *span, int cmd);
+void xpp_span_assigned(struct dahdi_span *span);
 void report_bad_ioctl(const char *msg, xpd_t *xpd, int pos, unsigned int cmd);
 int total_registered_spans(void);
 void oht_pcm(xpd_t *xpd, int pos, bool pass);




More information about the svn-commits mailing list