NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

kern/55329: ugensa(4)/u3g(4): duplicated USB_VENDOR_SIERRA USB_PRODUCT_SIERRA_USB305 entry



>Number:         55329
>Category:       kern
>Synopsis:       ugensa(4)/u3g(4): duplicated USB_VENDOR_SIERRA USB_PRODUCT_SIERRA_USB305 entry
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun May 31 15:45:00 +0000 2020
>Originator:     Reinhard Speyerer
>Release:        NetBSD 9.0
>Organization:
>Environment:
NetBSD netbsd 9.0 NetBSD 9.0 (GENERIC) #0: Fri Feb 14 00:06:28 UTC 2020  mkrepro%mkrepro.NetBSD.org@localhost:/usr/src/sys/arch/i386/compile/GENERIC i386
>Description:
Support for USB_VENDOR_SIERRA USB_PRODUCT_SIERRA_USB305 devices was added
to both ugensa(4) and u3g(4) in PR #43468 ("Add Sierra Wireless USB 305
Support to ugensa device"). The corresponding USB PID 0x68a3 is also used
by newer devices like MC8704 and MC7700/MC7710 which provide several
serial ports like this (unsupported entries deleted):

at!udusbcomp=?
0  - HIP  DM    NMEA  AT    MDM1  MDM2  MDM3  MS  SUPPORTED
2  - HIP  DM    NMEA  AT    NIC1  MS              SUPPORTED
3  - HIP  DM    NMEA  AT    MDM1  NIC1  MS        SUPPORTED
4  - HIP  DM    NMEA  AT    NIC1  NIC2  NIC3  MS  SUPPORTED
5  - HIP  DM    NMEA  AT    ECM1  MS              SUPPORTED
OK

Since ugensa(4) wins when attaching to the device and since it only
supports a single serial port the AT port for these devices is not
available.

>How-To-Repeat:
Connect a Sierra Wireless device with USB PID 0x68a3 which has several
serial ports (e.g. a MC7710 set to AT!UDPID=68a3) to a USB port and check
dmesg(1) output:

[ 346.1530744] ugensa0 at uhub5 port 2
[ 346.1530744] ugensa0: Sierra Wireless, Incorporated (0x1199) MC7710 (0x68a3), rev 2.00/0.06, addr 4
[ 346.1530744] ucom4 at ugensa0: Generic Serial Device

>Fix:
Apply this patch

--- ugensa.c.orig	2019-05-09 04:43:35.000000000 +0200
+++ ugensa.c	2020-05-20 19:07:11.000000000 +0200
@@ -90,3 +90,2 @@
 	{{ USB_VENDOR_QUALCOMM_K, USB_PRODUCT_QUALCOMM_K_CDMA_MSM_K }, 0 },
-	{{ USB_VENDOR_SIERRA, USB_PRODUCT_SIERRA_USB305 }, 0 },
 	{{ USB_VENDOR_ZTE, USB_PRODUCT_ZTE_AC8700 }, 0 },

to the NetBSD 9.0 sources and rebuild the kernel. After reboot:

[   363.433249] u3g0 at uhub5 port 2 configuration 1 interface 0
[   363.433249] ucom4 at u3g0 portno 0: 3G Modem
[   363.433249] u3g1 at uhub5 port 2 configuration 1 interface 1
[   363.433249] ucom5 at u3g1 portno 0: 3G Modem
[   363.433249] u3g_match: failed to get interface, err=INVAL
[   363.433249] cdce0 at uhub5 port 2 configuration 1 interface 12
[   363.433249] cdce0: Sierra Wireless, Incorporated (0x1199) MC7710 (0x68a3), rev 2.00/0.06, addr 4
[   363.443255] cdce0: Ethernet address 00:a0:c6:00:00:00

Now the HIP and DM ports are available but not the AT port.
This will be fixed in my u3g.c patch next.



Home | Main Index | Thread Index | Old Index