Home | History | Annotate | Download | only in man4
History log of /src/share/man/man4/usb.4
RevisionDateAuthorComments
 1.124  01-Apr-2025  nia usb.4: Add ncm(4) to the list of wired network devices
 1.123  23-Dec-2024  nia usb.4: add video devices section

this adds missing entries for uvideo(4) and pseye(4)
 1.122  10-Jul-2022  nia Add a manual page for udl(4)
 1.121  08-Jul-2022  nia Add a man page for slurm(4)
 1.120  08-Jul-2022  nia Update the usb(4) manual page with some missing devices
 1.119  29-Oct-2021  nia Add some missing device drivers to the lists.

From bobs at thelibertytree.org, thanks!
 1.118  29-Jun-2021  nia Remove uscanner(4) driver

This exists for compatibility with a Linux interface which was apparently
deprecated in Linux 2.6. There are various mailing list threads going
back to 2004 where the usefulness of this driver is discussed, but
the conclusion is that scanner software has all moved to using ugen(4)
instead, and enabling this driver will not help you scan things.
 1.117  27-Mar-2021  nia Add uxrcom(4)
 1.116  26-Feb-2021  nia usb.4: add usmsc(4)
 1.115  26-Feb-2021  nia usb.4: add mue(4)
 1.114  26-Feb-2021  nia usb.4: fix year
 1.113  26-Feb-2021  nia usb.4: add mos(4)
 1.112  16-May-2020  maya Remove uyap, USB YAP phone firmware loader.

And the associated ezload EZ-USB code, which is only used by uyap.
It could theoretically be used by other drivers, but none of them are
in tree.

I suspect that this device isn't in use, as phone technology has improved
a lot since 2001 when uyap(4) was added to the tree.

Proposed with no objections on netbsd-users on 13 April 2020
 1.111  29-Jan-2020  maya remove urio(4), a driver for the Rio500 MP3 player.

At this point it is highly unlikely this 1999 device still has users,
but it still comes up in the context of maxv's USB-fuzzing (and any device
could pretend to be a urio(4)), so it's best to get rid of it.

Renamed all major entries to obsolete, as was done in previous removals.

This still requires an update to sanitizers, but they're located in
"external", perhaps it should be first committed upstream?

Proposed on tech-kern a month ago.
 1.110  18-Sep-2018  mrg remove usb(4)'s "flags 1" code. it has been dead for a while,
as it runs during the interrupts part of configuration now,
and all the devices try attach as early as possible, including
any root or boot required disk or keyboard device, which is
what this flag was for.
 1.109  30-Sep-2017  wiz branches: 1.109.2; 1.109.4;
Remove Tn. Comment out xref to non-existent udsir(4).
 1.108  30-Sep-2017  sevan Correct document date.
Add uberry(4) to miscellaneous section.
 1.107  30-Sep-2017  sevan Include uipad(4) in miscellaneous section.
 1.106  03-Jul-2017  wiz Remove workaround for ancient HTML generation code.
 1.105  21-Jan-2017  jdolecek branches: 1.105.4;
xref xhci(4)
 1.104  23-Jan-2014  wiz branches: 1.104.4; 1.104.8; 1.104.10; 1.104.12;
Spell out month name.
 1.103  23-Jan-2014  ryoon Add urndis(4), bump date, and copyright year
 1.102  26-Oct-2013  nonaka Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.
 1.101  28-May-2013  kiyohara Add udsir.
 1.100  30-May-2012  wiz branches: 1.100.2;
Bump date for previous.
 1.99  30-May-2012  nonaka Add a driver for Ralink Technology RT2700U/RT2800U/RT3000U USB IEEE
802.11a/b/g/n wireless network devices, ported from OpenBSD by FUKAUMI Naoki,
arranged by me.
 1.98  25-Mar-2012  wiz Bump date for previous.
 1.97  25-Mar-2012  nonaka Added urtwn(4), a driver for Realtek RTL8188CU/RTL8192CU USB IEEE 802.11b/g/n wireless network devices.
 1.96  22-Jan-2012  wiz branches: 1.96.2;
