mISDN-hfcusb bchannel endpoint patch.
[people/pmueller/ipfire-2.x.git] / src / patches / mISDN-hfcusb_bchannels.patch
1 From: mbachem <info@colognechip.com>
2 Date: Thu, 17 Dec 2009 01:45:58 +0000 (+0100)
3 Subject: mISDN: Bugfix hfcsusb: usb endpoint activation/deactivation
4 X-Git-Url: http://git.misdn.org/?p=mISDN.git;a=commitdiff_plain;h=e29960990df531faff42023dd663e8d6e2bf55fe;hp=5f0f8aed322de56932da90810062f46170443553
5
6 mISDN: Bugfix hfcsusb: usb endpoint activation/deactivation
7
8 fixed activation/deactivation of B1/B2's USB endpoints
9
10 Signed-off-by: mbachem <info@colognechip.com>
11 ---
12
13 diff --git a/drivers/isdn/hardware/mISDN/hfcsusb.c b/drivers/isdn/hardware/mISDN/hfcsusb.c
14 index c5f29db..e8c5754 100644
15 --- a/drivers/isdn/hardware/mISDN/hfcsusb.c
16 +++ b/drivers/isdn/hardware/mISDN/hfcsusb.c
17 @@ -36,7 +36,7 @@
18 #include <linux/isdn_compat.h>
19 #include "hfcsusb.h"
20
21 -static const char *hfcsusb_rev = "Revision: 0.3.3 (socket), 2008-11-05";
22 +static const char *hfcsusb_rev = "Revision: 0.3.4 (socket), 2009-12-16";
23
24 static unsigned int debug;
25 static int poll = DEFAULT_TRANSP_BURST_SZ;
26 @@ -239,7 +239,7 @@ hfcusb_l2l1B(struct mISDNchannel *ch, struct sk_buff *skb)
27 return ret;
28 case PH_ACTIVATE_REQ:
29 if (!test_and_set_bit(FLG_ACTIVE, &bch->Flags)) {
30 - hfcsusb_start_endpoint(hw, bch->nr);
31 + hfcsusb_start_endpoint(hw, bch->nr-1);
32 ret = hfcsusb_setup_bch(bch, ch->protocol);
33 } else
34 ret = 0;
35 @@ -502,12 +502,6 @@ open_bchannel(struct hfcsusb *hw, struct channel_req *rq)
36 bch->ch.protocol = rq->protocol;
37 rq->ch = &bch->ch;
38
39 - /* start USB endpoint for bchannel */
40 - if (rq->adr.channel == 1)
41 - hfcsusb_start_endpoint(hw, HFC_CHAN_B1);
42 - else
43 - hfcsusb_start_endpoint(hw, HFC_CHAN_B2);
44 -
45 if (!try_module_get(THIS_MODULE))
46 printk(KERN_WARNING "%s: %s:cannot get module\n",
47 hw->name, __func__);
48 @@ -1813,7 +1807,7 @@ deactivate_bchannel(struct bchannel *bch)
49 mISDN_clear_bchannel(bch);
50 spin_unlock_irqrestore(&hw->lock, flags);
51 hfcsusb_setup_bch(bch, ISDN_P_NONE);
52 - hfcsusb_stop_endpoint(hw, bch->nr);
53 + hfcsusb_stop_endpoint(hw, bch->nr-1);
54 }
55
56 /*