aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/isdn/gigaset/common.c
diff options
context:
space:
mode:
authorTilman Schmidt <tilman@imap.cc>2010-06-21 09:55:20 -0400
committerDavid S. Miller <davem@davemloft.net>2010-06-26 00:17:01 -0400
commit1b4843c5e8cbab86830da8a53b8288882060c059 (patch)
treee85f56181da19d0cd314cc369749f756b58e0063 /drivers/isdn/gigaset/common.c
parent1ce368ff288ed872a8fee93b8a2b7706111feb9a (diff)
isdn/gigaset: correct CAPI connection state storage
CAPI applications can handle several connections in parallel, so one connection state per application isn't sufficient. Store the connection state in the channel structure instead. Impact: bugfix Signed-off-by: Tilman Schmidt <tilman@imap.cc> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/isdn/gigaset/common.c')
-rw-r--r--drivers/isdn/gigaset/common.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/isdn/gigaset/common.c b/drivers/isdn/gigaset/common.c
index 9778fabbc488..5d4befb81057 100644
--- a/drivers/isdn/gigaset/common.c
+++ b/drivers/isdn/gigaset/common.c
@@ -649,6 +649,10 @@ static struct bc_state *gigaset_initbcs(struct bc_state *bcs,
649 for (i = 0; i < AT_NUM; ++i) 649 for (i = 0; i < AT_NUM; ++i)
650 bcs->commands[i] = NULL; 650 bcs->commands[i] = NULL;
651 651
652 spin_lock_init(&bcs->aplock);
653 bcs->ap = NULL;
654 bcs->apconnstate = 0;
655
652 gig_dbg(DEBUG_INIT, " setting up bcs[%d]->hw", channel); 656 gig_dbg(DEBUG_INIT, " setting up bcs[%d]->hw", channel);
653 if (cs->ops->initbcshw(bcs)) 657 if (cs->ops->initbcshw(bcs))
654 return bcs; 658 return bcs;