History log of /freebsd-9.3-release/sys/dev/usb/serial/u3g.c
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 267654 19-Jun-2014 gjb

Copy stable/9 to releng/9.3 as part of the 9.3-RELEASE cycle.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation

# 263166 14-Mar-2014 hselasky

MFC r227751, r238766, r241553, r242748, r244047, r245947, r246021, r247255,
r249039, r249204, r250848, r251351, r252295, r252498, r255123, r255238,
r256782, r257132, r257390 and r259675:
- Add various new USB ID's and quirks.
- Make sure the usbdevs mergeinfo gets recorded on the sys directory.


# 259593 19-Dec-2013 truckman

MFC r258363:

Add alternate ID for Novatel MiFi 2200 CDMA, which is used by my
Virgin Mobile branded device. It needs the U3GINIT_SCSIEJECT quirk.


# 253292 12-Jul-2013 remko

MFC r252294 and r252295:

Add support for the NTT Docomo L-02C Card

PR: 180017
Submitted by: Masaharu FUJITA
Glanced at by: imp
Approved by: re (delphij)


# 250845 21-May-2013 hselasky

MFC r248499:
Add new USB ID.

PR: usb/177105


# 248085 09-Mar-2013 marius

MFC: r227309 (partial)

Mark all SYSCTL_NODEs static that have no corresponding SYSCTL_DECLs.

The SYSCTL_NODE macro defines a list that stores all child-elements of
that node. If there's no SYSCTL_DECL macro anywhere else, there's no
reason why it shouldn't be static.


# 245727 21-Jan-2013 hselasky

MFC r244837 and r245427:
Add new USB IDs.

PR: usb/174814
Submitted by: Andy Balholm, Lowell Gilbert


# 244003 07-Dec-2012 eadler

MFC r243663:
Add support for AT&T Sierra Wireless USB 3G adapter

PR: kern/173982
Approved by: cperciva (implicit)


# 243654 28-Nov-2012 hselasky

Add new USB IDs.

PR: usb/173503


# 242100 25-Oct-2012 n_hibma

MFC 241555:

Implement modem control in u3g. Tested on Option GTM382W, Huawei E220,
and Sierra Wireless MC8790V. Also implement the .ucom_poll method.

Note: It resolves ppp hanging during the PPp> phase.


# 240669 18-Sep-2012 hselasky

MFC r238079, r238493, r238526, r238529 and r238717:
Add new USB ID's.

PR: usb/169789


# 240659 18-Sep-2012 hselasky

MFC r239178, r239179, r239180, r239181, r239182 and r239299:

Fix detach of USB serial devices so that it doesn't block
the USB explore thread forever. To accomplish this two new
functions have been added to the kernel, to claim and free
the newbus allocated softc.

This change is backwards API compatible, but not binary
compatible. The FreeBSD version has been bumped to force
a recompile of all kernel modules.

Discussed with: kib, ed, jhb


# 235002 04-May-2012 hselasky

MFC r234541:
Add new USB ID to u3g driver.


# 232873 12-Mar-2012 hselasky

MFC r230238 and r232684:
Add new USB device ID's.


# 232036 23-Feb-2012 hselasky

MFC r231713:
Add new USB device ID.

PR: usb/165154


# 225736 22-Sep-2011 kensmith

Copy head to stable/9 as part of 9.0-RELEASE release cycle.

Approved by: re (implicit)


# 225041 20-Aug-2011 hselasky

Add new USB ID to u3g driver.

Approved by: re (kib)
MFC after: 1 week
PR: usb/159919


# 224239 21-Jul-2011 hselasky

Add new USB ID to u3g driver.

Approved by: re (kib)
Submitted by: Nick Hibma
MFC after: 3 days


# 223486 24-Jun-2011 hselasky

- Move all USB device ID arrays into so-called sections,
sorted according to the mode which they support:
host, device or dual mode
- Add generic tool to extract these data:
tools/bus_autoconf

