aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2014-10-05 21:17:56 -0400
committerDavid S. Miller <davem@davemloft.net>2014-10-05 21:17:56 -0400
commit5555dfdc0fd84c4df61756903632e1e37a63a247 (patch)
tree1a3d2169143554a5716a6798477ad3099107e988
parent1e203c1a2c104c8f8030245d2afaa337a79b4375 (diff)
parent7b0c67e49545b523f21b625ba123f6ba2f553dcd (diff)
Merge branch 'isdn-next'
Tilman Schmidt says: ==================== ISDN patches for net-next Here's a series of patches for the ISDN CAPI subsystem and the Gigaset ISDN driver. Please merge via net-next. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/isdn/capi/capiutil.c3
-rw-r--r--drivers/isdn/gigaset/ev-layer.c3
-rw-r--r--drivers/isdn/gigaset/usb-gigaset.c14
3 files changed, 7 insertions, 13 deletions
diff --git a/drivers/isdn/capi/capiutil.c b/drivers/isdn/capi/capiutil.c
index 6e797e502cfa..4073d1684d07 100644
--- a/drivers/isdn/capi/capiutil.c
+++ b/drivers/isdn/capi/capiutil.c
@@ -205,11 +205,8 @@ static unsigned command_2_index(unsigned c, unsigned sc)
205{ 205{
206 if (c & 0x80) 206 if (c & 0x80)
207 c = 0x9 + (c & 0x0f); 207 c = 0x9 + (c & 0x0f);
208 else if (c <= 0x0f);
209 else if (c == 0x41) 208 else if (c == 0x41)
210 c = 0x9 + 0x1; 209 c = 0x9 + 0x1;
211 else if (c == 0xff)
212 c = 0x00;
213 return (sc & 3) * (0x9 + 0x9) + c; 210 return (sc & 3) * (0x9 + 0x9) + c;
214} 211}
215 212
diff --git a/drivers/isdn/gigaset/ev-layer.c b/drivers/isdn/gigaset/ev-layer.c
index 7459b127ddd5..dcae14aef376 100644
--- a/drivers/isdn/gigaset/ev-layer.c
+++ b/drivers/isdn/gigaset/ev-layer.c
@@ -1243,7 +1243,8 @@ static void do_action(int action, struct cardstate *cs,
1243 break; 1243 break;
1244 case ACT_FAILDLE0: 1244 case ACT_FAILDLE0:
1245 cs->cur_at_seq = SEQ_NONE; 1245 cs->cur_at_seq = SEQ_NONE;
1246 dev_warn(cs->dev, "Could not leave DLE mode.\n"); 1246 dev_warn(cs->dev, "Error leaving DLE mode.\n");
1247 cs->dle = 0;
1247 at_state2 = &cs->bcs[cs->curchannel].at_state; 1248 at_state2 = &cs->bcs[cs->curchannel].at_state;
1248 disconnect(&at_state2); 1249 disconnect(&at_state2);
1249 schedule_init(cs, MS_RECOVER); 1250 schedule_init(cs, MS_RECOVER);
diff --git a/drivers/isdn/gigaset/usb-gigaset.c b/drivers/isdn/gigaset/usb-gigaset.c
index 00d40773b07f..82e91ba1acd3 100644
--- a/drivers/isdn/gigaset/usb-gigaset.c
+++ b/drivers/isdn/gigaset/usb-gigaset.c
@@ -135,14 +135,13 @@ struct usb_cardstate {
135 /* Output buffer */ 135 /* Output buffer */
136 unsigned char *bulk_out_buffer; 136 unsigned char *bulk_out_buffer;
137 int bulk_out_size; 137 int bulk_out_size;
138 __u8 bulk_out_endpointAddr; 138 int bulk_out_epnum;
139 struct urb *bulk_out_urb; 139 struct urb *bulk_out_urb;
140 140
141 /* Input buffer */ 141 /* Input buffer */
142 unsigned char *rcvbuf; 142 unsigned char *rcvbuf;
143 int rcvbuf_size; 143 int rcvbuf_size;
144 struct urb *read_urb; 144 struct urb *read_urb;
145 __u8 int_in_endpointAddr;
146 145
147 char bchars[6]; /* for request 0x19 */ 146 char bchars[6]; /* for request 0x19 */
148}; 147};
@@ -466,7 +465,7 @@ static int send_cb(struct cardstate *cs, struct cmdbuf_t *cb)
466 465
467 usb_fill_bulk_urb(ucs->bulk_out_urb, ucs->udev, 466 usb_fill_bulk_urb(ucs->bulk_out_urb, ucs->udev,
468 usb_sndbulkpipe(ucs->udev, 467 usb_sndbulkpipe(ucs->udev,
469 ucs->bulk_out_endpointAddr & 0x0f), 468 ucs->bulk_out_epnum),
470 cb->buf + cb->offset, count, 469 cb->buf + cb->offset, count,
471 gigaset_write_bulk_callback, cs); 470 gigaset_write_bulk_callback, cs);
472 471
@@ -628,8 +627,7 @@ static int write_modem(struct cardstate *cs)
628 if (cs->connected) { 627 if (cs->connected) {
629 usb_fill_bulk_urb(ucs->bulk_out_urb, ucs->udev, 628 usb_fill_bulk_urb(ucs->bulk_out_urb, ucs->udev,
630 usb_sndbulkpipe(ucs->udev, 629 usb_sndbulkpipe(ucs->udev,
631 ucs->bulk_out_endpointAddr & 630 ucs->bulk_out_epnum),
632 0x0f),
633 ucs->bulk_out_buffer, count, 631 ucs->bulk_out_buffer, count,
634 gigaset_write_bulk_callback, cs); 632 gigaset_write_bulk_callback, cs);
635 ret = usb_submit_urb(ucs->bulk_out_urb, GFP_ATOMIC); 633 ret = usb_submit_urb(ucs->bulk_out_urb, GFP_ATOMIC);
@@ -714,7 +712,7 @@ static int gigaset_probe(struct usb_interface *interface,
714 712
715 buffer_size = le16_to_cpu(endpoint->wMaxPacketSize); 713 buffer_size = le16_to_cpu(endpoint->wMaxPacketSize);
716 ucs->bulk_out_size = buffer_size; 714 ucs->bulk_out_size = buffer_size;
717 ucs->bulk_out_endpointAddr = endpoint->bEndpointAddress; 715 ucs->bulk_out_epnum = usb_endpoint_num(endpoint);
718 ucs->bulk_out_buffer = kmalloc(buffer_size, GFP_KERNEL); 716 ucs->bulk_out_buffer = kmalloc(buffer_size, GFP_KERNEL);
719 if (!ucs->bulk_out_buffer) { 717 if (!ucs->bulk_out_buffer) {
720 dev_err(cs->dev, "Couldn't allocate bulk_out_buffer\n"); 718 dev_err(cs->dev, "Couldn't allocate bulk_out_buffer\n");
@@ -741,7 +739,6 @@ static int gigaset_probe(struct usb_interface *interface,
741 } 739 }
742 buffer_size = le16_to_cpu(endpoint->wMaxPacketSize); 740 buffer_size = le16_to_cpu(endpoint->wMaxPacketSize);
743 ucs->rcvbuf_size = buffer_size; 741 ucs->rcvbuf_size = buffer_size;
744 ucs->int_in_endpointAddr = endpoint->bEndpointAddress;
745 ucs->rcvbuf = kmalloc(buffer_size, GFP_KERNEL); 742 ucs->rcvbuf = kmalloc(buffer_size, GFP_KERNEL);
746 if (!ucs->rcvbuf) { 743 if (!ucs->rcvbuf) {
747 dev_err(cs->dev, "Couldn't allocate rcvbuf\n"); 744 dev_err(cs->dev, "Couldn't allocate rcvbuf\n");
@@ -750,8 +747,7 @@ static int gigaset_probe(struct usb_interface *interface,
750 } 747 }
751 /* Fill the interrupt urb and send it to the core */ 748 /* Fill the interrupt urb and send it to the core */
752 usb_fill_int_urb(ucs->read_urb, udev, 749 usb_fill_int_urb(ucs->read_urb, udev,
753 usb_rcvintpipe(udev, 750 usb_rcvintpipe(udev, usb_endpoint_num(endpoint)),
754 usb_endpoint_num(endpoint)),
755 ucs->rcvbuf, buffer_size, 751 ucs->rcvbuf, buffer_size,
756 gigaset_read_int_callback, 752 gigaset_read_int_callback,
757 cs, endpoint->bInterval); 753 cs, endpoint->bInterval);