Hi, Umarzuki Mochlis <umarz...@gmail.com> writes: > 2009/8/16, Raja R Harinath <harin...@hurrynot.org>: >> Umarzuki Mochlis <umarz...@gmail.com> writes: >>> the modem is Huawei E1762 which is provided by local ISP when registering >>> for their wireless broadband service. >>> >>> this modem, weirdly, can only be detected when i used it recently from >>> windows xp, while the device still connected into the usb port, reboot >>> into debian, then it will be >>> detected and can be used with Vodafone Mobile Connect Card driver for >>> Linux >>> >>> detected as usb storage >>> Bus 005 Device 003: ID 12d1:1446 Huawei Technologies Co., Ltd. >>> >>> detected as modem >>> Bus 005 Device 003: ID 12d1:1003 Huawei Technologies Co., Ltd. E220 HSDPA >>> Modem / E270 HSDPA/HSUPA Modem >> >> This looks like an USB device that carries its Windows drivers on it. >> When you first plug it in, it appears as a USB storage device with the >> driver in it. After the Windows driver is installed, it pokes the >> device to make the modem interface appear. >> >> Now, on Linux, the modem interface, 0x1003, is supported by the option.c >> driver. So, the trick is to add a quirk to the USB storage driver to >> handle the poking. It appears there already are similar devices, and >> there already is code in the kernel to handle the poking of the device, >> etc.
To clarify this point -- once the interface is visible to Linux, the device works with the existing drivers you already have. >> You'll probably need to patch the drivers/usb/storage/unusual_devs.h >> file in the kernel to add a para that looks like: >> >> UNUSUAL_DEV( 0x12d1, 0x1446, 0x0000, 0x0000, >> "HUAWEI MOBILE", >> "Mass Storage", >> US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, >> 0), >> >> and recompile. Unfortunately, the usbstorage 'quirk=...' option doesn't >> appear to be able to handle this kind of quirk. > > i could not find any option.c It doesn't matter :-) You probably have the option.ko kernel module. > or unusual_devs.h on my machine, what sould i do next? I wasn't too clear above. You need to get a copy of the kernel source, patch it, compile it, and install it. However, it might be much much easier to follow the suggestion elsethread: install the 'usb-modeswitch' package, and add a line: SUBSYSTEM=="usb", SYSFS{idVendor}=="12d1", SYSFS{idProduct}=="1446", RUN+="/usr/sbin/usb_modeswitch --default-vendor 0x12d1 --default-product 0x1446 --target-vender 0x12d1 --target-product 0x1003 --huawei-mode --detach-storage-only " to /etc/udev/rules.d/usb_modeswitch.rules - Hari -- To UNSUBSCRIBE, email to debian-user-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org