Home | History | Annotate | Download | only in usb
History log of /src/sys/dev/usb/u3g.c
RevisionDateAuthorComments
 1.45  04-Jul-2024  christos PR/58396: Reinhard Speyerer: u3g(4): add support for Sierra Wireless MC7304
devices
 1.44  13-Feb-2023  manu branches: 1.44.6;
Add support for ZTE MF112 and D-Link DWM222 3G USB modems
 1.43  07-Aug-2021  thorpej branches: 1.43.6;
Merge thorpej-cfargs2.
 1.42  24-Apr-2021  thorpej branches: 1.42.8;
Merge thorpej-cfargs branch:

Simplify and make extensible the config_search() / config_found() /
config_attach() interfaces: rather than having different variants for
which arguments you want pass along, just have a single call that
takes a variadic list of tag-value arguments.

Adjust all call sites:
- Simplify wherever possible; don't pass along arguments that aren't
actually needed.
- Don't be explicit about what interface attribute is attaching if
the device only has one. (More simplification.)
- Add a config_probe() function to be used in indirect configuiration
situations, making is visibly easier to see when indirect config is
in play, and allowing for future change in semantics. (As of now,
this is just a wrapper around config_match(), but that is an
implementation detail.)

Remove unnecessary or redundant interface attributes where they're not
needed.

There are currently 5 "cfargs" defined:
- CFARG_SUBMATCH (submatch function for direct config)
- CFARG_SEARCH (search function for indirect config)
- CFARG_IATTR (interface attribte)
- CFARG_LOCATORS (locators array)
- CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)

...and a sentinel value CFARG_EOL.

Add some extra sanity checking to ensure that interface attributes
aren't ambiguous.

Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark
ports to associate those device handles with device_t instance. This
will trickle trough to more places over time (need back-end for pre-OFW
Sun OBP; any others?).
 1.41  05-Jun-2020  skrll branches: 1.41.4;
Replace calls to usbd_device2interface_handle in u3g_match() and
u3g_attach() with the interface already passed in uiaa->uiaa_iface and
store the interface in sc->sc_iface for later use by u3g_open()/

Also skip Direct IP interfaces in u3g_match() to avoid potential side effects.

PR kern/55330
 1.40  15-Feb-2020  manu Add support for D-Link DWM-157 3G USB modem
 1.39  08-Feb-2020  maxv Introduce usbd_clear_endpoint_feature(), and dedup.
 1.38  07-Jan-2020  maxv branches: 1.38.2;
Localify, constify.
 1.37  09-May-2019  mrg branches: 1.37.2;
clean up ucom parents some more:
- it's always "bool sc_dying" now, with true/false
- heavy use of static functions
- remove all ucom parent ca_activate callbacks. they're never called.
- callbacks should generally do little to nothing if sc_dying is set
- open resources should be released in detach after setting sc_dying
- don't complain about usbd_abort_pipe() or usbd_close_pipe() failure
- when releasing resources, zero the softc member as well
- remove ucom_methods members no longer destined to be filled in
- generally, DPRINTF() before sc_dying short circuit
- use EIO when dying, not ENXIO or 0
- add some ucom_open() callbacks that simply return EIO if dying
 1.36  04-May-2019  mrg clean up ucom / ucom-parent interface slightly:

- document what the ucom_methods{} callbacks argument are and that
they are all optional.
- remove almost all methods being assigned to NULL, as they are all
C99 initialisers and thus don't need NULL assignments.
- ucom_get_status() callback always has lsr/msr pointers as valid.
remove all tests for not NULL in these functions.
 1.35  24-Jul-2018  msaitoh - USB_VENDOR_QUALCOMM -> USB_VENDOR_LG
- USB_VENDOR_4GSYSTEMS -> USB_VENDOR_LONGCHEER
 1.34  24-May-2017  christos branches: 1.34.2; 1.34.8; 1.34.10;
split the mode switch part of the u3g driver into a separate file so that
others can use it.
 1.33  04-May-2017  hauke Recognize the Sierra un2430 WWAN/GPS Module as found e.g. in HP's
Elitebook 2170p. Note the device will not do much without its
proprietary firmware loaded.
 1.32  23-Apr-2016  skrll branches: 1.32.8;
Merge nick-nhusb

- API / infrastructure changes to support memory management changes.
- Memory management improvements and bug fixes.
- HCDs should now be MP safe
- conversion to KERNHIST based debug
- FS/LS isoc support on ehci(4).
- conversion to kmem(9)
- Some USB 3 support - mostly from Takahiro HAYASHI (t-hash).
- interrupt transfers now get proper DMA operations
- general bug fixes
- kern/48308
- uhub status notification improvements
- umass(4) probe fix (applied to HEAD already)
- ohci(4) short transfer fix
 1.31  24-Sep-2014  christos branches: 1.31.2;
PR/49233: Ben Gergely: Add huawei e353 to u3g
(factor out some common code in the process)
 1.30  02-Sep-2013  christos branches: 1.30.4;
PR/48172: Reinhard Speyerer: u3g(4): add 4G Systems XS Stick W14 support
 1.29  03-Aug-2013  soren Add support for some new and old ZTE modems, some of which have a
