Huawei E220 USB modem
Hans Petter Selasky
hselasky at c2i.net
Sat Dec 15 06:07:26 PST 2007
On Saturday 15 December 2007, Edwin Groothuis wrote:
> On Fri, Dec 14, 2007 at 09:11:31PM +1100, Edwin Groothuis wrote:
> > On Fri, Dec 14, 2007 at 03:35:36PM +1100, Edwin Groothuis wrote:
> >
> >
> > See http://www.mavetju.org/weblog/html/00192.html for a full write-up.
> >
> > See http://www.freebsd.org/cgi/query-pr.cgi?pr=118686 for a PR to
> > get it in the system.
>
> Believe it or not, but that "I need to take it out and in again"
> annoyed the hell out of me. Specially after seeing that this program:
>
>
> http://lists.freebsd.org/pipermail/freebsd-questions/2007-December/164404.h
>tml
>
> with the parameters: "/dev/usb0 2" caused the modem to be detected
> without a problem. I admit it still threw an error according to the
> program, but the logfiles showed that the modem was there. And
> working.
>
> In ubsa.c that must be:
>
> --- ubsa.c.orig Sat Dec 15 22:36:22 2007
> +++ ubsa.c Sat Dec 15 23:39:07 2007
> @@ -383,6 +383,23 @@
> printf("%s: Could not find interrupt in\n",
> USBDEVNAME(ucom->sc_dev));
> ucom->sc_dying = 1;
> +
> + if (uaa->vendor == USB_VENDOR_HUAWEI &&
> + uaa->product == USB_PRODUCT_HUAWEI_E220) {
> +
> + usb_device_request_t req;
> + usbd_status err;
> +
> + req.bmRequestType = UT_WRITE;;
> + req.bRequest = UR_SET_FEATURE;
> + USETW(req.wValue, 1);
> + USETW(req.wIndex, 2);
> + USETW(req.wLength, 0);
> + printf("Resetting port\n");
> + err = usbd_do_request(dev, &req, 0);
> + printf("Port resetted\n");
> + }
> +
> goto error;
> }
>
>
> I admit that this is not the worlds best option, because it gives
> this in the kernel:
Hi,
Did you add your latest patch to the PR system ?
--HPS
More information about the freebsd-usb
mailing list