Discussed with: imp
Suggested by: Robert Millan <rmh@debian.org>
PR: misc/157903
MFC after: 14 days


# 218178 01-Feb-2011 n_hibma

New ID for the Novatel MC547

PR: 154127
Submitted by: Mike Tancsa
MFC after: 1 day


# 217637 20-Jan-2011 n_hibma

Add another ID for the ZTE MF190 Surf Stick

Submitted by: nagilum
MFC after: 1 day


# 217265 11-Jan-2011 jhb

Remove unneeded includes of <sys/linker_set.h>. Other headers that use
it internally contain nested includes.

Reviewed by: bde


# 215734 23-Nov-2010 n_hibma

Make the Huawei E1820 work (Emile Coetzee).
Shorten the descriptive strings for Huawei devices. The vendor or
operator name should not be included in the device name.

Submitted by: Emile Coetzee
MFC after: 3 days


# 215330 15-Nov-2010 thompsa

Add the Sierra MC8700.


# 215326 14-Nov-2010 dd

Add a special INIT product ID used by some models of the HUAWEI
K3765 datacard. After ejecting this device, it reappears using
the normal K3765 ID. It does not switch automatically

Reviewed by: n_hibma
Obtained from: OpenBSD
MFC after: 2 weeks


# 215258 13-Nov-2010 n_hibma

Add the switch config for the XS Stick.

It speaks AT commands on 2 out of 3 serial ports, but it has not been
verified to work at all speaking PPP yet.


# 215095 10-Nov-2010 n_hibma

Allow specification of eject method through quirks, so people can test
drive eject methods before supplying patches.


# 214852 05-Nov-2010 n_hibma

Bugfix: In rev 213509 Alexander committed a duplicate ID for ZTE STOR
based devices (QUALCOMMINC 0x2000). He made it use SCSI eject instead of
ZTE STOR eject. This prevented my ZTE MF626 dongle from switching.

- Apply both eject methods for ZTE STOR based devices. Works on my as
well as mav's device.
- Remove the duplicate.
- Sort the usbdevs entries for Qualcomm so this won't happen again.
- Add bootverbose message displaying the fact that we are ejecting (and
how).

Reviewed by: mav
MFC after: 2 weeks


# 214843 05-Nov-2010 n_hibma

Implement ucom_set_pnpinfo_usb() providing ttyname and port number
information through devd. My E220 now produces the notification (1 line):

+u3g0 at bus=1 hubaddr=1 port=0 devaddr=2 interface=0 \
vendor=0x12d1 product=0x1003 devclass=0x00 devsubclass=0x00 \
sernum="" release=0x0000 intclass=0xff intsubclass=0xff \
ttyname=U0 ttyports=2 on uhub0

Note: serial/ufoma and net/uhso still provide port number and tty name
(uhso only) information through sysctls, which should now be removed.

Reviewed by: hpselasky


# 214761 03-Nov-2010 n_hibma

- Simplify the way unit/subunit allocation is done in ucom.
- hw.usb.ucom.cons_unit is now split into
hw.usb.ucom.cons_unit/...cons_subunit.

Note: The tunable/sysctl hw.usb.ucom.cons_unit needs to be reviewed if

a) a console was defined a USB serial devices, and a USB device with
more than 1 subunit is present, and this device is attached before the
device functioning as a console

or

b) a console was defined on a USB device with more than 1 subunit

Reviewed by: hps
MFC after: 2 weeks


# 213879 14-Oct-2010 hselasky

- Add more USB devices to usbdevs and rename some previously unknown ones.
- Add more USB mass storage quirks.

Submitted by: Dmitry Luhtionov
PR: usb/149934, usb/143045
Approved by: thompsa (mentor)


# 213509 07-Oct-2010 mav

Add ID for Vodafone (ZTE) Mobile Broadband K3565-Z modem.

Reviewed by: hselasky


# 213480 06-Oct-2010 glebius