SFF-8070i virtual installer CD instead of a SCSI class one.

Recent Huawei modems support (and in the case of the very latest models,
require) the use of a CDC NCM interface as an alternative to PPP. Avoid
attaching u3g to that interface.
 1.28  14-Mar-2013  nonaka branches: 1.28.6;
Add support for the Huawei E171 3G Modem.
Tested by Saifi Khan at http://mail-index.netbsd.org/netbsd-users/2013/03/14/msg012629.html
 1.27  01-Nov-2012  christos Match all pairs of bulkin-bulkout interfaces to ucom's, configuring multiple
ucoms per modem as they are available, instead of picking up the last bulkin
bulkout pair. This makes my Sierra U250 3G portion of the modem to work.
 1.26  05-Oct-2012  khorben Added the device id for the Huawei EM770W 3G modem to u3g(4)
Confirmed to work on a WeTab

ok christos@
 1.25  04-Aug-2012  nonaka branches: 1.25.2;
Match NTT DOCOMO L-02C.
 1.24  23-Dec-2011  jakllsch branches: 1.24.2;
Revert previous due to active usbmp branch(es).
 1.23  22-Dec-2011  jakllsch Adjust-away inconsistent and trailing whitespace.
 1.22  26-Nov-2011  nonaka branches: 1.22.2;
Add "Novatel Wireless Expedite EU850D/EU860D/EU870D" entry.

requested by http://mail-index.netbsd.org/tech-kern/2011/11/26/msg012002.html
 1.21  06-Nov-2011  christos PR/45156: Moritz Wilhelmy: XS Stick P14 amendment
 1.20  30-Sep-2011  christos branches: 1.20.2;
PR/45156: Moritz Wilhelmy: Add 4G Systems XS Stick P14 USB 3G modem support.
 1.19  24-Aug-2011  veego Add the Huawei 1750 id so it change to the 3G modem mode
 1.18  20-Jul-2011  apb Make u3g driver recognise Huawei E1820.
(u3ginit already recognised it.)
 1.17  10-Mar-2011  scw Match a Toshiba-branded version of Novatel's EU870D 3G/HSDPA WWAN Card.
 1.16  07-Aug-2010  christos branches: 1.16.2;
Fix for another 3g modem used by Cosmote in Greece. This is a ZTE MF636(?)
modem that requires ejecting the fake umass disk that contains the drivers
like the novatel one. Perhaps I should rename the novatel routine
usbd_scsi_eject() or something.
 1.15  19-Jun-2010  kardel add Huawei E1750 Mobile Broadband HSPA USB Stick
 1.14  17-Jun-2010  riz Add support for the Novatel Wireless U760 3g USB Modem. Tested
by Matthew Sporleder.
 1.13  14-Jun-2010  riz Sort u3g_devs by vendor/product. Also, remove duplicate
USB_PRODUCT_NOVATEL2_MERLINV620 entry. No functional change intended.
 1.12  14-Jun-2010  riz ugensa support for Sierra Wireless USB 305, from Andy Wallis
in PR#43468 .
 1.11  19-Feb-2010  pooka branches: 1.11.2;
Huawei K3765 requires another kind of magic to get it out of CD mode.
It also changes product id after being configured. Without this
change the device just lingers in u3ginit forever. With this change:

u3ginit0 at uhub0 port 1: Switching to 3G mode
u3ginit0: detached
u3ginit0: at uhub0 port 1 (addr 2) disconnected
u3g0 at uhub0 port 1 configuration 1 interface 0
ucom0 at u3g0 portno 0: 3G Modem
u3g1 at uhub0 port 1 configuration 1 interface 1
ucom1 at u3g1 portno 1: 3G Modem
u3g2 at uhub0 port 1 configuration 1 interface 2
ucom2 at u3g2 portno 2: 3G Modem
u3g3 at uhub0 port 1 configuration 1 interface 3
ucom3 at u3g3 portno 3: 3G Modem

(tested with rump)
 1.10  08-Feb-2010  snj Add ZTE MF626. From Marc Vertes in PR kern/41667.
 1.9  07-Jan-2010  martin branches: 1.9.2;
Split the u3g driver into two parts: u3ginit attaches to those devices
that only come as a umass device in the default configuration and
forces them to reinitialize in 3D mode and detach.
The u3g part attaches to individual interfaces for the 3G functionality,
leaving the umass interface(s) for that driver.
With this change I can use the MMC card in my Huawey stick (as well as
the integrated windows driver CD, which of course is pretty useless) and
the 3G modem at the same time.
Fixes PR 42577.
Code contributed anonymously, minor tweaks (and all bugs) by me.
 1.8  12-Nov-2009  dyoung Remove superfluous activation hook.
 1.7  29-May-2009  plunky add missing NetBSD RCS ID tags
 1.6  03-Jan-2009  yamt branches: 1.6.2; 1.6.4; 1.6.6;
remove extra semicolons.
 1.5  12-Dec-2008  tonnerre Remove { 0, 0 } from the list of u3g devices. This entry is no longer
required in modern device lists due to sizeof() tricks. However, keeping
it makes u3g attach to HP ServerWorks mice and keyboards.
 1.4  25-Oct-2008  christos branches: 1.4.2; 1.4.4;
