Device IDs for HP hs2300 HSDPA modem

Michael freebsdusb at bindone.de
Tue Dec 2 15:58:15 PST 2008


Hans Petter Selasky wrote:
> On Tuesday 02 December 2008, Michael wrote:
>   
>> 3. I tried using a current checkout of usb2 (and added all the device
>> IDs necessary), but serial_3g is missing (and therefore
>>    commented out in sys/modules/usb2/Makefile), so I'm stuck there as
>> well. Is there actual hope that the problem
>>   might not appear when using usb2? (all I know about usb2 is that it's
>> supposed to be giant-free, no idea if it can
>>   handle these issues any better - seems like at least 50% of USB
>> devices are violating the standard in one way or
>>   another anyway).
>>     
>
> Alfred forgot to add the Makefile. The 3g id's are now in 
> core/usb2_msctest.c . I've sent him a patch to fix this, but have not heard 
> from him yet, assuming he is very busy.
>
> Just copy one of the other serial driver Makefiles and add "u3g2.c".
>
> --HPS
>   
Ok, essentially this seems to work, even so there are some caveats:
1. usb2_serial_3g has to be loaded before of usb2_controller_ehci
2. When I disable the device (button or bios command) it is detached
correctly,
   but reattaching it fails 9 out of 10 times with the following error:
kernel: usb2_alloc_device:1421: set address 2 failed (ignored)
kernel: usb2_alloc_device:1456: getting device descriptor at addr 2 failed!
kernel: uhub_reattach_port:402: could not allocate new device!
  If I kldunload usb2_controller_ehci and reload it, its detected ok.
  usb1 has no issues performing the same operation.
3. The machine crashed once after reenabling the device. No crashdumps
here, mostly because I'm stupid :(
4. There is only one serial device created (/dev/cuaU0), which
represents the data interface. The control interface is not detected.
(usb1 creates two interfaces /dev/cuaU0.0 for data and /dev/cuaU0.2 for
control). This is essential, because even so the data interface supports
most commands, it doesn't accept the PIN code entry cmomand (or other
maintenance commands). For testing purposes I disabled the PIN entry
requirement on the SIM and was able to get reasonable stable service (up
to 250kb/s).

Let me know if there is anything I can do to help debugging the issues
above. I attached the patches for the HS2300 device.

br
michael
-------------- next part --------------
--- sys/dev/usb2/include/usb2_devid.h.orig	2008-12-01 22:21:57.000000000 +0100
+++ sys/dev/usb2/include/usb2_devid.h	2008-12-01 22:21:57.000000000 +0100
@@ -1436,6 +1436,7 @@
 #define	USB_PRODUCT_HP_OJ4215	0x3d11		/* OfficeJet 4215 */
 #define	USB_PRODUCT_HP_HN210E	0x811c		/* Ethernet HN210E */
 #define	USB_PRODUCT_HP2_C500	0x6002		/* PhotoSmart C500 */
+#define	USB_PRODUCT_HP_HS2300	0x1e1d		/* MC8775 */
 
 /* HTC products */
 #define	USB_PRODUCT_HTC_WINMOBILE	0x00ce		/* HTC USB Sync */
-------------- next part --------------
--- sys/dev/usb2/include/usb2_devtable.h.orig	2008-12-01 22:22:40.000000000 +0100
+++ sys/dev/usb2/include/usb2_devtable.h	2008-12-01 22:22:40.000000000 +0100
@@ -3125,6 +3125,12 @@
 	    "PhotoSmart C500",
 	},
 	{
+	    USB_VENDOR_HP, USB_PRODUCT_HP_HS2300,
+	    0,
+	    "Hewlett Packard",
+	    "HS2300",
+	},
+	{
 	    USB_VENDOR_HTC, USB_PRODUCT_HTC_WINMOBILE,
 	    0,
 	    "HTC",
-------------- next part --------------
--- sys/dev/usb2/core/usb2_msctest.c.orig	2008-12-03 00:51:17.000000000 +0100
+++ sys/dev/usb2/core/usb2_msctest.c	2008-12-03 00:52:20.000000000 +0100
@@ -649,6 +649,7 @@
 	{USB_VPI(USB_VENDOR_SIERRA, USB_PRODUCT_SIERRA_MC8775_2, U3GINFO(U3GSP_UMTS, U3GFL_NONE))},	/* XXX */
 	{USB_VPI(USB_VENDOR_SIERRA, USB_PRODUCT_SIERRA_MC8780, U3GINFO(U3GSP_UMTS, U3GFL_NONE))},	/* XXX */
 	{USB_VPI(USB_VENDOR_SIERRA, USB_PRODUCT_SIERRA_MC8781, U3GINFO(U3GSP_UMTS, U3GFL_NONE))},	/* XXX */
+	{USB_VPI(USB_VENDOR_HP, USB_PRODUCT_HP_HS2300, U3GINFO(U3GSP_HSPA, U3GFL_NONE))},		/* XXX */
 	/* Sierra TruInstaller device ID */
 	{USB_VPI(USB_VENDOR_SIERRA, USB_PRODUCT_SIERRA_TRUINSTALL, U3GINFO(U3GSP_UMTS, U3GFL_SIERRA_INIT))},
 };


More information about the freebsd-usb mailing list