Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 213584
b: refs/heads/master
c: 1992de8
h: refs/heads/master
v: v3
  • Loading branch information
Matthias G. Eckermann authored and Greg Kroah-Hartman committed Oct 22, 2010
1 parent ca84df2 commit 6666470
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 2 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 6195e3c6aa84dbbf80a60731168118824bd58bba
refs/heads/master: 1992de83e375acc789daf66b7b72a812a5235b75
31 changes: 30 additions & 1 deletion trunk/drivers/usb/serial/qcserial.c
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,22 @@ static int qcprobe(struct usb_serial *serial, const struct usb_device_id *id)
case 3:
case 4:
/* Composite mode */
if (ifnum == 2) {
/* ifnum == 0 is a broadband network adapter */
if (ifnum == 1) {
/*
* Diagnostics Monitor (serial line 9600 8N1)
* Qualcomm DM protocol
* use "libqcdm" (ModemManager) for communication
*/
dbg("Diagnostics Monitor found");
retval = usb_set_interface(serial->dev, ifnum, 0);
if (retval < 0) {
dev_err(&serial->dev->dev,
"Could not set interface, error %d\n",
retval);
retval = -ENODEV;
}
} else if (ifnum == 2) {
dbg("Modem port found");
retval = usb_set_interface(serial->dev, ifnum, 0);
if (retval < 0) {
Expand All @@ -163,6 +178,20 @@ static int qcprobe(struct usb_serial *serial, const struct usb_device_id *id)
kfree(data);
}
return retval;
} else if (ifnum==3) {
/*
* NMEA (serial line 9600 8N1)
* # echo "\$GPS_START" > /dev/ttyUSBx
* # echo "\$GPS_STOP" > /dev/ttyUSBx
*/
dbg("NMEA GPS interface found");
retval = usb_set_interface(serial->dev, ifnum, 0);
if (retval < 0) {
dev_err(&serial->dev->dev,
"Could not set interface, error %d\n",
retval);
retval = -ENODEV;
}
}
break;

Expand Down

0 comments on commit 6666470

Please sign in to comment.