Bump date for previous.
 1.95  22-Jan-2012  nonaka fix upgt(4) entry.
 1.94  22-Jan-2012  nonaka Added upgt(4) at Wireless network interfaces.
 1.93  20-Sep-2011  jym branches: 1.93.2;
Use mdoc(7) references for links to specifications. While here, fix
URLs for USB device class spec documents, and bump date.
 1.92  22-Mar-2010  joerg branches: 1.92.2;
Use .In instead of .Aq Pa for header files.
 1.91  18-May-2009  snj Fix some typos and bad wording. From Raphael Langerhorst in
PR misc/35213, plus two small nits from me.
 1.90  04-May-2009  wiz New sentence, new line.
 1.89  10-Apr-2009  joerg Add missing quote. Use paragraphs instead of .br.
 1.88  30-Apr-2008  martin branches: 1.88.6;
Convert TNF licenses to new 2 clause variant
 1.87  25-Mar-2008  apb branches: 1.87.2; 1.87.4;
Reference stuirda(4), which now exists. (Inspired by revision 1.86.)
 1.86  24-Mar-2008  xtraeme Remove a commented out line that was causing a warning.
 1.85  24-Mar-2008  xtraeme Separate the device list in different sections, and update the list
to match current reality in the src tree.

Inspired by the OpenBSD's usb(4) manpage.
 1.84  21-Jan-2008  ichiro add full support device driver for Huawei E220 wireless modem

PR/37692 from Yojiro UO
---
uhmodem: device driver for huawei 3G wireless modem

* what it is?

A device driver for huawei 3G wireless modem, E220 and its valiations.

The devices are very simuler to ubsa device, but they need special care
to use as modem device.
This patch introduce "uhmodem (USB Huawei modem)" for the devices.
A uhmodem device has two com devices and one USB mass strage device.
The driver enable to use all of them.

* dmesg:
uhmodem0 at uhub0 port 1 configuration 1 interface 0
uhmodem0: HUAWEI Technologies HUAWEI Mobile, rev 1.10/0.00, addr 2
uhmodem0: mass storage only mode, reattach to enable modem
uhmodem0: at uhub0 port 1 (addr 2) disconnected
uhmodem0 detached
uhmodem0 at uhub0 port 1 configuration 1 interface 0
uhmodem0: HUAWEI Technologies HUAWEI Mobile, rev 1.10/0.00, addr 2
ucom0 at uhmodem0 portno 0: modem
ucom1 at uhmodem0 portno 1: monitor
umass0 at uhub0 port 1 configuration 1 interface 2
umass0: HUAWEI Technologies HUAWEI Mobile, rev 1.10/0.00, addr 2
umass0: using SCSI over Bulk-Only
scsibus0 at umass0: 2 targets, 1 lun per target
cd0 at scsibus0 target 0 lun 0: <HUAWEI, Mass Storage, 2.31> cdrom removable
 1.83  21-Aug-2007  kiyohara branches: 1.83.2;
Add some devices.
 1.82  12-Jul-2007  xtraeme New udav(4) device, from Julian Suschlik via current-users@.
 1.81  03-Apr-2006  scw Add a kernel driver and userland program for the Topfield TF5000PVR range
of digital video recorders popular in Europe and Australia.