Add support to Alcatel/TCTMobile X080S USB 3G modem. The device needs
special eject command to reappear as modem. It also requires DIR_IN flag
in the command message, so we supply some dummy data along with the command.

Feedback from X080S owners appreciated. I have not a pure Alcatel/TCTMobile
device, but another one under "Svyaznoy" (Связной) brand, and I didn't yet
managed to get it working. It is successfully recognized, it responds to
AT commands, but it shuts up right after successfull CONNECT response.

Reviewed by: hps


# 212122 01-Sep-2010 thompsa

Add missing MODULE_VERSION() definitions, this resolves problems around
duplicate module loads.

PR: usb/125736
Submitted by: danger, mm
Reviewed by: hselasky


# 210534 27-Jul-2010 gavin

Add support for the Longcheer WM66 USB HSDPA Modem to u3g(4)

This patch is different to that provided in the PR, due to the changes in
this driver since 7.x.

PR: usb/129945
Submitted by: Antonio Hilario <avahilario gmail.com>
MFC after: 1 week


# 208015 12-May-2010 thompsa

Increase the max ports to 12, 3G devices exist where the ppp endpoint is #9.

Requested by: n_hibma


# 207077 22-Apr-2010 thompsa

Change USB_DEBUG to #ifdef and allow it to be turned off. Previously this had
the illusion of a tunable setting but was always turned on regardless.

MFC after: 1 week


# 206544 13-Apr-2010 kevlo

The Quanta Q101 modem has a different type of cdrom driver disk,
add the product id and use a standard scsi eject.

Reviewed by: thompsa
MFC after: 3 days


# 203905 14-Feb-2010 thompsa

Add support for the E1752 3G modem and the required eject command.

Submitted by: Milan Obuch


# 203507 05-Feb-2010 thompsa

The ZTE MF633R modem has a different type of cdrom driver disk, add the product
ID and use a standard scsi eject.

Reported by: Patrick Lamaiziere
MFC after: 3 days


# 203506 04-Feb-2010 thompsa

Properly name the 0x0016 ZTE product as MF633R now that its known.


# 202054 10-Jan-2010 thompsa

Add the Globetrotter GE40x.

Submitted by: Mike Tancsa


# 201766 07-Jan-2010 thompsa

Remove unneeded includes.


# 201681 06-Jan-2010 thompsa

Improve u3g device ejecting by providing additional methods for the eject
command in the usb_msctest routines, as well as a general tidyup.

This now properly ejects the ZTE MF636, Option Gi0322 and Novatel MC950D
devices I have on my desk.


# 200658 17-Dec-2009 thompsa

Keep list sorted.


# 200657 17-Dec-2009 thompsa

Add a bunch of new 3G ids obtained from from various operating systems and
Internet sources.

Obtained from: Linux, NetBSD, OpenBSD, etc


# 200653 17-Dec-2009 thompsa

Use the EVENTHANDLER system to hook into the usb device configuration and
perform a function such as ejecting a 3G autoinstaller disk. The eventhandler
system properly tracks threads and is safe to unload, remove the
setting/clearing of a function pointer in the kernel by u3g(4) which included a
tsleep for safety.


# 200376 10-Dec-2009 thompsa

Revert r199331, the UM175 is in fact a cdc-acm device handled by umodem(4).


# 199816 25-Nov-2009 thompsa

Remove overuse of exclamation marks in kernel printfs, there mere fact a
message has been printed is enough to get someones attention. Also remove the
line number for DPRINTF/DPRINTFN, it already prints the funtion name and a
unique message.


# 199332 16-Nov-2009 thompsa

Sort ID list by vendor.


# 199331 16-Nov-2009 thompsa

Add the Curitel UM175 3g device.


# 197568 28-Sep-2009 thompsa

add more device IDs

Reported by: Mike Tancsa
Submitted by: Hans Petter Selasky


# 196219 14-Aug-2009 jhb

