brcm47xx: drop 3.14
[openwrt.git] / target / linux / generic / patches-3.14 / 060-net-usb-hso-Add-support-for-Option-GTM671WFS.patch
1 From 61ab9efddf51cbc0d57356a4d650785cf5721fbe Mon Sep 17 00:00:00 2001
2 From: Ricardo Ribalda <ricardo.ribalda@gmail.com>
3 Date: Mon, 4 Aug 2014 11:11:49 +0200
4 Subject: [PATCH] net/usb/hso: Add support for Option GTM671WFS
5
6 After this patch:
7
8 [   32.985530] hso: drivers/net/usb/hso.c: Option Wireless
9 [   33.000452] hso 2-1.4:1.7: Not our interface
10 [   33.001849] usbcore: registered new interface driver hso
11
12 root@qt5022:~# ls /dev/ttyHS*
13 /dev/ttyHS0  /dev/ttyHS1  /dev/ttyHS2  /dev/ttyHS3  /dev/ttyHS4
14 /dev/ttyHS5
15
16 root@qt5022:~# lsusb -d 0af0: -vvv
17
18 Bus 002 Device 003: ID 0af0:9200 Option
19 Device Descriptor:
20   bLength                18
21   bDescriptorType         1
22   bcdUSB               2.00
23   bDeviceClass          255 Vendor Specific Class
24   bDeviceSubClass       255 Vendor Specific Subclass
25   bDeviceProtocol       255 Vendor Specific Protocol
26   bMaxPacketSize0        64
27   idVendor           0x0af0 Option
28   idProduct          0x9200
29   bcdDevice            0.00
30   iManufacturer           3 Option N.V.
31   iProduct                2 Globetrotter HSUPA Modem
32   iSerial                 0
33   bNumConfigurations      1
34   Configuration Descriptor:
35     bLength                 9
36     bDescriptorType         2
37     wTotalLength          200
38     bNumInterfaces          8
39     bConfigurationValue     1
40     iConfiguration          1 Option Configuration
41     bmAttributes         0xe0
42       Self Powered
43       Remote Wakeup
44     MaxPower              100mA
45     Interface Descriptor:
46       bLength                 9
47       bDescriptorType         4
48       bInterfaceNumber        0
49       bAlternateSetting       0
50       bNumEndpoints           2
51       bInterfaceClass       255 Vendor Specific Class
52       bInterfaceSubClass    255 Vendor Specific Subclass
53       bInterfaceProtocol    255 Vendor Specific Protocol
54       iInterface              0
55       Endpoint Descriptor:
56         bLength                 7
57         bDescriptorType         5
58         bEndpointAddress     0x81  EP 1 IN
59         bmAttributes            2
60           Transfer Type            Bulk
61           Synch Type               None
62           Usage Type               Data
63         wMaxPacketSize     0x0200  1x 512 bytes
64         bInterval              32
65       Endpoint Descriptor:
66         bLength                 7
67         bDescriptorType         5
68         bEndpointAddress     0x01  EP 1 OUT
69         bmAttributes            2
70           Transfer Type            Bulk
71           Synch Type               None
72           Usage Type               Data
73         wMaxPacketSize     0x0200  1x 512 bytes
74         bInterval              32
75     Interface Descriptor:
76       bLength                 9
77       bDescriptorType         4
78       bInterfaceNumber        1
79       bAlternateSetting       0
80       bNumEndpoints           2
81       bInterfaceClass       255 Vendor Specific Class
82       bInterfaceSubClass    255 Vendor Specific Subclass
83       bInterfaceProtocol    255 Vendor Specific Protocol
84       iInterface              0
85       Endpoint Descriptor:
86         bLength                 7
87         bDescriptorType         5
88         bEndpointAddress     0x82  EP 2 IN
89         bmAttributes            2
90           Transfer Type            Bulk
91           Synch Type               None
92           Usage Type               Data
93         wMaxPacketSize     0x0200  1x 512 bytes
94         bInterval              32
95       Endpoint Descriptor:
96         bLength                 7
97         bDescriptorType         5
98         bEndpointAddress     0x02  EP 2 OUT
99         bmAttributes            2
100           Transfer Type            Bulk
101           Synch Type               None
102           Usage Type               Data
103         wMaxPacketSize     0x0200  1x 512 bytes
104         bInterval              32
105     Interface Descriptor:
106       bLength                 9
107       bDescriptorType         4
108       bInterfaceNumber        2
109       bAlternateSetting       0
110       bNumEndpoints           2
111       bInterfaceClass       255 Vendor Specific Class
112       bInterfaceSubClass    255 Vendor Specific Subclass
113       bInterfaceProtocol    255 Vendor Specific Protocol
114       iInterface              0
115       Endpoint Descriptor:
116         bLength                 7
117         bDescriptorType         5
118         bEndpointAddress     0x83  EP 3 IN
119         bmAttributes            2
120           Transfer Type            Bulk
121           Synch Type               None
122           Usage Type               Data
123         wMaxPacketSize     0x0200  1x 512 bytes
124         bInterval              32
125       Endpoint Descriptor:
126         bLength                 7
127         bDescriptorType         5
128         bEndpointAddress     0x03  EP 3 OUT
129         bmAttributes            2
130           Transfer Type            Bulk
131           Synch Type               None
132           Usage Type               Data
133         wMaxPacketSize     0x0200  1x 512 bytes
134         bInterval              32
135     Interface Descriptor:
136       bLength                 9
137       bDescriptorType         4
138       bInterfaceNumber        3
139       bAlternateSetting       0
140       bNumEndpoints           2
141       bInterfaceClass       255 Vendor Specific Class
142       bInterfaceSubClass    255 Vendor Specific Subclass
143       bInterfaceProtocol    255 Vendor Specific Protocol
144       iInterface              0
145       Endpoint Descriptor:
146         bLength                 7
147         bDescriptorType         5
148         bEndpointAddress     0x84  EP 4 IN
149         bmAttributes            2
150           Transfer Type            Bulk
151           Synch Type               None
152           Usage Type               Data
153         wMaxPacketSize     0x0200  1x 512 bytes
154         bInterval              32
155       Endpoint Descriptor:
156         bLength                 7
157         bDescriptorType         5
158         bEndpointAddress     0x04  EP 4 OUT
159         bmAttributes            2
160           Transfer Type            Bulk
161           Synch Type               None
162           Usage Type               Data
163         wMaxPacketSize     0x0200  1x 512 bytes
164         bInterval              32
165     Interface Descriptor:
166       bLength                 9
167       bDescriptorType         4
168       bInterfaceNumber        4
169       bAlternateSetting       0
170       bNumEndpoints           2
171       bInterfaceClass       255 Vendor Specific Class
172       bInterfaceSubClass    255 Vendor Specific Subclass
173       bInterfaceProtocol    255 Vendor Specific Protocol
174       iInterface              0
175       Endpoint Descriptor:
176         bLength                 7
177         bDescriptorType         5
178         bEndpointAddress     0x85  EP 5 IN
179         bmAttributes            2
180           Transfer Type            Bulk
181           Synch Type               None
182           Usage Type               Data
183         wMaxPacketSize     0x0200  1x 512 bytes
184         bInterval              32
185       Endpoint Descriptor:
186         bLength                 7
187         bDescriptorType         5
188         bEndpointAddress     0x05  EP 5 OUT
189         bmAttributes            2
190           Transfer Type            Bulk
191           Synch Type               None
192           Usage Type               Data
193         wMaxPacketSize     0x0200  1x 512 bytes
194         bInterval              32
195     Interface Descriptor:
196       bLength                 9
197       bDescriptorType         4
198       bInterfaceNumber        5
199       bAlternateSetting       0
200       bNumEndpoints           2
201       bInterfaceClass       255 Vendor Specific Class
202       bInterfaceSubClass    255 Vendor Specific Subclass
203       bInterfaceProtocol    255 Vendor Specific Protocol
204       iInterface              0
205       Endpoint Descriptor:
206         bLength                 7
207         bDescriptorType         5
208         bEndpointAddress     0x06  EP 6 OUT
209         bmAttributes            2
210           Transfer Type            Bulk
211           Synch Type               None
212           Usage Type               Data
213         wMaxPacketSize     0x0200  1x 512 bytes
214         bInterval              32
215       Endpoint Descriptor:
216         bLength                 7
217         bDescriptorType         5
218         bEndpointAddress     0x86  EP 6 IN
219         bmAttributes            2
220           Transfer Type            Bulk
221           Synch Type               None
222           Usage Type               Data
223         wMaxPacketSize     0x0200  1x 512 bytes
224         bInterval              32
225     Interface Descriptor:
226       bLength                 9
227       bDescriptorType         4
228       bInterfaceNumber        6
229       bAlternateSetting       0
230       bNumEndpoints           3
231       bInterfaceClass       255 Vendor Specific Class
232       bInterfaceSubClass    255 Vendor Specific Subclass
233       bInterfaceProtocol    255 Vendor Specific Protocol
234       iInterface              0
235       Endpoint Descriptor:
236         bLength                 7
237         bDescriptorType         5
238         bEndpointAddress     0x87  EP 7 IN
239         bmAttributes            3
240           Transfer Type            Interrupt
241           Synch Type               None
242           Usage Type               Data
243         wMaxPacketSize     0x0040  1x 64 bytes
244         bInterval               5
245       Endpoint Descriptor:
246         bLength                 7
247         bDescriptorType         5
248         bEndpointAddress     0x88  EP 8 IN
249         bmAttributes            2
250           Transfer Type            Bulk
251           Synch Type               None
252           Usage Type               Data
253         wMaxPacketSize     0x0200  1x 512 bytes
254         bInterval              32
255       Endpoint Descriptor:
256         bLength                 7
257         bDescriptorType         5
258         bEndpointAddress     0x07  EP 7 OUT
259         bmAttributes            2
260           Transfer Type            Bulk
261           Synch Type               None
262           Usage Type               Data
263         wMaxPacketSize     0x0200  1x 512 bytes
264         bInterval              32
265     Interface Descriptor:
266       bLength                 9
267       bDescriptorType         4
268       bInterfaceNumber        7
269       bAlternateSetting       0
270       bNumEndpoints           2
271       bInterfaceClass         8 Mass Storage
272       bInterfaceSubClass      6 SCSI
273       bInterfaceProtocol     80 Bulk-Only
274       iInterface              0
275       Endpoint Descriptor:
276         bLength                 7
277         bDescriptorType         5
278         bEndpointAddress     0x08  EP 8 OUT
279         bmAttributes            2
280           Transfer Type            Bulk
281           Synch Type               None
282           Usage Type               Data
283         wMaxPacketSize     0x0200  1x 512 bytes
284         bInterval               1
285       Endpoint Descriptor:
286         bLength                 7
287         bDescriptorType         5
288         bEndpointAddress     0x89  EP 9 IN
289         bmAttributes            2
290           Transfer Type            Bulk
291           Synch Type               None
292           Usage Type               Data
293         wMaxPacketSize     0x0200  1x 512 bytes
294         bInterval               1
295 Device Qualifier (for other device speed):
296   bLength                10
297   bDescriptorType         6
298   bcdUSB               2.00
299   bDeviceClass          255 Vendor Specific Class
300   bDeviceSubClass       255 Vendor Specific Subclass
301   bDeviceProtocol       255 Vendor Specific Protocol
302   bMaxPacketSize0        64
303   bNumConfigurations      1
304 Device Status:     0x0001
305   Self Powered
306
307 Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
308 Acked-by: Dan Williams <dcbw@redhat.com>
309 Signed-off-by: David S. Miller <davem@davemloft.net>
310 ---
311  drivers/net/usb/hso.c | 1 +
312  1 file changed, 1 insertion(+)
313
314 --- a/drivers/net/usb/hso.c
315 +++ b/drivers/net/usb/hso.c
316 @@ -469,6 +469,7 @@ static const struct usb_device_id hso_id
317         {USB_DEVICE(0x0af0, 0x8800)},
318         {USB_DEVICE(0x0af0, 0x8900)},
319         {USB_DEVICE(0x0af0, 0x9000)},
320 +       {USB_DEVICE(0x0af0, 0x9200)},           /* Option GTM671WFS */
321         {USB_DEVICE(0x0af0, 0xd035)},
322         {USB_DEVICE(0x0af0, 0xd055)},
323         {USB_DEVICE(0x0af0, 0xd155)},