These devices have a USB client port which can be used to upload and
download recordings (and other files, such as MIPS binaries for execution
on the DVR's CPU) to/from their internal hard disk, in addition to some
other operations on files and directories.
 1.80  26-Dec-2005  perry u_intN_t -> uintN_t
 1.79  10-Sep-2005  wiz Bump date for 1.77.
 1.78  09-Sep-2005  drochner -avoid references to the cardbus "dev" locator, this doesn't make
sense technically and should be removed
 1.77  29-Aug-2005  gson Update description of struct usb_device_info to match the current
definition in usb.h revision 1.72.
 1.76  30-Jul-2005  skrll Add a driver for Cypress microcontroller based USB serial adapters.

XXX hw flow control is not supported.
 1.75  24-Jul-2005  augustss Document 'uhci at cardbus'. From FUKAUMI Naoki.
 1.74  20-Jun-2005  peter Change all .Xr config 8 to .Xr config 1, following the recent move of
config from usr.sbin -> usr.bin.

Reviewed by wiz.
 1.73  16-Apr-2005  wiz Mention ukyopon.
 1.72  24-Oct-2004  wiz branches: 1.72.2;
Fix typo in Dd argument.
 1.71  23-Oct-2004  augustss s/uax/axe/
 1.70  22-Oct-2004  augustss Mention cdce(4).
 1.69  04-Oct-2004  rumble Removed accidental repetitious words.
 1.68  25-May-2004  wiz Add xrefs to uep(4).
 1.67  11-May-2004  wiz Drop trailing whitespace.
 1.66  11-May-2004  wiz Various fixes from Sergey Svishchev svs at ropnet ru in private mail.
Some additional "new sentence, new line" changes while I was there.
 1.65  08-May-2004  jdolecek fix description of usb_device_info structure - members are prefixed
by udi_, and adapt to udi_lowspeed -> udi_speed member change

fix usb_device_stats - there is uds_ prefix

use #include <dev/usb/usb.h> also in USB CONTROLLER INTERFACE section

bump date
 1.64  07-Jan-2004  wiz branches: 1.64.2;
Bump date for previous.
 1.63  07-Jan-2004  augustss Document the kernel threads.
 1.62  06-May-2003  wiz Update URL. From Leandro Costa via jmc@openbsd.
 1.61  30-Mar-2003  wiz Consistent spelling of "RS-232".
 1.60  16-Feb-2003  augustss Add uax(4) man page.
 1.59  01-Jan-2003  augustss Fix a typo pointed out by Urban Boquist.
 1.58  08-Oct-2002  augustss Add ubsa(4).
 1.57  27-Sep-2002  wiz Mention various *VERBOSE kernel options in the corresponding man pages.
From Julio Merino in misc/17637.
Bump dates.
 1.56  20-Aug-2002  wiz Sort SEE ALSO.
 1.55  11-Aug-2002  augustss Add another line about slhci.
 1.54  11-Aug-2002  isaki Add manual page of slhci(4)
 1.53  25-Jul-2002  wiz The man page claims they are sorted by driver name, so sort them by driver
name.
 1.52  12-Jun-2002  wiz There's no usb(3); remove Xrefs to it.
 1.51  13-May-2002  ichiro branches: 1.51.2;
s/RL8150/RTL8150
 1.50  02-Apr-2002  augustss Xref urlphy.
 1.49  28-Mar-2002  ichiro add url(4)
 1.48  19-Mar-2002  augustss Add uvscom(4).
 1.47  06-Mar-2002  wiz Make DESCRIPTION sections (mostly by renaming non-standard section headers).
[See bin/14591 for a reason why we should have them.]
 1.46  13-Feb-2002  ross Generate <>& symbolically. I'm avoiding .../dist/... directories for now.
 1.45  03-Jan-2002  augustss Xref ustir(4).
 1.44  02-Jan-2002  augustss Add udsbr(4).
 1.43  29-Dec-2001  wiz Sort SEE ALSO.
 1.42  29-Dec-2001  augustss Xref uhidev(4).
 1.41  12-Dec-2001  wiz Fix copyright line.
 1.40  12-Dec-2001  augustss Add uirda(4).
 1.39  18-Nov-2001  wiz Sort SEE ALSO.
 1.38  16-Nov-2001  augustss Add a man page for ehci(4) despite the driver not being finished yet.
 1.37  11-Sep-2001  wiz Fix paragraph problems, sort sections, sort Xrefs in SEE ALSO, and other
miscellaneous fixes.
 1.36  10-Jun-2001  wiz ispell, whitespace and punctuation.
 1.35  28-Mar-2001  ichiro add man file of umct driver
 1.34  02-Feb-2001  augustss Mention umidi in device list.
 1.33  31-Jan-2001  augustss Add umidi(4).
 1.32  23-Jan-2001  augustss Add and xfer uplcom(4).
 1.31  11-Jan-2001  augustss Xref usscanner(4).
 1.30  24-Sep-2000  augustss Document the USB event API..
 1.29  23-Sep-2000  augustss Xref urio(4).
 1.28  23-Sep-2000  augustss Xref uscanner(4).
 1.27  09-Jun-2000  enami Replace unreachable url with reachable one.
 1.26  13-May-2000  mycroft branches: 1.26.2;
GC spurious blank lines.
 1.25  14-Apr-2000  augustss Add uftdi(4) man page.
Update usb(4) man page to be closer to reality.
 1.24  30-Mar-2000  augustss Xref uvisor(4).
 1.23  16-Jan-2000  augustss Add references to aue, cue, and kue.
 1.22  22-Dec-1999  augustss Use the flags `locator' to govern if devices are detected early or
late during cold boot.
 1.21  06-Dec-1999  augustss Fix some typos, xrefs, etc.
 1.20  23-Nov-1999  augustss Add device list.
 1.19  14-Nov-1999  augustss Add a rudimentary cardbus man page.
 1.18  08-Nov-1999  augustss Note the ohci attachment to cardbus.
 1.17  09-Sep-1999  augustss branches: 1.17.4;
Mention uaudio(4).
 1.16  29-Aug-1999  augustss Note addition of umass driver.
 1.15  29-Jul-1999  augustss Sync with reality.
 1.14  16-May-1999  augustss For consistency with USB docs, s/revision/release/
 1.13  16-May-1999  augustss Document vendor, product, release locators.
 1.12  11-May-1999  augustss Xref usb(3).
 1.11  13-Apr-1999  augustss Make the copyrights conform to the standard.
 1.10  14-Jan-1999  augustss branches: 1.10.2;
Add a reference to the USB documentation web site.
 1.9  14-Jan-1999  fair Document worked over for mdoc(7) and [nt]roff problems; also corrected
a few spelling errors. It would be nice to get a reference (authors, title,
date) to the proper USB specification in the SEE ALSO section.
 1.8  10-Dec-1998  augustss Fix typos.
 1.7  08-Dec-1998  augustss New USB locators added.
 1.6  07-Dec-1998  augustss Mention the USB include files.
 1.5  25-Oct-1998  augustss Add ohci and uhci man pages.
 1.4  22-Oct-1998  augustss Fix typos.
 1.3  26-Jul-1998  augustss Add more information about the ioctl(2) available for the USB
controller device.
 1.2  12-Jul-1998  augustss Add an xref to usbdevs(8).
 1.1  12-Jul-1998  augustss Add USB support. Supported so far:
* UHCI and OHCI host controllers on PCI
* Hubs
* HID devices withe special drivers for mouse and keyboard
* Printers
 1.10.2.1  16-Apr-1999  augustss Make a bunch of copyright headers conform to the standard.
Pullup approved by Perry.
 1.17.4.1  27-Dec-1999  wrstuden Pull up to last week's -current.
 1.26.2.1  22-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.51.2.1  26-Oct-2005  jmc Pullup (via patch) requested in ticket #5754 by itohy

Provide a backport for ukyopon(4) and pullup umodem(4) updates.
 1.64.2.1  11-May-2004  tron branches: 1.64.2.1.2;
Pull up revision 1.65 (requested by jdolecek in ticket #288):
fix description of usb_device_info structure - members are prefixed
by udi_, and adapt to udi_lowspeed -> udi_speed member change
fix usb_device_stats - there is uds_ prefix
use #include <dev/usb/usb.h> also in USB CONTROLLER INTERFACE section
bump date
 1.64.2.1.2.1  21-Jul-2005  riz Pull up revisions 1.66-1.67,1.69,1.72-1.73 via patch (requested by itohy in
ticket #1430):
1.66:
Various fixes from Sergey Svishchev svs at ropnet ru in private mail.
Some additional "new sentence, new line" changes while I was there.

1.67:
Drop trailing whitespace.

1.69:
Removed accidental repetitious words.

1.72:
Fix typo in Dd argument.

1.73:
Mention ukyopon.
 1.72.2.1  17-Apr-2005  tron Pull up revision 1.73 (requested by itohy in ticket #160):
Mention ukyopon.
 1.83.2.1  23-Mar-2008  matt sync with HEAD
 1.87.4.1  18-May-2008  yamt sync with head.
 1.87.2.2  02-Jun-2008  mjf Sync with HEAD.
 1.87.2.1  25-Mar-2008  mjf file usb.4 was added on branch mjf-devfs2 on 2008-06-02 13:21:37 +0000
 1.88.6.1  13-May-2009  jym Sync with HEAD.

Third (and last) commit. See http://mail-index.netbsd.org/source-changes/2009/05/13/msg221222.html
 1.92.2.2  22-Mar-2010  joerg Use .In instead of .Aq Pa for header files.
 1.92.2.1  22-Mar-2010  joerg file usb.4 was added on branch uebayasi-xip on 2010-03-22 18:58:32 +0000
 1.93.2.3  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.93.2.2  30-Oct-2012  yamt sync with head
 1.93.2.1  17-Apr-2012  yamt sync with head
 1.96.2.1  14-Jun-2012  sborrill Pull up the following revisions(s) (requested by riz in ticket #326):
distrib/sets/lists/base/mi: 1.989
distrib/sets/lists/man/mi: 1.1385
etc/mtree/NetBSD.dist.base: 1.99
share/man/man4/Makefile: 1.583
share/man/man4/urtwn.4: 1.1
share/man/man4/usb.4: 1.97
sys/arch/amd64/conf/GENERIC: 1.351
sys/arch/i386/conf/GENERIC: 1.1068
sys/dev/usb/files.usb: 1.121
sys/dev/usb/if_urtwn.c: 1.1-1.4
sys/dev/usb/if_urtwn_data.h: 1.1
sys/dev/usb/if_urtwnreg.h: 1.1
sys/dev/usb/if_urtwnvar.h: 1.1
sys/dev/usb/usbdevices.config: 1.13
sys/dev/usb/usbdevs: 1.621 via patch
sys/dev/usb/usbdevs.h: regen
sys/dev/usb/usbdevs_data.h: regen
sys/modules/if_urtwn/Makefile: 1.1
sys/modules/if_urtwn/if_urtwn.ioconf: 1.1

Add support for urtwn(4) wireless. Ported from OpenBSD
 1.100.2.2  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.100.2.1  23-Jun-2013  tls resync from head
 1.104.12.1  21-Apr-2017  bouyer Sync with HEAD
 1.104.10.1  31-Mar-2017  skrll Update usb related man pages
 1.104.8.1  20-Mar-2017  pgoyette Sync with HEAD
 1.104.4.1  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.105.4.2  02-Sep-2019  martin Pull up following revision(s) (requested by sevan in ticket #1351):

share/man/man4/man4.amiga/grf.4: revision 1.7
share/man/man4/si.4: revision 1.11
share/man/man8/man8.sparc/boot.8: revision 1.32
share/man/man5/nsswitch.conf.5: revision 1.29
share/man/man5/mixerctl.conf.5: revision 1.7
share/man/man8/man8.vax/boot.8: revision 1.14
share/man/man4/man4.vax/dn.4: revision 1.12
share/man/man8/man8.vax/drtest.8: revision 1.16
share/man/man8/sysinst.8: revision 1.6
share/man/man4/ip.4: revision 1.37
share/man/man5/boot.cfg.5: revision 1.28
share/man/man1/cd.1: revision 1.10
share/man/man4/usb.4: revision 1.106
share/man/man4/man4.vax/ix.4: revision 1.17
share/man/man7/security.7: revision 1.15
share/man/man7/hier.7: revision 1.123
share/man/man8/afterboot.8: revision 1.58
share/man/man1/man1.x68k/bellctrl.1: revision 1.14
share/man/man4/se.4: revision 1.6
share/man/man4/utoppy.4: revision 1.7
share/man/man4/midi.4: revision 1.32
share/man/man4/cfb.4: revision 1.5
share/man/man4/man4.sparc/magma.4: revision 1.12
share/man/man4/audio.4: revision 1.80
share/man/man4/isic.4: revision 1.18
share/man/man1/cd.1: revision 1.7
share/man/man4/envsys.4: revision 1.51
share/man/man1/cd.1: revision 1.8
share/man/man1/cd.1: revision 1.9
share/man/man3/fast_divide32.3: revision 1.9
share/man/man4/pci.4: revision 1.97
share/man/man5/ranlib.5: revision 1.7
share/man/man3/__arraycount.3: revision 1.7
share/man/man4/isa.4: revision 1.46
share/man/man8/man8.atari/ahdilabel.8: revision 1.14
share/man/man4/chipsfb.4: revision 1.6
share/man/man8/man8.macppc/boot.8: revision 1.8
share/man/man5/passwd.5: revision 1.33
share/man/man8/man8.macppc/ofwboot.8: revision 1.14
share/man/man8/compat_linux.8: revision 1.38
share/man/man4/iop.4: revision 1.22
share/man/man4/ddb.4: revision 1.167
share/man/man4/termios.4: revision 1.37
share/man/man8/compat_freebsd.8: revision 1.18
share/man/man5/ar.5: revision 1.9
share/man/man7/release.7: revision 1.37
share/man/man5/core.5: revision 1.31
share/man/man4/ahd.4: revision 1.6
share/man/man4/man4.vax/ad.4: revision 1.12
share/man/man4/pppoe.4: revision 1.39
share/man/man5/locale.alias.5: revision 1.3
share/man/man8/man8.amiga/installboot.8: revision 1.23
share/man/man4/etherip.4: revision 1.8
share/man/man3/queue.3: revision 1.57
share/man/man5/genassym.cf.5: revision 1.13
share/man/man4/mpls.4: revision 1.10
share/man/man1/wait.1: revision 1.5
share/man/man5/capfile.5: revision 1.4
share/man/man4/man4.alpha/ttwopci.4: revision 1.6
share/man/man4/man4.atari/rtc.4: revision 1.8
share/man/man4/gpiosim.4: revision 1.6
share/man/man3/bitstring.3: revision 1.18
share/man/man4/isdntel.4: revision 1.8
share/man/man4/ai.4: revision 1.9
share/man/man8/man8.hppa/boot.8: revision 1.2
share/man/man4/uyurex.4: revision 1.6
share/man/man8/man8.alpha/mkbootimage.8: revision 1.9
share/man/man4/bpf.4: revision 1.56
share/man/man4/man4.amiga/mfcs.4: revision 1.8
share/man/man4/cmpci.4: revision 1.9
share/man/man8/man8.vax/format.8: revision 1.14
share/man/man8/compat_svr4.8: revision 1.27
share/man/man4/crypto.4: revision 1.26
share/man/man4/userconf.4: revision 1.13
share/man/man4/agp.4: revision 1.17
share/man/man9/man9.i386/bioscall.9: revision 1.10
share/man/man4/uftdi.4: revision 1.20
share/man/man4/radio.4: revision 1.13
share/man/man4/mfb.4: revision 1.5
share/man/man7/ascii.7: revision 1.8
share/man/man4/man4.vax/dl.4: revision 1.13
share/man/man4/ral.4: revision 1.12
share/man/man4/unix.4: revision 1.26
share/man/man4/edc.4: revision 1.12
share/man/man4/pim.4: revision 1.5
share/man/man8/compat_ultrix.8: revision 1.21
share/man/man4/dge.4: revision 1.11
share/man/man8/diskless.8: revision 1.32
share/man/man5/passwd.conf.5: revision 1.11
share/man/man8/man8.acorn26/boot26.8: revision 1.8
share/man/man4/man4.vax/hy.4: revision 1.12
share/man/man4/plip.4: revision 1.4
share/man/man4/sc.4: revision 1.8
share/man/man4/ec.4: revision 1.14
share/man/man4/man4.sgimips/giopci.4: revision 1.9
share/man/man7/sysctl.7: revision 1.114
share/man/man3/bits.3: revision 1.18
share/man/man4/we.4: revision 1.19
share/man/man8/compat_sunos.8: revision 1.21
share/man/man4/ip6.4: revision 1.31
share/man/man4/acpilid.4: revision 1.8
share/man/man4/man4.dreamcast/aica.4: revision 1.6
share/man/man4/mfi.4: revision 1.12
share/man/man4/ugen.4: revision 1.32
share/man/man4/jme.4: revision 1.7
share/man/man4/man4.sparc64/intro.4: revision 1.5
share/man/man4/zyd.4: revision 1.5
share/man/man4/gre.4: revision 1.45
share/man/man3/bitmap.3: revision 1.10
share/man/man4/man4.vax/cons.4: revision 1.12
share/man/man3/gcq.3: revision 1.4
share/man/man4/man4.hppa/pdc.4: revision 1.3
share/man/man4/multicast.4: revision 1.8
share/man/man4/man4.sparc/intro.4: revision 1.27
share/man/man4/ath.4: revision 1.32
share/man/man4/ym.4: revision 1.19
share/man/man3/iso646.3: revision 1.6
share/man/man4/btsco.4: revision 1.13
share/man/man4/man4.i386/ndis.4: revision 1.6
share/man/man4/pad.4: revision 1.6
share/man/man4/strip.4: revision 1.16
share/man/man8/man8.x86/boot.8: revision 1.12
share/man/man4/amr.4: revision 1.15
share/man/man4/ieee80211.4: revision 1.5
share/man/man4/options.4: revision 1.467
share/man/man5/link.5: revision 1.24
share/man/man8/man8.cobalt/boot.8: revision 1.10
share/man/man5/stab.5: revision 1.15
share/man/man3/tree.3: revision 1.12
share/man/man4/route.4: revision 1.31
share/man/man4/man4.sun3/leds.4: revision 1.13
share/man/man4/bluetooth.4: revision 1.20
share/man/man4/man4.i386/pcibios.4: revision 1.19
share/man/man5/veriexec.5: revision 1.8
share/man/man7/operator.7: revision 1.12
share/man/man4/man4.hp300/dcl.4: revision 1.13
share/man/man4/man4.i386/intro.4: revision 1.31
share/man/man5/ld.so.conf.5: revision 1.21
share/man/man8/man8.alpha/boot.8: revision 1.16
share/man/man4/bio.4: revision 1.13
share/man/man4/man4.sun2/leds.4: revision 1.10
share/man/man8/man8.x86/mbr.8: revision 1.4
share/man/man8/man8.mvme68k/boot.8: revision 1.9
share/man/man4/man4.alpha/ttwoga.4: revision 1.6
share/man/man4/ahc.4: revision 1.34

Direct reader to shell documentation generally, rather than csh(1)
specifically.

Mention variables OLDPWD and PWD.

Move the text that explains that cd(1) is a shell built-in to the very
beginning of the description where it can be seen prominently.

Improve formatting.

-

Remove workaround for ancient HTML generation code.
Use EXIT STATUS and .Ex.
 1.105.4.1  27-Sep-2018  martin Pull up following revision(s) (requested by mrg in ticket #1037):

sys/dev/usb/uhub.c: revision 1.139
sys/external/bsd/dwc2/dwc2.c: revision 1.55
sys/ddb/db_output.c: revision 1.34
sys/ddb/db_command.c: revision 1.160
sys/dev/usb/ehci.c: revision 1.264
sys/dev/usb/xhci.c: revision 1.99
sys/dev/usb/ehci.c: revision 1.265
sys/kern/subr_userconf.c: revision 1.27
sys/dev/usb/ehcivar.h: revision 1.46
sys/dev/usb/ohci.c: revision 1.287
sys/dev/usb/uhci.c: revision 1.284
sys/dev/usb/usbdi.c: revision 1.178
sys/dev/usb/usb.c: revision 1.172
sys/dev/pci/xhci_pci.c: revision 1.14
sys/dev/usb/usb.c: revision 1.173
sys/dev/usb/usb.c: revision 1.174
share/man/man4/usb.4: revision 1.110
sys/ddb/db_command.c: revision 1.159
sys/dev/usb/usb_subr.c: revision 1.227
sys/dev/usb/uhcivar.h: revision 1.56
(all via patch)

consolidate the handling of polling across HC drivers, and generic USB:
- don't take mutexes if polling
- normalise the code across all drivers
- add some not yet code to block discovery to/from polling
- minor CSE
- adjust comment for usbd_set_polling() to reality now i properly
understand what it is used for and why.

this, with a hack to make RB_ASKNAME to wait 5 seconds allows boot -a
work with USB keyboards. there are still multiple issues remaining:
- discovery and polling need to be mutually exclusive
- attachment of ukbd and wskbd is not handled by config_pending, and
the 5 second delay isn't going to always be enough.

call cnpollc(1) and cnpollc(0) around cngetc().
(christos has a good idea to add a function that does all 3,
and we should switch all the callers in this sequence to use
it (and fix the MD ones missing it still). not all can, as
eg, line-grabbing functions can use cngetsn(), which only
calls cnpollc() twice.)


When this file is used when not building the kernel (eg: /usr/sbin/crash)
make cnpollc() go away.


reorder some struct members to remove holes.


add config_pending usage to uhub and general USB device attachment.
- call config_pending_incr() and config_pending_decr() around attaching
devices against "usbdevif" attribute.

uhub:
- convert sc_explorepending and sc_running to bool. add new sc_first_explore.
- call config_pending_incr() at the start of uhub_attach(). dropped in
uhub_explore(), if this is the first explore.


implement a gross hack to fix "boot -a" on systems with usb keyboards on
systems with ehci handover to uhci (and maybe ohci), and fix a similar
problem for "boot -s".

there is effort to ensure that all devices attached via USB are probed
before RB_ASKNAME or RB_SINGLE attempts to ask any questions on the console,
and largely this works, often by chance, today, for USB disks and root.
i've recently pushed this more into uhub and general USB device attachment
as well, and kept a config_pending reference across the first explore of
a bus. these fix many issues with directly attached hubs.

however, on systems where devices connected to ehci ports are handed over
to a companion uhci or ohci port, it may not be the first, or even second,
bus explore that finds the device finally before attachment, and at this
point all config_pending references are dropped.

there is no direct communication between drivers, the potentials are
looked up but their device_t is only used for generic things like the name,
so informing the correct companion to expect a device and deal with the
config_pending references is not possible without some fairly ugly layer
violations or multi-level callbacks (eg, we have "ehci0", and usually an
the relevant companion, eg, "uhci2", but it is the uhub that uhci2 has
attached that will deal with the device attachment.)

with the above fixes to generic USB code, the disown happens during the
first explore. the hack works by, at this point, checking if (a) root
is not mounted, (b) single user or ask name are set, and (c) if the hack
as not been triggered already. if all 3 conditions are true, then a
config_pending_incr() is called and a callback is triggered for (default)
5 seconds to call config_pending_decr(). ehci detach pauses waiting for
this callback if scheduled.

this allows enough time for the uhub and the ukbd/wskbd to attach before
the RK_ASKROOT prompts appear. testing shows it takes between 1.5 and
2 seconds for the keyboard to appear after the disown occurs.

Index: dev/usb/ehcivar.c
- new sc_compcallout, sc_compcallout, sc_complock, and a state for th
handover hack.

Index: dev/usb/ehci.c
ehci_init():
- use aprint_normal_dev() instead of manual device_xname().
- initialise sc_compcallout, sc_compcallout, sc_complock, and sc_comp_state.
ehci_detach():
- if there are companion controllers, tear own the above, including waiting
if there is a callback scheduled.
ehci_disown_callback():
- new callout to call config_pending_decr() in the the future.
schedule this ca
ehci_disown_sched_callback():
- if booting to single user or asking names, call config_pending_incr() and
schedule the callout above, default 5 second delay.
ehci_disown():
- if disowning a port call ehci_disown_sched_callback().
deal with partial attach failures in usb_attach vs usb_detach aka PR 53598.
- make sure xhci's sc->sc_ios is NULL if failure happens.
- rearrange usb_attach() / usb_doattach() to make it simpler to clean up.
- move usb_async_intr softint into usb_once_init(). previously, each USB
controller would start a new one, and leave the old one leaked.
- handle controller interrupts without a bus attached


remove usb(4)'s "flags 1" code. it has been dead for a while,
as it runs during the interrupts part of configuration now,
and all the devices try attach as early as possible, including
any root or boot required disk or keyboard device, which is
what this flag was for.
 1.109.4.2  08-Apr-2020  martin Merge changes from current as of 20200406
 1.109.4.1  10-Jun-2019  christos Sync with HEAD
 1.109.2.1  30-Sep-2018  pgoyette Ssync with HEAD

RSS XML Feed