Purge mergeinfo from files that were temporarily renamed while USB2 was
imported into the tree alongside USB.

Approved by: re (mergeinfo blanket)


# 195962 29-Jul-2009 alfred

USB serial:
- add new ID for Huawei
- P4 ID: 166150

PR: usb/136761

Submitted by: hps
Approved by: re


# 194677 23-Jun-2009 thompsa

- Make struct usb_xfer opaque so that drivers can not access the internals
- Reduce the number of headers needed for a usb driver, the common case is just usb.h and usbdi.h


# 194228 14-Jun-2009 thompsa

s/usb2_/usb_|usbd_/ on all function names for the USB stack.


# 193045 29-May-2009 thompsa

s/usb2_/usb_/ on all typedefs for the USB stack.


# 192984 28-May-2009 thompsa

s/usb2_/usb_/ on all C structs for the USB stack.


# 192557 21-May-2009 thompsa

Add Sharp WILLCOM03 ipaq and Option GTHSDPA 3g device ids.

Submitted by: Hans Petter Selasky


# 192502 20-May-2009 thompsa

Rename the usb sysctl tree from hw.usb2.* back to hw.usb.*.

Submitted by: Hans Petter Selasky


# 192499 20-May-2009 thompsa

- rename usb2_mode to usb_mode [1]
- change variable types to use the enum

Submitted by: Hans Petter Selasky [1]


# 191892 07-May-2009 thompsa

Use a 32 bit type for the interface mask as this equals the max interface
count.


# 191870 07-May-2009 thompsa

Add the Sierra AC885U and increase the max ports to 8.


# 191869 07-May-2009 thompsa

- Fix the u3g port detection where it would not calculate the correct number of
ports when multiple interfaces are present.
- Claim all interfaces regardless of how many are attached


# 191868 07-May-2009 thompsa

Use vendor and product macro expansion to make the device table smaller and
more readable.


# 190749 05-Apr-2009 piso

Remove pointeless mergeinfo that crept in from r190633.


# 190734 05-Apr-2009 thompsa

MFp4 //depot/projects/usb@159909

- make usb2_power_mask_t 16-bit
- remove "usb2_config_sub" structure from "usb2_config". To compensate for this
"usb2_config" has a new field called "usb_mode" which select for which mode
the current xfer entry is active. Options are: a) Device mode only b) Host
mode only (default-by-zero) c) Both modes. This change was scripted using
the following sed script: "s/\.mh\././g".
- the standard packet size table in "usb_transfer.c" is now a function, hence
the code for the function uses less memory than the table itself.

Submitted by: Hans Petter Selasky


# 190633 01-Apr-2009 piso

Implement an ipfw action to reassemble ip packets: reass.


# 190581 30-Mar-2009 mav

Integrate user/mav/ata branch:

Add ch_suspend/ch_resume methods for PCI controllers and implement them
for AHCI. Refactor AHCI channel initialization according to it.

Fix Port Multipliers operation. It is far from perfect yet, but works now.
Tested with JMicron JMB363 AHCI + SiI 3726 PMP pair.
Previous version was also tested with SiI 4726 PMP.

Hardware sponsored by: Vitsch Electronics / VEHosting.nl


# 190174 20-Mar-2009 thompsa

MFp4 //depot/projects/usb @159430

- Move tunable defines into usb_core.h and dependancy towards usb_defs.h
- Leave hardcoded defines in "usb_defs.h".
- Allow overriding all tunable defines.
- Add more customisable typedefs.
- Correct maximum device number.

Submitted by: Hans Petter Selasky


# 189546 08-Mar-2009 thompsa

MFp4 //depot/projects/usb@158869

Fix sael init code.

Reported by: Alberto Mijares
Submitted by: Hans Petter Selasky


# 189275 02-Mar-2009 thompsa

Rename the ushub device class back to uhub as it was in the old usb stack,
moused(8) looks for "uhub/ums" to decide if needs to load the module.

