ZTE USB 3g stick
Hans Petter Selasky
hselasky at c2i.net
Sun Aug 29 11:45:12 UTC 2010
On Saturday 28 August 2010 13:49:43 Matthew Luckie wrote:
> On 08/28/10 19:50, Hans Petter Selasky wrote:
> > On Saturday 28 August 2010 07:10:38 Matthew Luckie wrote:
> >> Hi
> >>
> >> I've got a 3g usb stick that works fine with 8.0-STABLE from Jan 3rd
> >> 2010, but does not with 8.1-RELEASE. Its a Vodafone branded stick
> >> bought in New Zealand.
> >>
> >> With FreeBSD 8.0 it prints this when I insert the stick:
> >>
> >> usb_test_autoinstall: Eject CD command status: USB_ERR_PENDING_REQUESTS
> >> ugen6.2:<ZTE,Incorporated> at usbus6
> >> ugen6.2:<ZTE,Incorporated> at usbus6 (disconnected)
> >> ugen6.2:<ZTE,Incorporated> at usbus6
> >> u3g0:<ZTE,Incorporated ZTE CDMA Technologies MSM, class 0/0, rev
> >> 2.00/0.00, addr 2> on usbus6
> >> u3g0: Found 5 ports.
> >> umass0:<ZTE,Incorporated ZTE CDMA Technologies MSM, class 0/0, rev
> >> 2.00/0.00, addr 2> on usbus6
> >> umass0: SCSI over Bulk-Only; quirks = 0x0000
> >> umass0:2:0:-1: Attached to scbus2
> >> (probe0:umass-sim0:0:0:0): TEST UNIT READY. CDB: 0 0 0 0 0 0
> >> (probe0:umass-sim0:0:0:0): CAM Status: SCSI Status Error
> >> (probe0:umass-sim0:0:0:0): SCSI Status: Check Condition
> >> (probe0:umass-sim0:0:0:0): NOT READY asc:3a,0
> >> (probe0:umass-sim0:0:0:0): Medium not present
> >> (probe0:umass-sim0:0:0:0): Unretryable error
> >> da0 at umass-sim0 bus 0 scbus2 target 0 lun 0
> >> da0:<ZTE MMC Storage 2.31> Removable Direct Access SCSI-2 device
> >> da0: 40.000MB/s transfers
> >> da0: Attempt to query device size failed: NOT READY, Medium not present
> >>
> >> [mjl at mylar mjl]$ sudo usbconfig -u 6 dump_info
> >> ugen6.1:<EHCI root HUB Intel> at usbus6, cfg=0 md=HOST spd=HIGH
> >> (480Mbps) pwr=ON
> >>
> >> ugen6.2:<ZTE CDMA Technologies MSM ZTE,Incorporated> at usbus6, cfg=0
> >> md=HOST spd=HIGH (480Mbps) pwr=ON
> >>
> >> On FreeBSD 8.1 it prints this:
> >>
> >> ugen6.2:<ZTE,Incorporated> at usbus6
> >>
> >> (and nothing else)
> >>
> >> [mjl at mylar mjl]$ sudo usbconfig -d 6.2 dump_device_desc
> >> ugen6.2:<ZTE CDMA Technologies MSM ZTE,Incorporated> at usbus6, cfg=255
> >> md=HOST spd=HIGH (480Mbps) pwr=ON
> >>
> >> bLength = 0x0012
> >> bDescriptorType = 0x0001
> >> bcdUSB = 0x0200
> >> bDeviceClass = 0x0000
> >> bDeviceSubClass = 0x0000
> >> bDeviceProtocol = 0x0000
> >> bMaxPacketSize0 = 0x0040
> >> idVendor = 0x19d2
> >> idProduct = 0x2000
> >> bcdDevice = 0x0000
> >> iManufacturer = 0x0002<ZTE,Incorporated>
> >> iProduct = 0x0001<ZTE CDMA Technologies MSM>
> >> iSerialNumber = 0x0003<P673A2VDF_MS>
> >> bNumConfigurations = 0x0001
> >
> > Have you loaded the u3g driver before plugging the device. Also try:
> Yes, I have.
>
> [mjl at mylar mjl]$ sudo kldload /boot/kernel/u3g.ko
> kldload: can't load /boot/kernel/u3g.ko: File exists
>
> module_register: module uhub/u3g already exists!
> Module uhub/u3g failed to register: 17
>
> > usbconfig -d 6.2 set_config 0
>
> ugen6.2: <ZTE,Incorporated> at usbus6
> umass0: <ZTE,Incorporated ZTE CDMA Technologies MSM, class 0/0, rev
> 2.00/0.00, addr 2> on usbus6
> cd1 at umass-sim0 bus 0 scbus2 target 0 lun 0
> cd1: <ZTE USB SCSI CD-ROM 2.31> Removable CD-ROM SCSI-2 device
> cd1: 40.000MB/s transfers
> cd1: cd present [31484 x 2048 byte records]
>
> Sadly no /dev/cuaU* entries. After the set_config, I have new /dev
> entries for cd1, iso9660, pass1, and of course ugen6.2.
>
> [mjl at mylar ~]$ sudo usbconfig -d 6.2 dump_device_desc
> ugen6.2: <ZTE CDMA Technologies MSM ZTE,Incorporated> at usbus6, cfg=0
> md=HOST spd=HIGH (480Mbps) pwr=ON
>
> bLength = 0x0012
> bDescriptorType = 0x0001
> bcdUSB = 0x0200
> bDeviceClass = 0x0000
> bDeviceSubClass = 0x0000
> bDeviceProtocol = 0x0000
> bMaxPacketSize0 = 0x0040
> idVendor = 0x19d2
> idProduct = 0x2000
> bcdDevice = 0x0000
> iManufacturer = 0x0002 <ZTE,Incorporated>
> iProduct = 0x0001 <ZTE CDMA Technologies MSM>
> iSerialNumber = 0x0003 <P673A2VDF_MS>
> bNumConfigurations = 0x0001
Hi,
Possibly we need to add some code to check when the autoinstall system is
ready for receiving the command. What happens if you try to add a delay before
executing the eject command:
--- src/sys/dev/usb/usb_msctest.c 2010-03-08 16:57:53.000000000 0000
+++ src/sys/dev/usb/usb_msctest.c 2010-03-08 16:57:53.000000000 0000
@@ -588,6 +588,8 @@
if (sc == NULL)
return (USB_ERR_INVAL);
+ pause("WAIT", hz);
+
err = 0;
switch (method) {
case MSC_EJECT_STOPUNIT:
--HPS
More information about the freebsd-usb
mailing list