The Sierra Wireless USBConnect 881 card presents itself as umass containing
the driver to be installed for it. We don't need this crap. Tell it to become
a modem.
 1.3  19-Oct-2008  joerg branches: 1.3.2;
Remove two devices that are handled by ubsa and might need special
handling from u3g until further reports. Move a number of data cards
from ugensa to u3g based on the FreeBSD list.
 1.2  18-Oct-2008  joerg Make u3g send an eject command to Novatel MC950D devices. Explicitly
attach as device for umass mode on MC950D and the Huawei devices to
supersede the umass quirk.
 1.1  10-Oct-2008  joerg branches: 1.1.2;
Add u3g(4) driver from FreeBSD. This driver provides better support for
3G datacards than ugensa and will replace the latter for the supported
devices.
 1.1.2.2  10-Oct-2008  skrll Sync with HEAD.
 1.1.2.1  10-Oct-2008  skrll file u3g.c was added on branch wrstuden-revivesa on 2008-10-10 22:33:10 +0000
 1.3.2.3  13-Dec-2008  haad Update haad-dm branch to haad-dm-base2.
 1.3.2.2  19-Oct-2008  haad Sync with HEAD.
 1.3.2.1  19-Oct-2008  haad file u3g.c was added on branch haad-dm on 2008-10-19 22:17:10 +0000
 1.4.4.1  22-Jan-2009  snj Pull up following revision(s) (requested by joerg in ticket #296):
sys/dev/usb/u3g.c: revision 1.5
Remove { 0, 0 } from the list of u3g devices. This entry is no longer
required in modern device lists due to sizeof() tricks. However, keeping
it makes u3g attach to HP ServerWorks mice and keyboards.
 1.4.2.1  19-Jan-2009  skrll Sync with HEAD.
 1.6.6.5  11-Aug-2010  yamt sync with head.
 1.6.6.4  11-Mar-2010  yamt sync with head
 1.6.6.3  20-Jun-2009  yamt sync with head
 1.6.6.2  04-May-2009  yamt sync with head.
 1.6.6.1  03-Jan-2009  yamt file u3g.c was added on branch yamt-nfs-mp on 2009-05-04 08:13:21 +0000
 1.6.4.1  23-Jul-2009  jym Sync with HEAD.
 1.6.2.2  17-Jan-2009  mjf Sync with HEAD.
 1.6.2.1  03-Jan-2009  mjf file u3g.c was added on branch mjf-devfs2 on 2009-01-17 13:29:09 +0000
 1.9.2.2  17-Aug-2010  uebayasi Sync with HEAD.
 1.9.2.1  30-Apr-2010  uebayasi Sync with HEAD.
 1.11.2.3  21-Apr-2011  rmind sync with head
 1.11.2.2  05-Mar-2011  rmind sync with head
 1.11.2.1  03-Jul-2010  rmind sync with head
 1.16.2.1  06-Jun-2011  jruoho Sync with HEAD.
 1.20.2.5  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.20.2.4  16-Jan-2013  yamt sync with (a bit old) head
 1.20.2.3  30-Oct-2012  yamt sync with head
 1.20.2.2  17-Apr-2012  yamt sync with head
 1.20.2.1  10-Nov-2011  yamt sync with head
 1.22.2.1  18-Feb-2012  mrg merge to -current.
 1.24.2.2  07-Sep-2013  bouyer Pull up following revision(s) (requested by dholland in ticket #937):
sys/dev/usb/u3g.c: revision 1.30
sys/dev/usb/usbdevs: revision 1.653
PR/48172: Reinhard Speyerer: u3g(4): add 4G Systems XS Stick W14 support
 1.24.2.1  11-Feb-2013  riz Pull up following revision(s) (requested by khorben in ticket #816):
sys/dev/usb/u3g.c: revision 1.26
Added the device id for the Huawei EM770W 3G modem to u3g(4)
Confirmed to work on a WeTab
ok christos@
 1.25.2.4  03-Dec-2017  jdolecek update from HEAD
 1.25.2.3  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.25.2.2  23-Jun-2013  tls resync from head
 1.25.2.1  20-Nov-2012  tls Resync to 2012-11-19 00:00:00 UTC
 1.28.6.2  18-May-2014  rmind sync with head
 1.28.6.1  28-Aug-2013  rmind sync with head
 1.30.4.2  05-Apr-2017  snj Pull up following revision(s) (requested by skrll in ticket #1395):
share/man/man4/axe.4: netbsd-7-nhusb
share/man/man4/axen.4: netbsd-7-nhusb
share/man/man4/cdce.4: netbsd-7-nhusb
share/man/man4/uaudio.4: netbsd-7-nhusb
share/man/man4/ucom.4: netbsd-7-nhusb
share/man/man4/uep.4: netbsd-7-nhusb
share/man/man4/urtw.4: netbsd-7-nhusb
share/man/man4/usb.4: netbsd-7-nhusb
share/man/man4/uyap.4: netbsd-7-nhusb
share/man/man4/xhci.4: netbsd-7-nhusb
share/man/man9/usbdi.9: netbsd-7-nhusb
sys/arch/amd64/conf/ALL: netbsd-7-nhusb
sys/arch/amd64/conf/GENERIC: netbsd-7-nhusb
sys/arch/amiga/dev/slhci_zbus.c: netbsd-7-nhusb
sys/arch/arm/allwinner/awin_otg.c: netbsd-7-nhusb
sys/arch/arm/allwinner/awin_usb.c: netbsd-7-nhusb
sys/arch/arm/amlogic/amlogic_dwctwo.c: netbsd-7-nhusb
sys/arch/arm/at91/at91ohci.c: netbsd-7-nhusb
sys/arch/arm/broadcom/bcm2835_dwctwo.c: netbsd-7-nhusb
sys/arch/arm/broadcom/bcm53xx_usb.c: netbsd-7-nhusb
sys/arch/arm/ep93xx/epohci.c: netbsd-7-nhusb
sys/arch/arm/gemini/obio_ehci.c: netbsd-7-nhusb
sys/arch/arm/imx/files.imx23: netbsd-7-nhusb
sys/arch/arm/imx/imxusb.c: netbsd-7-nhusb
sys/arch/arm/imx/imxusbreg.h: netbsd-7-nhusb
sys/arch/arm/omap/obio_ohci.c: netbsd-7-nhusb
sys/arch/arm/omap/omap3_ehci.c: netbsd-7-nhusb
sys/arch/arm/omap/omapl1x_ohci.c: netbsd-7-nhusb
sys/arch/arm/omap/tiotg.c: netbsd-7-nhusb
sys/arch/arm/s3c2xx0/ohci_s3c24x0.c: netbsd-7-nhusb
sys/arch/arm/samsung/exynos_usb.c: netbsd-7-nhusb
sys/arch/arm/xscale/pxa2x0_ohci.c: netbsd-7-nhusb
sys/arch/arm/zynq/zynq_usb.c: netbsd-7-nhusb
sys/arch/hpcarm/dev/nbp_slhci.c: netbsd-7-nhusb
sys/arch/hpcmips/dev/plumohci.c: netbsd-7-nhusb
sys/arch/i386/conf/ALL: netbsd-7-nhusb
sys/arch/i386/conf/GENERIC: netbsd-7-nhusb
sys/arch/i386/pci/gcscehci.c: netbsd-7-nhusb
sys/arch/luna68k/conf/GENERIC: netbsd-7-nhusb
sys/arch/mips/adm5120/dev/ahci.c: netbsd-7-nhusb
sys/arch/mips/adm5120/dev/ahcivar.h: netbsd-7-nhusb
sys/arch/mips/alchemy/dev/ohci_aubus.c: netbsd-7-nhusb
sys/arch/mips/atheros/dev/ehci_arbus.c: netbsd-7-nhusb
sys/arch/mips/atheros/dev/ohci_arbus.c: netbsd-7-nhusb
sys/arch/mips/conf/files.adm5120: netbsd-7-nhusb
sys/arch/mips/ralink/ralink_ehci.c: netbsd-7-nhusb
sys/arch/mips/ralink/ralink_ohci.c: netbsd-7-nhusb
sys/arch/mips/rmi/rmixl_ehci.c: netbsd-7-nhusb
sys/arch/mips/rmi/rmixl_ohci.c: netbsd-7-nhusb
sys/arch/playstation2/dev/ohci_sbus.c: netbsd-7-nhusb
sys/arch/powerpc/booke/dev/pq3ehci.c: netbsd-7-nhusb
sys/arch/powerpc/ibm4xx/dev/dwctwo_plb.c: netbsd-7-nhusb
sys/arch/x68k/dev/slhci_intio.c: netbsd-7-nhusb
sys/conf/files: netbsd-7-nhusb
sys/dev/cardbus/ehci_cardbus.c: netbsd-7-nhusb
sys/dev/cardbus/ohci_cardbus.c: netbsd-7-nhusb
sys/dev/cardbus/uhci_cardbus.c: netbsd-7-nhusb
sys/dev/ic/sl811hs.c: netbsd-7-nhusb
sys/dev/ic/sl811hsvar.h: netbsd-7-nhusb
sys/dev/isa/slhci_isa.c: netbsd-7-nhusb
sys/dev/marvell/ehci_mv.c: netbsd-7-nhusb
sys/dev/pci/ehci_pci.c: netbsd-7-nhusb
sys/dev/pci/ohci_pci.c: netbsd-7-nhusb
sys/dev/pci/uhci_pci.c: netbsd-7-nhusb
sys/dev/pci/xhci_pci.c: netbsd-7-nhusb
sys/dev/pcmcia/slhci_pcmcia.c: netbsd-7-nhusb
sys/dev/usb/Makefile.usbdevs: netbsd-7-nhusb
sys/dev/usb/TODO: netbsd-7-nhusb
sys/dev/usb/TODO.usbmp: netbsd-7-nhusb
sys/dev/usb/aubtfwl.c: netbsd-7-nhusb
sys/dev/usb/auvitek.c: netbsd-7-nhusb
sys/dev/usb/auvitek_audio.c: netbsd-7-nhusb
sys/dev/usb/auvitek_dtv.c: netbsd-7-nhusb
sys/dev/usb/auvitek_i2c.c: netbsd-7-nhusb
sys/dev/usb/auvitek_video.c: netbsd-7-nhusb
sys/dev/usb/auvitekvar.h: netbsd-7-nhusb
sys/dev/usb/ehci.c: netbsd-7-nhusb
sys/dev/usb/ehcireg.h: netbsd-7-nhusb
sys/dev/usb/ehcivar.h: netbsd-7-nhusb
sys/dev/usb/emdtv.c: netbsd-7-nhusb
sys/dev/usb/emdtv_dtv.c: netbsd-7-nhusb
sys/dev/usb/emdtv_ir.c: netbsd-7-nhusb
sys/dev/usb/emdtvvar.h: netbsd-7-nhusb
sys/dev/usb/ezload.c: netbsd-7-nhusb
sys/dev/usb/ezload.h: netbsd-7-nhusb
sys/dev/usb/files.usb: netbsd-7-nhusb
sys/dev/usb/hid.c: netbsd-7-nhusb
sys/dev/usb/hid.h: netbsd-7-nhusb
sys/dev/usb/if_athn_usb.c: netbsd-7-nhusb
sys/dev/usb/if_athn_usb.h: netbsd-7-nhusb
sys/dev/usb/if_atu.c: netbsd-7-nhusb
sys/dev/usb/if_atureg.h: netbsd-7-nhusb
sys/dev/usb/if_aue.c: netbsd-7-nhusb
sys/dev/usb/if_auereg.h: netbsd-7-nhusb
sys/dev/usb/if_axe.c: netbsd-7-nhusb
sys/dev/usb/if_axen.c: netbsd-7-nhusb
sys/dev/usb/if_axenreg.h: netbsd-7-nhusb
sys/dev/usb/if_axereg.h: netbsd-7-nhusb
sys/dev/usb/if_cdce.c: netbsd-7-nhusb
sys/dev/usb/if_cdcereg.h: netbsd-7-nhusb
sys/dev/usb/if_cue.c: netbsd-7-nhusb
sys/dev/usb/if_cuereg.h: netbsd-7-nhusb
sys/dev/usb/if_kue.c: netbsd-7-nhusb
sys/dev/usb/if_kuereg.h: netbsd-7-nhusb
sys/dev/usb/if_otus.c: netbsd-7-nhusb
sys/dev/usb/if_otusvar.h: netbsd-7-nhusb
sys/dev/usb/if_rum.c: netbsd-7-nhusb
sys/dev/usb/if_rumreg.h: netbsd-7-nhusb
sys/dev/usb/if_rumvar.h: netbsd-7-nhusb
sys/dev/usb/if_run.c: netbsd-7-nhusb
sys/dev/usb/if_runvar.h: netbsd-7-nhusb
sys/dev/usb/if_smsc.c: netbsd-7-nhusb
sys/dev/usb/if_smscreg.h: netbsd-7-nhusb
sys/dev/usb/if_smscvar.h: netbsd-7-nhusb
sys/dev/usb/if_udav.c: netbsd-7-nhusb
sys/dev/usb/if_udavreg.h: netbsd-7-nhusb
sys/dev/usb/if_upgt.c: netbsd-7-nhusb
sys/dev/usb/if_upgtvar.h: netbsd-7-nhusb
sys/dev/usb/if_upl.c: netbsd-7-nhusb
sys/dev/usb/if_ural.c: netbsd-7-nhusb
sys/dev/usb/if_uralreg.h: netbsd-7-nhusb
sys/dev/usb/if_uralvar.h: netbsd-7-nhusb
sys/dev/usb/if_url.c: netbsd-7-nhusb
sys/dev/usb/if_urlreg.h: netbsd-7-nhusb
sys/dev/usb/if_urndis.c: netbsd-7-nhusb
sys/dev/usb/if_urndisreg.h: netbsd-7-nhusb
sys/dev/usb/if_urtw.c: netbsd-7-nhusb
sys/dev/usb/if_urtwn.c: netbsd-7-nhusb
sys/dev/usb/if_urtwn_data.h: netbsd-7-nhusb
sys/dev/usb/if_urtwnreg.h: netbsd-7-nhusb
sys/dev/usb/if_urtwnvar.h: netbsd-7-nhusb
sys/dev/usb/if_urtwreg.h: netbsd-7-nhusb
sys/dev/usb/if_zyd.c: netbsd-7-nhusb
sys/dev/usb/if_zydreg.h: netbsd-7-nhusb
sys/dev/usb/irmce.c: netbsd-7-nhusb
sys/dev/usb/moscom.c: netbsd-7-nhusb
sys/dev/usb/motg.c: netbsd-7-nhusb
sys/dev/usb/motgvar.h: netbsd-7-nhusb
sys/dev/usb/ohci.c: netbsd-7-nhusb
sys/dev/usb/ohcireg.h: netbsd-7-nhusb
sys/dev/usb/ohcivar.h: netbsd-7-nhusb
sys/dev/usb/pseye.c: netbsd-7-nhusb
sys/dev/usb/slurm.c: netbsd-7-nhusb
sys/dev/usb/stuirda.c: netbsd-7-nhusb
sys/dev/usb/u3g.c: netbsd-7-nhusb
sys/dev/usb/uark.c: netbsd-7-nhusb
sys/dev/usb/uatp.c: netbsd-7-nhusb
sys/dev/usb/uaudio.c: netbsd-7-nhusb
sys/dev/usb/uberry.c: netbsd-7-nhusb
sys/dev/usb/ubsa.c: netbsd-7-nhusb
sys/dev/usb/ubsa_common.c: netbsd-7-nhusb
sys/dev/usb/ubsavar.h: netbsd-7-nhusb
sys/dev/usb/ubt.c: netbsd-7-nhusb
sys/dev/usb/uchcom.c: netbsd-7-nhusb
sys/dev/usb/ucom.c: netbsd-7-nhusb
sys/dev/usb/ucomvar.h: netbsd-7-nhusb
sys/dev/usb/ucycom.c: netbsd-7-nhusb
sys/dev/usb/udl.c: netbsd-7-nhusb
sys/dev/usb/udl.h: netbsd-7-nhusb
sys/dev/usb/udsbr.c: netbsd-7-nhusb
sys/dev/usb/udsir.c: netbsd-7-nhusb
sys/dev/usb/uep.c: netbsd-7-nhusb
sys/dev/usb/uftdi.c: netbsd-7-nhusb
sys/dev/usb/uftdireg.h: netbsd-7-nhusb
sys/dev/usb/ugen.c: netbsd-7-nhusb
sys/dev/usb/ugensa.c: netbsd-7-nhusb
sys/dev/usb/uhci.c: netbsd-7-nhusb
sys/dev/usb/uhcireg.h: netbsd-7-nhusb
sys/dev/usb/uhcivar.h: netbsd-7-nhusb
sys/dev/usb/uhid.c: netbsd-7-nhusb
sys/dev/usb/uhidev.c: netbsd-7-nhusb
sys/dev/usb/uhidev.h: netbsd-7-nhusb
sys/dev/usb/uhmodem.c: netbsd-7-nhusb
sys/dev/usb/uhso.c: netbsd-7-nhusb
sys/dev/usb/uhub.c: netbsd-7-nhusb
sys/dev/usb/uipad.c: netbsd-7-nhusb
sys/dev/usb/uipaq.c: netbsd-7-nhusb
sys/dev/usb/uirda.c: netbsd-7-nhusb
sys/dev/usb/uirdavar.h: netbsd-7-nhusb
sys/dev/usb/ukbd.c: netbsd-7-nhusb
sys/dev/usb/ukbdmap.c: netbsd-7-nhusb
sys/dev/usb/ukyopon.c: netbsd-7-nhusb
sys/dev/usb/ukyopon.h: netbsd-7-nhusb
sys/dev/usb/ulpt.c: netbsd-7-nhusb
sys/dev/usb/umass.c: netbsd-7-nhusb
sys/dev/usb/umass_isdata.c: netbsd-7-nhusb
sys/dev/usb/umass_isdata.h: netbsd-7-nhusb
sys/dev/usb/umass_quirks.c: netbsd-7-nhusb
sys/dev/usb/umass_quirks.h: netbsd-7-nhusb
sys/dev/usb/umass_scsipi.c: netbsd-7-nhusb
sys/dev/usb/umass_scsipi.h: netbsd-7-nhusb
sys/dev/usb/umassvar.h: netbsd-7-nhusb
sys/dev/usb/umcs.c: netbsd-7-nhusb
sys/dev/usb/umct.c: netbsd-7-nhusb
sys/dev/usb/umidi.c: netbsd-7-nhusb
sys/dev/usb/umidi_quirks.c: netbsd-7-nhusb
sys/dev/usb/umidi_quirks.h: netbsd-7-nhusb
sys/dev/usb/umodem.c: netbsd-7-nhusb
sys/dev/usb/umodem_common.c: netbsd-7-nhusb
sys/dev/usb/umodemvar.h: netbsd-7-nhusb
sys/dev/usb/ums.c: netbsd-7-nhusb
sys/dev/usb/uplcom.c: netbsd-7-nhusb
sys/dev/usb/urio.c: netbsd-7-nhusb
sys/dev/usb/urio.h: netbsd-7-nhusb
sys/dev/usb/usb.c: netbsd-7-nhusb
sys/dev/usb/usb.h: netbsd-7-nhusb
sys/dev/usb/usb_mem.c: netbsd-7-nhusb
sys/dev/usb/usb_mem.h: netbsd-7-nhusb
sys/dev/usb/usb_quirks.c: netbsd-7-nhusb
sys/dev/usb/usb_quirks.h: netbsd-7-nhusb
sys/dev/usb/usb_subr.c: netbsd-7-nhusb
sys/dev/usb/usbdevices.config: netbsd-7-nhusb
sys/dev/usb/usbdevs: netbsd-7-nhusb
sys/dev/usb/usbdevs.h: netbsd-7-nhusb
sys/dev/usb/usbdevs_data.h: netbsd-7-nhusb
sys/dev/usb/usbdi.c: netbsd-7-nhusb
sys/dev/usb/usbdi.h: netbsd-7-nhusb
sys/dev/usb/usbdi_util.c: netbsd-7-nhusb
sys/dev/usb/usbdi_util.h: netbsd-7-nhusb
sys/dev/usb/usbdivar.h: netbsd-7-nhusb
sys/dev/usb/usbhid.h: netbsd-7-nhusb
sys/dev/usb/usbhist.h: netbsd-7-nhusb
sys/dev/usb/usbroothub.c: netbsd-7-nhusb
sys/dev/usb/usbroothub.h: netbsd-7-nhusb
sys/dev/usb/usbroothub_subr.c: delete
sys/dev/usb/usbroothub_subr.h: delete
sys/dev/usb/uscanner.c: netbsd-7-nhusb
sys/dev/usb/uslsa.c: netbsd-7-nhusb
sys/dev/usb/usscanner.c: netbsd-7-nhusb
sys/dev/usb/ustir.c: netbsd-7-nhusb
sys/dev/usb/uthum.c: netbsd-7-nhusb
sys/dev/usb/utoppy.c: netbsd-7-nhusb
sys/dev/usb/uts.c: netbsd-7-nhusb
sys/dev/usb/uvideo.c: netbsd-7-nhusb
sys/dev/usb/uvisor.c: netbsd-7-nhusb
sys/dev/usb/uvscom.c: netbsd-7-nhusb
sys/dev/usb/uyap.c: netbsd-7-nhusb
sys/dev/usb/uyap_firmware.h: netbsd-7-nhusb
sys/dev/usb/uyurex.c: netbsd-7-nhusb
sys/dev/usb/x1input_rdesc.h: netbsd-7-nhusb
sys/dev/usb/xhci.c: netbsd-7-nhusb
sys/dev/usb/xhcireg.h: netbsd-7-nhusb
sys/dev/usb/xhcivar.h: netbsd-7-nhusb
sys/dev/usb/xinput_rdesc.h: netbsd-7-nhusb
sys/external/bsd/common/conf/files.linux: netbsd-7-nhusb
sys/external/bsd/common/include/linux/err.h: netbsd-7-nhusb
sys/external/bsd/common/include/linux/kernel.h: netbsd-7-nhusb
sys/external/bsd/common/include/linux/workqueue.h: netbsd-7-nhusb
sys/external/bsd/common/linux/linux_work.c: netbsd-7-nhusb
sys/external/bsd/drm2/dist/drm/radeon/atombios_encoders.c: netbsd-7-nhusb
sys/external/bsd/drm2/dist/drm/radeon/radeon_legacy_encoders.c: netbsd-7-nhusb
sys/external/bsd/drm2/drm/files.drmkms: netbsd-7-nhusb
sys/external/bsd/drm2/i915drm/files.i915drmkms: netbsd-7-nhusb
sys/external/bsd/drm2/include/linux/err.h: delete
sys/external/bsd/drm2/include/linux/workqueue.h: delete
sys/external/bsd/drm2/linux/files.drmkms_linux: netbsd-7-nhusb
sys/external/bsd/drm2/linux/linux_work.c: delete
sys/external/bsd/dwc2/dwc2.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dwc2.h: netbsd-7-nhusb
sys/external/bsd/dwc2/dwc2var.h: netbsd-7-nhusb
sys/external/bsd/dwc2/dwctwo2netbsd: netbsd-7-nhusb
sys/external/bsd/dwc2/conf/files.dwc2: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_core.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_core.h: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_coreintr.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hcd.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hcd.h: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hcdddma.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hcdintr.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hcdqueue.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hw.h: netbsd-7-nhusb
sys/modules/drmkms_linux/Makefile: netbsd-7-nhusb
sys/modules/i915drmkms/Makefile: netbsd-7-nhusb
sys/rump/dev/lib/libugenhc/ugenhc.c: netbsd-7-nhusb
sys/rump/dev/lib/libusb/Makefile: netbsd-7-nhusb
sys/rump/dev/lib/libusb/USB.ioconf: netbsd-7-nhusb
sys/rump/dev/lib/libusb/usb_at_ugenhc.c: delete
sys/rump/dev/lib/libusb/opt/opt_usb.h: delete
sys/rump/dev/lib/libusb/opt/opt_usbverbose.h: delete
sys/sys/mbuf.h: netbsd-7-nhusb
usr.sbin/usbdevs/usbdevs.8: netbsd-7-nhusb
usr.sbin/usbdevs/usbdevs.c: netbsd-7-nhusb
Merge netbsd-7-nhusb:
- API / infrastructure changes to support memory management changes.
- Memory management improvements and bug fixes.
- HCDs should now be MP safe
- conversion to KERNHIST based debug
- FS/LS isoc support on ehci(4).
- conversion to kmem(9)
- Some USB 3 support - mostly from Takahiro HAYASHI (t-hash).
- interrupt transfers now get proper DMA operations
- general bug fixes
- kern/48308
- uhub status notification improvements
- umass(4) probe fix (applied to HEAD already)
- ohci(4) short transfer fix
- Change the SOFTINT level from NET to SERIAL for the USB softint handler.
This gives the callback a chance of running when another softint handler
at SOFTINT_NET has blocked holding a lock, e.g. softnet_lock and most of
the network stack.
- kern/49065 - ifconfig tun0 ... sequence locks up system / lockup:
softnet_lock held across usb xfr
- kern/50491 - unkillable wait in usbd_transfer while using usmsc0
on raspberry pi 2
- kern/51395 - USB Ethernet makes xhci hang
- Various improvements to slhci(4)
- Various improvements to dwc2(4)
 1.30.4.1  15-Oct-2014  martin branches: 1.30.4.1.4;
Pull up following revision(s) (requested by christos in ticket #142):
sys/dev/usb/u3g.c: revision 1.31
sys/dev/usb/usbdevs: revision 1.681
sys/dev/usb/usbdevs: revision 1.682
PR/49233: Ben Gergely: Add huawei e353 to u3g
(factor out some common code in the process)
 1.30.4.1.4.1  06-Sep-2016  skrll First pass at netbsd-7 updated with USB code from HEAD
 1.31.2.12  28-Aug-2017  skrll Sync with HEAD
 1.31.2.11  16-Apr-2016  skrll Prefix ucom_attach_args struct members with ucaa_ and rename variables
for consistency.

No functional change.
 1.31.2.10  06-Oct-2015  skrll Move from usbd_{alloc,free}_xfer and usbd_{alloc,free}_buffer to
usbd_{create,destroy}_xfer. The API change will allow future changes
to HCDs to simplify the transfer resource allocation and activation.

Several devices tested including ucom, umass, smsc, uvideo, and uaudio.
 1.31.2.9  21-Mar-2015  skrll Add prefixes to attach_arg structure member names. No functional change.
 1.31.2.8  19-Mar-2015  skrll Do the same as OpenBSD and get rid of the *_handle typedefs and use
plain structures insteads
 1.31.2.7  23-Dec-2014  skrll KNF. No brackets around return value.
 1.31.2.6  06-Dec-2014  skrll Use c99 designated initialisers for ucom_methods structs.

No functional change.
 1.31.2.5  05-Dec-2014  skrll KNF. Remove ( ) from return statements.
 1.31.2.4  03-Dec-2014  skrll Replace malloc(9) with kmem(9)
 1.31.2.3  03-Dec-2014  skrll The grand renaming of structure members.

No functional change.
 1.31.2.2  30-Nov-2014  skrll Whitespace
 1.31.2.1  30-Nov-2014  skrll Use C99 types. u_int{8,16,32,64}_t to uint{8,16,32,64}_t.

No functional change.
 1.32.8.1  11-May-2017  pgoyette Sync with HEAD
 1.34.10.2  08-Apr-2020  martin Merge changes from current as of 20200406
 1.34.10.1  10-Jun-2019  christos Sync with HEAD
 1.34.8.1  28-Jul-2018  pgoyette Sync with HEAD
 1.34.2.1  27-Feb-2020  martin Pull up following revision(s) (requested by manu in ticket #1508):

sys/dev/usb/usbdevs: revision 1.776
sys/dev/usb/u3g.c: revision 1.40
sys/dev/usb/umodeswitch.c: revision 1.5

Add UE version of D-Link DWM-157
-
Add support for D-Link DWM-157 3G USB modem
 1.37.2.3  14-Feb-2023  martin Pull up following revision(s) (requested by manu in ticket #1594):

sys/dev/usb/u3g.c: revision 1.44

Add support for ZTE MF112 and D-Link DWM222 3G USB modems
 1.37.2.2  07-Jun-2020  martin Pull up following revision(s) (requested by skrll in ticket #948):

sys/dev/usb/ugensa.c: revision 1.42
sys/dev/usb/u3g.c: revision 1.41

Remove duplicated USB_VENDOR_SIERRA USB_PRODUCT_SIERRA_USB305 entry
PR kern/55329

Replace calls to usbd_device2interface_handle in u3g_match() and
u3g_attach() with the interface already passed in uiaa->uiaa_iface and
store the interface in sc->sc_iface for later use by u3g_open()/

Also skip Direct IP interfaces in u3g_match() to avoid potential side
effects.

PR kern/55330
 1.37.2.1  27-Feb-2020  martin Pull up following revision(s) (requested by manu in ticket #719):

sys/dev/usb/usbdevs: revision 1.776
sys/dev/usb/u3g.c: revision 1.40
sys/dev/usb/umodeswitch.c: revision 1.5

Add UE version of D-Link DWM-157
-
Add support for D-Link DWM-157 3G USB modem
 1.38.2.1  29-Feb-2020  ad Sync with head.
 1.41.4.2  22-Mar-2021  thorpej Audit CFARG_IATTR in config_found() calls, and remove it in situations
where the interface attribute is not ambiguous.
 1.41.4.1  22-Mar-2021  thorpej Mechanical conversion of config_found_sm_loc() -> config_found().
CFARG_IATTR usage needs to be audited.
 1.42.8.1  04-Aug-2021  thorpej Adapt to CFARGS().
 1.43.6.1  14-Feb-2023  martin Pull up following revision(s) (requested by manu in ticket #85):

sys/dev/usb/u3g.c: revision 1.44

Add support for ZTE MF112 and D-Link DWM222 3G USB modems
 1.44.6.1  02-Aug-2025  perseant Sync with HEAD

RSS XML Feed