Reported by: Garrett Cooper


# 189265 02-Mar-2009 thompsa

Move the serial drivers from Giant to using their own mutexs.

Tested with: u3g, ubser, uplcom


# 188989 24-Feb-2009 thompsa

MFp4 //depot/projects/usb@158015

Add support for the Sael M460 3G modem.

Submitted by: Hans Petter Selasky


# 188942 23-Feb-2009 thompsa

Move the new USB stack into its new home.


# 188746 18-Feb-2009 thompsa

Switch over to usbdevs.h generated at compile time.


# 188413 09-Feb-2009 thompsa

MFp4 //depot/projects/usb; 157069, 157136, 157143, 157145, 157429

- USB serial drivers cleanup, factor out code
- Simplify line state programming
- Integrate uslcom from old USB stack

Submitted by: Hans Petter Selasky


# 187970 31-Jan-2009 thompsa

Remove check for null softc in attach, it can never happen.


# 187728 26-Jan-2009 thompsa

MFp4 //depot/projects/usb/ @156521

U3G regression issue. Patch to support multiple modem instances per logical
USB interface.

Submitted by: Hans Petter Selasky


# 187259 15-Jan-2009 thompsa

Name the items in the xfer arrays so they can be identified throughout the
code.


# 187176 13-Jan-2009 thompsa

MFp4: //depot/projects/usb@155917

Remove dependancy towards the USB config thread in
the USB serial core. Use USB process msignalling
instead. Saves a little memory and hopefully makes
the code more understandable.

Submitted by: Hans Petter Selasky


# 186730 03-Jan-2009 alfred

Sync with usb4bsd:

src/lib/libusb20/libusb20_desc.c

Make "libusb20_desc_foreach()" more readable.

src/sys/dev/usb2/controller/*.[ch]
src/sys/dev/usb2/core/*.[ch]

Implement support for USB power save for all HC's.

Implement support for Big-endian EHCI.

Move Huawei quirks back into "u3g" driver.

Improve device enumeration.

src/sys/dev/usb2/ethernet/*[ch]

Patches for supporting new AXE Gigabit chipset.

src/sys/dev/usb2/serial/*[ch]

Fix IOCTL return code.

src/sys/dev/usb2/wlan/*[ch]

Sync with old USB stack.

Submitted by: hps


# 185290 25-Nov-2008 alfred

src/lib/libusb20/libusb20_compat01.c

Fix some issues about re-scanning of the devices.

src/lib/libusb20/libusb20_ugen20.c

Fix issue about libusb20 having to release the
USB transfers before doing a SET_CONFIG, else
the kernel will kill the file handle.

src/sys/dev/usb2/core/usb2_device.
src/sys/dev/usb2/core/usb2_generic.c
src/sys/dev/usb2/core/usb2_generic.h

Add support for U3G devices.
Improve and cleanup FIFO free handling.
Improve device re-enumeration.

src/sys/dev/usb2/core/usb2_msctest.c
src/sys/dev/usb2/core/usb2_msctest.h

Fix some problems in the USB Mass Storage Test.
Add Huawei vendor specific quirks.

src/sys/dev/usb2/core/usb2_request.c

Improve device re-enumeration.

src/sys/dev/usb2/ethernet/if_aue2.c
src/sys/dev/usb2/include/usb2_devid.h
src/sys/dev/usb2/include/usb2_devtable.h
src/sys/dev/usb2/quirk/usb2_quirk.c

Integrate changes from the old USB driver.

src/sys/dev/usb2/include/usb2_standard.h

Add definition of USB3.0 structures from USB.org.

src/sys/dev/usb2/serial/u3g2.c
src/sys/dev/usb2/serial/ugensa2.c
src/sys/modules/usb2/Makefile
src/sys/modules/usb2/serial_3g/Makefile

Import U3G driver.

Submitted by: Hans Petter Selasky (usb4bsd)