The NetBSD Project

CVS log for src/sys/dev/usb/usb.c

[BACK] Up to [cvs.NetBSD.org] / src / sys / dev / usb

Request diff between arbitrary revisions


Keyword substitution: kv
Default branch: MAIN


Revision 1.203: download - view: text, markup, annotated - select for diffs
Sun Feb 4 05:43:06 2024 UTC (10 months, 1 week ago) by mrg
Branches: MAIN
CVS tags: perseant-exfatfs-base-20240630, perseant-exfatfs-base, perseant-exfatfs, HEAD
Diff to: previous 1.202: preferred, colored
Changes since revision 1.202: +3 -3 lines
update my email address.

Revision 1.202: download - view: text, markup, annotated - select for diffs
Mon Jul 31 17:41:18 2023 UTC (16 months, 1 week ago) by christos
Branches: MAIN
CVS tags: thorpej-ifq-base, thorpej-ifq, thorpej-altq-separation-base, thorpej-altq-separation
Diff to: previous 1.201: preferred, colored
Changes since revision 1.201: +8 -8 lines
Don't call versioned stuff "old". Follow the naming convention for versioning
and name them after the last version of the OS they appeared on.

Revision 1.201: download - view: text, markup, annotated - select for diffs
Thu Jul 20 20:00:34 2023 UTC (16 months, 3 weeks ago) by mrg
Branches: MAIN
Diff to: previous 1.200: preferred, colored
Changes since revision 1.200: +7 -3 lines
various debug updates for some usb drivers

- several new *_DEBUG_DEFAULT options that allow usb debug values to
  be set to a default that is non-zero:
  EHCI_DEBUG_DEFAULT, UGEN_DEBUG_DEFAULT, URTWN_DEBUG_DEFAULT,
  UMS_DEBUG_DEFAULT, and USB_DEBUG_DEFAULT
- ugen debug uses fewer usbhist lines for the same info
- ums.c converted from printf() to usbhist

Revision 1.200: download - view: text, markup, annotated - select for diffs
Sun Mar 13 11:28:52 2022 UTC (2 years, 9 months ago) by riastradh
Branches: MAIN
CVS tags: netbsd-10-base, netbsd-10-0-RELEASE, netbsd-10-0-RC6, netbsd-10-0-RC5, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1, netbsd-10, bouyer-sunxi-drm-base, bouyer-sunxi-drm
Diff to: previous 1.199: preferred, colored
Changes since revision 1.199: +4 -2 lines
usb: Fix roothub ctrl xfer aborts.

No mechanism for actually aborting, but at least this now waits for
the xfer to have completed instead of blithely barging ahead whether
it's done or not.

Revision 1.199: download - view: text, markup, annotated - select for diffs
Sun Mar 6 09:03:42 2022 UTC (2 years, 9 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.198: preferred, colored
Changes since revision 1.198: +8 -10 lines
usb(4): Use atomics for usb_async_proc.

This is written under proc_lock and read without it in usb_add_event,
so using atomics pacifies the sanitizer.  No memory ordering needed
because the value isn't actually used until the softint runs, using
it under proc_lock.  Kind of a micro-optimization, but let's avoid
contention on proc_lock in the common case of no usb_async_proc set
up (why is this a system global, anyway? and why is there a softint
if usb_add_event always runs at IPL_NONE?).

Reported-by: syzbot+1b2fa68535e5b0f3dcaa@syzkaller.appspotmail.com

Revision 1.198: download - view: text, markup, annotated - select for diffs
Sun Oct 10 20:14:09 2021 UTC (3 years, 2 months ago) by jmcneill
Branches: MAIN
Diff to: previous 1.197: preferred, colored
Changes since revision 1.197: +5 -3 lines
usb: usb_event_thread: remove delay at startup for USB >= 2.0 HCs

The delay at the start of usb_event_thread is meant to slow down EHCI
companion controllers. Skip the 500ms delay if the bus that owns this
thread is USB >= 2.0 since those are never companions.

Revision 1.197: download - view: text, markup, annotated - select for diffs
Sun Sep 26 01:16:09 2021 UTC (3 years, 2 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.196: preferred, colored
Changes since revision 1.196: +3 -3 lines
Change the kqueue filterops::f_isfd field to filterops::f_flags, and
define a flag FILTEROP_ISFD that has the meaning of the prior f_isfd.
Field and flag name aligned with OpenBSD.

This does not constitute a functional or ABI change, as the field location
and size, and the value placed in that field, are the same as the previous
code, but we're bumping __NetBSD_Version__ so 3rd-party module source code
can adapt, as needed.

NetBSD 9.99.89

Revision 1.193.4.1: download - view: text, markup, annotated - select for diffs
Thu Jun 17 04:46:31 2021 UTC (3 years, 5 months ago) by thorpej
Branches: thorpej-i2c-spi-conf
Diff to: previous 1.193: preferred, colored; next MAIN 1.194: preferred, colored
Changes since revision 1.193: +30 -3 lines
Sync w/ HEAD.

Revision 1.196: download - view: text, markup, annotated - select for diffs
Sun Jun 13 14:48:10 2021 UTC (3 years, 6 months ago) by riastradh
Branches: MAIN
CVS tags: thorpej-i2c-spi-conf2-base, thorpej-i2c-spi-conf2, thorpej-i2c-spi-conf-base, thorpej-futex2-base, thorpej-futex2, thorpej-cfargs2-base, thorpej-cfargs2
Diff to: previous 1.195: preferred, colored
Changes since revision 1.195: +24 -2 lines
usb(4): Bus exploration is single-threaded -- assert it so.

New usb_in_event_thread(dev) returns true if dev is a USB device --
that is, a device with a usbN ancestor -- and the current thread is
the USB event thread.

(Kinda kludgey to pass around the device_t instead of, say, struct
usbd_bus, but I don't see a good way to get to the usbN device_t or
struct usb_softc from there.)

Revision 1.195: download - view: text, markup, annotated - select for diffs
Sat Jun 12 12:13:10 2021 UTC (3 years, 6 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.194: preferred, colored
Changes since revision 1.194: +7 -2 lines
usb(4): Sprinkle kernel lock assertions.

Revision 1.194: download - view: text, markup, annotated - select for diffs
Sat Jun 12 12:11:38 2021 UTC (3 years, 6 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.193: preferred, colored
Changes since revision 1.193: +3 -3 lines
usb(4): usb event thread is not actually MP-safe.

Still requires a lot of work in usb(4), uhub(4), and autoconf(9).

Revision 1.187.2.2: download - view: text, markup, annotated - select for diffs
Sat Apr 3 22:28:50 2021 UTC (3 years, 8 months ago) by thorpej
Branches: thorpej-futex
Diff to: previous 1.187.2.1: preferred, colored; next MAIN 1.188: preferred, colored
Changes since revision 1.187.2.1: +72 -2 lines
Sync with HEAD.

Revision 1.193: download - view: text, markup, annotated - select for diffs
Wed Feb 24 01:46:57 2021 UTC (3 years, 9 months ago) by mrg
Branches: MAIN
CVS tags: thorpej-futex-base, thorpej-cfargs-base, thorpej-cfargs, cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x
Branch point for: thorpej-i2c-spi-conf
Diff to: previous 1.192: preferred, colored
Changes since revision 1.192: +4 -4 lines
fix sparc build:  db_expr_t is larger than a pointer.

Revision 1.192: download - view: text, markup, annotated - select for diffs
Tue Feb 23 08:51:36 2021 UTC (3 years, 9 months ago) by mrg
Branches: MAIN
Diff to: previous 1.191: preferred, colored
Changes since revision 1.191: +6 -3 lines
fix the formating for 'show usbxferlist'.

Revision 1.191: download - view: text, markup, annotated - select for diffs
Tue Feb 23 07:13:53 2021 UTC (3 years, 9 months ago) by mrg
Branches: MAIN
Diff to: previous 1.190: preferred, colored
Changes since revision 1.190: +3 -3 lines
introduce DDB_END_CMD and replace more than 20 copies of the same
list of NULLs and 0.  idea from rillig@.

all touched ports built, several booted.

Revision 1.190: download - view: text, markup, annotated - select for diffs
Mon Feb 22 20:45:28 2021 UTC (3 years, 9 months ago) by mrg
Branches: MAIN
Diff to: previous 1.189: preferred, colored
Changes since revision 1.189: +5 -5 lines
fix formatting and db_usb_command_table[] static.  idea from rillig@.

Revision 1.189: download - view: text, markup, annotated - select for diffs
Sun Feb 21 23:06:39 2021 UTC (3 years, 9 months ago) by mrg
Branches: MAIN
Diff to: previous 1.188: preferred, colored
Changes since revision 1.188: +69 -2 lines
add ddb commands to inspect usb xfer and xferlist structures.

Revision 1.187.2.1: download - view: text, markup, annotated - select for diffs
Sun Jan 3 16:35:02 2021 UTC (3 years, 11 months ago) by thorpej
Branches: thorpej-futex
Diff to: previous 1.187: preferred, colored
Changes since revision 1.187: +4 -6 lines
Sync w/ HEAD.

Revision 1.188: download - view: text, markup, annotated - select for diffs
Fri Dec 18 01:40:20 2020 UTC (3 years, 11 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.187: preferred, colored
Changes since revision 1.187: +4 -6 lines
Use sel{record,remove}_knote().

Revision 1.165.6.6: download - view: text, markup, annotated - select for diffs
Sun May 31 10:27:26 2020 UTC (4 years, 6 months ago) by martin
Branches: netbsd-8
CVS tags: netbsd-8-3-RELEASE
Diff to: previous 1.165.6.5: preferred, colored; branchpoint 1.165: preferred, colored; next MAIN 1.166: preferred, colored
Changes since revision 1.165.6.5: +13 -2 lines
Pull up following revision(s) (requested by skrll in ticket #1551):

	sys/dev/usb/usb.c: revision 1.187

Don't allow open of /dev/usb if there are no attached busses.
PR kern/55303 mutex_vector_enter,512: uninitialized lock

Revision 1.179.2.3: download - view: text, markup, annotated - select for diffs
Sun May 31 10:25:58 2020 UTC (4 years, 6 months ago) by martin
Branches: netbsd-9
CVS tags: netbsd-9-4-RELEASE, netbsd-9-3-RELEASE, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE
Diff to: previous 1.179.2.2: preferred, colored; branchpoint 1.179: preferred, colored; next MAIN 1.180: preferred, colored
Changes since revision 1.179.2.2: +13 -2 lines
Pull up following revision(s) (requested by skrll in ticket #934):

	sys/dev/usb/usb.c: revision 1.187

Don't allow open of /dev/usb if there are no attached busses.
PR kern/55303 mutex_vector_enter,512: uninitialized lock

Revision 1.187: download - view: text, markup, annotated - select for diffs
Wed May 27 07:17:45 2020 UTC (4 years, 6 months ago) by skrll
Branches: MAIN
Branch point for: thorpej-futex
Diff to: previous 1.186: preferred, colored
Changes since revision 1.186: +13 -2 lines
Don't allow open of /dev/usb if there are no attached busses.

PR kern/55303 mutex_vector_enter,512: uninitialized lock

Revision 1.186: download - view: text, markup, annotated - select for diffs
Tue May 26 19:55:43 2020 UTC (4 years, 6 months ago) by skrll
Branches: MAIN
Diff to: previous 1.185: preferred, colored
Changes since revision 1.185: +5 -5 lines
s/0/NULL/ for pointer (usb_async_proc)

Revision 1.185: download - view: text, markup, annotated - select for diffs
Tue May 26 19:51:14 2020 UTC (4 years, 6 months ago) by skrll
Branches: MAIN
Diff to: previous 1.184: preferred, colored
Changes since revision 1.184: +3 -5 lines
Misc whitespace

Revision 1.184: download - view: text, markup, annotated - select for diffs
Sat May 23 23:42:42 2020 UTC (4 years, 6 months ago) by ad
Branches: MAIN
Diff to: previous 1.183: preferred, colored
Changes since revision 1.183: +10 -10 lines
Move proc_lock into the data segment.  It was dynamically allocated because
at the time we had mutex_obj_alloc() but not __cacheline_aligned.

Revision 1.168.4.3: download - view: text, markup, annotated - select for diffs
Mon Apr 13 08:04:50 2020 UTC (4 years, 8 months ago) by martin
Branches: phil-wifi
Diff to: previous 1.168.4.2: preferred, colored; branchpoint 1.168: preferred, colored; next MAIN 1.169: preferred, colored
Changes since revision 1.168.4.2: +7 -8 lines
Mostly merge changes from HEAD upto 20200411

Revision 1.168.4.2: download - view: text, markup, annotated - select for diffs
Wed Apr 8 14:08:13 2020 UTC (4 years, 8 months ago) by martin
Branches: phil-wifi
Diff to: previous 1.168.4.1: preferred, colored; branchpoint 1.168: preferred, colored
Changes since revision 1.168.4.1: +101 -6 lines
Merge changes from current as of 20200406

Revision 1.179.2.2: download - view: text, markup, annotated - select for diffs
Sun Mar 1 12:35:16 2020 UTC (4 years, 9 months ago) by martin
Branches: netbsd-9
Diff to: previous 1.179.2.1: preferred, colored; branchpoint 1.179: preferred, colored
Changes since revision 1.179.2.1: +26 -5 lines
Pull up following revision(s) (requested by riastradh in ticket #744):

	sys/dev/usb/uhci.c: revision 1.292
	sys/dev/usb/uhci.c: revision 1.293
	sys/dev/usb/usbdi.h: revision 1.99
	sys/dev/usb/motg.c: revision 1.26
	sys/dev/usb/motg.c: revision 1.27
	sys/dev/usb/motg.c: revision 1.28
	sys/dev/usb/motg.c: revision 1.29
	sys/external/bsd/dwc2/dwc2.c: revision 1.70
	sys/external/bsd/dwc2/dwc2.c: revision 1.71
	sys/dev/usb/usb.c: revision 1.181
	sys/arch/mips/adm5120/dev/ahci.c: revision 1.20
	sys/dev/usb/usb.c: revision 1.182
	sys/dev/usb/xhci.c: revision 1.116
	sys/dev/usb/xhci.c: revision 1.117
	sys/dev/usb/xhci.c: revision 1.118
	sys/dev/usb/uhci.c: revision 1.289
	sys/dev/usb/usbdivar.h: revision 1.121
	sys/dev/usb/usbdi.c: revision 1.190
	sys/dev/usb/usbdivar.h: revision 1.122
	sys/dev/usb/usbdi.c: revision 1.191
	sys/dev/usb/usbdi.c: revision 1.192
	sys/external/bsd/dwc2/dwc2var.h: revision 1.7
	sys/dev/usb/motg.c: revision 1.30
	sys/dev/usb/motg.c: revision 1.31
	sys/dev/usb/motg.c: revision 1.32
	sys/dev/usb/motg.c: revision 1.33
	sys/external/bsd/dwc2/dwc2.c: revision 1.67
	sys/external/bsd/dwc2/dwc2.c: revision 1.68
	sys/dev/usb/ehci.c: revision 1.270
	sys/external/bsd/dwc2/dwc2.c: revision 1.69
	sys/dev/usb/usbdi.h: revision 1.100
	sys/dev/usb/ehci.c: revision 1.271
	sys/arch/mips/adm5120/dev/ahci.c: revision 1.18
	sys/dev/usb/usbdi.h: revision 1.101
	sys/dev/usb/ehci.c: revision 1.272
	sys/dev/ic/sl811hs.c: revision 1.103
	sys/arch/mips/adm5120/dev/ahci.c: revision 1.19
	sys/dev/usb/ehci.c: revision 1.273
	sys/dev/usb/ohci.c: revision 1.293
	sys/dev/usb/uhci.c: revision 1.290
	sys/dev/usb/ohci.c: revision 1.294
	sys/dev/usb/uhci.c: revision 1.291
	sys/dev/usb/ohci.c: revision 1.295

Teach usb_rem_task to return whether removed from queue or not.

New function usb_task_pending for diagnostic assertions.
Usable only for negative diagnostic assertions:

        KASSERT(!usb_task_pending(dev, task))

If you can think of a better name for this than !usb_task_pending,
I'm all ears.

 -

Nothing guarantees xfer's timeout has completed.

Wait for it when we free the xfer.

 -


New xfer state variables ux_timeout_set and ux_timeout_reset.

These are needed because:
- The host controller interrupt cannot wait for the callout or task
  to finish running.
- Nothing in the USBD API as is waits for the callout or task to
  finish running.
- Callers expect to be able to resubmit USB xfers from xfer callbacks
  without waiting for anything to finish running.

The variable ux_timeout_set can be used by a host controller to
decide on submission whether to schedule the callout or to ask an
already-scheduled callout or already-queued task to reschedule the
callout, by setting the variable ux_timeout_reset to true.

When the callout or task runs and sees that ux_timeout_reset is true,
rather than queue the task or abort the xfer, it can instead just
schedule the callout anew.

 -

Fix steady state of timeouts in ehci.

This is complicated because:
1. There are three ways that an xfer can be completed:
   (a) hardware interrupt completes xfer
   (b) software decision aborts xfer with USBD_CANCELLED
   (c) timeout aborts xfer with USBD_TIMEOUT
2. The timeout abort can't be done in callout because ehci_sync_hc,
   called unconditionally by ehci_abort_xfer to wait until the device
   has finished using any references to the xfer, may sleep.  So we
   have to schedule a callout that, when run, will schedule a usb_task.
3. The hardware completion interrupt can't sleep waiting for a callout
   or task to finish -- can't use callout_halt or usb_rem_task_wait.
   So the callout and usb_task must be able to run _after_ the hardware
   completion interrupt, and recognize that they're late to the party.
   (Note, though, that usbd_free_xfer does wait for the callout and
   task to complete, so there's no danger they may use themselves after
   free.)
4. The xfer may resubmitted -- and the timeout may be rescheduled --
   immediately after the hardware completion interrupt, _while_ the
   callout and/or usb_task may still be scheduled.  Specifically, we
   may have the following sequence of events:
   (a) hardware completion interrupt
   (b) callout or usb_task fires
   (c) driver resubmits xfer
   (d) callout or usb_task acquires lock and looks around dazed and
       bewildered at the firehose of events like reading the news in 2019

The mechanism for sorting this out is that we have two bits of state:
- xfer->ux_timeout_set informs the driver, when submitting an xfer and
  setting up its timeout, whether either the callout or usb_task is
  already scheduled or not.
- xfer->ux_timeout_reset informs the callout or usb_task whether it
  should reschedule the callout, because the xfer got resubmitted, or
  not.

 -

Factor out HCI-independent xfer completion logic.

New API for HCI drivers to synchronize hardware completion
interrupts, synchronous aborts, and asynchronous timeouts:
- When submitting an xfer to hardware, call
  usbd_xfer_schedule_timeout(xfer).
- On HCI completion interrupt for xfer completion:
        if (!usbd_xfer_trycomplete(xfer))
                return;         /* timed out or aborted, ignore it */
- In upm_abort methods, call usbd_xfer_abort(xfer).

For HCI drivers that use this API (not needed in drivers that don't,
or for xfers like root intr xfers that don't use it):
- New ubm_abortx method serves role of former *hci_abort_xfer, but
  without any logic for wrangling timeouts/callouts/tasks -- caller
  in usbd_xfer_abort has already handled them.
- New ubm_dying method, returns true if the device is in the process
  of detaching, used by the timeout logic.

Converted and tested:
- ehci
- ohci

Converted and compile-tested:
- ahci (XXX did this ever work?)
- dwc2
- motg (XXX missing usbd_xfer_schedule_timeout in motg_*_start?)
- uhci
- xhci

Not changed:
- slhci (sys/dev/ic/sl811hs.c) -- doesn't use a separate per-xfer
  callout for timeouts (XXX but maybe should?)
- ugenhc (sys/rump/dev/lib/libugenhc/ugenhc.c) -- doesn't manage its
  own transfer timeouts

 -

Fix steady state of root intr xfers.

Why?
- Avoid completing a root intr xfer multiple times in races.
- Avoid potential use-after-free in poll_hub callouts (uhci, ahci).

How?
- Use sc->sc_intr_xfer or equivalent to store only a pending xfer
  that has not yet completed -- whether successfully, by timeout, or
  by synchronous abort.  When any of those happens, set it to null
  under the lock, so the xfer is completed only once.
- For hci drivers that use a callout to poll the root hub (uhci, ahci):
  . Pass the softc pointer, not the xfer, to the callout, so the
    callout is not even tempted to use xfer after free -- if the
    callout fires, but the xfer is synchronously aborted before the
    callout can do anything, the xfer might be freed by the time the
    callout starts to examine it.
  . Teach the callout to do nothing if it is callout_pending after it
    has fired.  This way:
    1. completion or synchronous abort can just callout_stop
    2. start can just callout_schedule
    If the callout had already fired before (1), and doesn't acquire
    the bus lock until after (2), it may be tempted to abort the new
    root intr xfer just after submission, which would be wrong -- so
    instead we just have the callout do nothing if it notices it has
    been rescheduled, since it will fire again after the appropriate
    time has elapsed.

 -

Initialize xfer->ux_status in uhci_root_intr_start.

Otherwise, it will be USBD_NOT_STARTED, so usbd_ar_pipe will skip
calling upm_abort.
Candidate fix for PR kern/54963, same problem as reported at:
href="https://mail-index.NetBSD.org/current-users/2020/02/13/msg037740.html

 -

Set ux_isdone in uhci_poll_hub for DIAGNOSTIC.

 -

Fix mistakes in previous sloppy change with root intr xfers.
- Make sure ux_status is set to USBD_IN_PROGRESS when started.
  Otherwise, if it is still in flight when we abort the pipe,
  usbd_ar_pipe will skip calling upm_abort.
- Initialize ux_status under the lock; in principle a completion
  interrupt (or a delay) could race with the initialization.
- KASSERT that the xfer is in progress when we're about to complete
  it.

Candidate fix for PR kern/54963 for other HCI drivers than uhci.
ok nick
ok phone
(This is the change that nick evidently MEANT to ok when he ok'd the
previous one!)

 -

Fix build

 -

Fix non-DIAGNOSTIC builds.

 -

Fix wrong KASSERT in motg abort.
This has been wrong since last summer when we did the transition to
xfer->ux_status = USBD_CANCELLED earlier.
XXX pullup-9

 -

Fix mistakes in timeout/abort/completion changes in motg(4).
- Call usbd_xfer_schedule_timeout so we actually do time out.
- Don't call usbd_xfer_trycomplete until all the data have been
  transferred -- it commits to completion, not timeout.
- Use xfer->ux_status != USBD_IN_PROGRESS to test whether, after a
  partial write, an xfer has been interrupted or timed out and need
  not be continued.
- Remove wrong assertion.

 -

Fix mistake in use of usbd_xfer_schedule_timeout in motg.

This code path is used both for xfers that are new, and xfers that
are being done piece by piece and are partway done.  For the latter
case, skip usbd_xfer_schedule_timeout so we schedule it only once per
xfer.

 -

Simplify some branches and kassert some redundant assignments.

Revision 1.180.2.1: download - view: text, markup, annotated - select for diffs
Sat Feb 29 20:19:16 2020 UTC (4 years, 9 months ago) by ad
Branches: ad-namecache
Diff to: previous 1.180: preferred, colored; next MAIN 1.181: preferred, colored
Changes since revision 1.180: +101 -6 lines
Sync with head.

Revision 1.183: download - view: text, markup, annotated - select for diffs
Wed Feb 19 16:03:30 2020 UTC (4 years, 9 months ago) by riastradh
Branches: MAIN
CVS tags: phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, is-mlppp-base, is-mlppp, bouyer-xenpvh-base2, bouyer-xenpvh-base1, bouyer-xenpvh-base, bouyer-xenpvh, ad-namecache-base3
Diff to: previous 1.182: preferred, colored
Changes since revision 1.182: +77 -3 lines
New dtrace usb provider, with a handful of probes in usb.c.

Revision 1.182: download - view: text, markup, annotated - select for diffs
Wed Feb 12 15:59:44 2020 UTC (4 years, 10 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.181: preferred, colored
Changes since revision 1.181: +19 -2 lines
New function usb_task_pending for diagnostic assertions.

Usable only for negative diagnostic assertions:

	KASSERT(!usb_task_pending(dev, task))

If you can think of a better name for this than !usb_task_pending,
I'm all ears.

Revision 1.181: download - view: text, markup, annotated - select for diffs
Wed Feb 12 15:59:30 2020 UTC (4 years, 10 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.180: preferred, colored
Changes since revision 1.180: +9 -5 lines
Teach usb_rem_task to return whether removed from queue or not.

Revision 1.165.6.5: download - view: text, markup, annotated - select for diffs
Sat Nov 16 16:30:09 2019 UTC (5 years ago) by martin
Branches: netbsd-8
CVS tags: netbsd-8-2-RELEASE
Diff to: previous 1.165.6.4: preferred, colored; branchpoint 1.165: preferred, colored
Changes since revision 1.165.6.4: +6 -2 lines
Pull up the following revisions, requested by msaitoh in ticket #1443:

	sys/arch/arm/nvidia/tegra_xusb.c	1.13-1.14 via patch
	sys/dev/pci/xhci_pci.c			1.13
	sys/dev/usb/usb.c			1.169
	sys/dev/usb/usbdivar.h			1.116
	sys/dev/usb/xhci.c			1.93, 1.95, 1.97
	sys/dev/usb/xhcireg.h			1.11-1.12

Detect USB 3.1

Revision 1.179.2.1: download - view: text, markup, annotated - select for diffs
Sun Sep 1 13:00:36 2019 UTC (5 years, 3 months ago) by martin
Branches: netbsd-9
CVS tags: netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1
Diff to: previous 1.179: preferred, colored
Changes since revision 1.179: +9 -10 lines
Pull up following revision(s) (requested by mrg in ticket #135):

	distrib/sets/lists/comp/mi			1.2279
	distrib/sets/lists/modules/mi			1.123
	share/man/man9/Makefile				1.438
	share/man/man9/usbnet.9				1.1-1.9
	sys/dev/ic/rndisreg.h				1.3
	sys/dev/usb/TODO				1.47-1.52
	sys/dev/usb/TODO.usbmp				1.15,1.16
	sys/dev/usb/files.usb				1.157-1.167
	sys/dev/usb/if_aue.c				1.155-1.161
	sys/dev/usb/if_auereg.h				1.30-1.32
	sys/dev/usb/if_axe.c				1.103-1.119
	sys/dev/usb/if_axen.c				1.51-1.53,1.55-1.67
	sys/dev/usb/if_axenreg.h			1.15
	sys/dev/usb/if_cdce.c				1.54-1.67
	sys/dev/usb/if_cue.c				1.85,1.86
	sys/dev/usb/if_cuereg.h				1.23
	sys/dev/usb/if_kue.c				1.97-1.100
	sys/dev/usb/if_kuereg.h				1.23,1.24
	sys/dev/usb/if_mue.c				1.51-1.55
	sys/dev/usb/if_muereg.h				1.6
	sys/dev/usb/if_muevar.h				1.9
	sys/dev/usb/if_smsc.c				1.46-1.61
	sys/dev/usb/if_smscreg.h			1.6
	sys/dev/usb/if_smscvar.h			delete
	sys/dev/usb/if_udav.c				1.60-1.71
	sys/dev/usb/if_udavreg.h			1.14,1.15
	sys/dev/usb/if_upl.c				1.65,1.66
	sys/dev/usb/if_ure.c				1.15-1.31
	sys/dev/usb/if_urevar.h				1.4,1.5
	sys/dev/usb/if_url.c				1.67-1.70
	sys/dev/usb/if_urlreg.h				1.14
	sys/dev/usb/if_urndis.c				1.22-1.33
	sys/dev/usb/if_urtwn.c				1.72
	sys/dev/usb/ohci.c				1.290
	sys/dev/usb/uhub.c				1.143
	sys/dev/usb/usb.c				1.180
	sys/dev/usb/usb.h				1.118
	sys/dev/usb/usb_mem.c				1.71
	sys/dev/usb/usb_subr.c				1.238,1.239
	sys/dev/usb/usbdevs				1.772
	sys/dev/usb/usbdi.c				1.183,1.186
	sys/dev/usb/usbdi.h				1.97
	sys/dev/usb/usbdi_util.c			1.75
	sys/dev/usb/usbhist.h				1.5,1.6
	sys/dev/usb/usbnet.c				1.1-1.24
	sys/dev/usb/usbnet.h				1.1-1.14
	sys/dev/usb/usbroothub.c			1.9
	sys/dev/usb/xhci.c				1.109,1.110
	sys/modules/Makefile				1.223
	sys/modules/usbnet/Makefile			1.1

usbnet(9): Add common framework for USB network devices.
This bring various safety fixes to all updated drivers,
and includes locking clean up, detach safety when being
used or not, separate rx/tx locks to improve performance,
porting to NET_MPSAFE, many edge/error case bugs in
drivers fixed, as well as resovling PRs 54303 and 54308.
These drivers are converted: axe(4), axen(4), aue(4),
cdce(4), cue(4), kue(4), mue(4), smsc(4), udav(4),
upl(4), ure(4), url(4), and urndis(4).

Revision 1.180: download - view: text, markup, annotated - select for diffs
Wed Aug 21 10:48:37 2019 UTC (5 years, 3 months ago) by mrg
Branches: MAIN
CVS tags: phil-wifi-20191119, ad-namecache-base2, ad-namecache-base1, ad-namecache-base
Branch point for: ad-namecache
Diff to: previous 1.179: preferred, colored
Changes since revision 1.179: +9 -10 lines
convert pairs of USBHIST_CALLED()+USBHIST_LOG*() into
USBHIST_CALLARGS() calls.  this reduces the number of
kernel history lines consumed by these callers, and
for the +LOGN versions, add useful log info to a
message that just says "called!".

reduces the line spam which means the total info in a
full log is significantly increased.

Revision 1.168.4.1: download - view: text, markup, annotated - select for diffs
Mon Jun 10 22:07:34 2019 UTC (5 years, 6 months ago) by christos
Branches: phil-wifi
Diff to: previous 1.168: preferred, colored
Changes since revision 1.168: +156 -136 lines
Sync with HEAD

Revision 1.179: download - view: text, markup, annotated - select for diffs
Sun May 5 03:17:54 2019 UTC (5 years, 7 months ago) by mrg
Branches: MAIN
CVS tags: phil-wifi-20190609, netbsd-9-base
Branch point for: netbsd-9
Diff to: previous 1.178: preferred, colored
Changes since revision 1.178: +5 -3 lines
remove explicit 'extern struct cfdriver <my>_cd;' and use ioconf.h

Revision 1.178: download - view: text, markup, annotated - select for diffs
Fri Mar 1 11:06:56 2019 UTC (5 years, 9 months ago) by pgoyette
Branches: MAIN
CVS tags: isaki-audio2-base, isaki-audio2
Diff to: previous 1.177: preferred, colored
Changes since revision 1.177: +4 -4 lines
Rename the MODULE_*_HOOK() macros to MODULE_HOOK_*() as briefly
discussed on irc.

NFCI intended.

Ride the earlier kernel bump - it;s getting crowded.

Revision 1.177: download - view: text, markup, annotated - select for diffs
Sun Feb 3 03:19:28 2019 UTC (5 years, 10 months ago) by mrg
Branches: MAIN
Diff to: previous 1.176: preferred, colored
Changes since revision 1.176: +4 -3 lines
- add or adjust /* FALLTHROUGH */ where appropriate
- add __unreachable() after functions that can return but won't in
  this case, and thus can't be marked __dead easily

Revision 1.176: download - view: text, markup, annotated - select for diffs
Tue Jan 29 09:28:50 2019 UTC (5 years, 10 months ago) by pgoyette
Branches: MAIN
Diff to: previous 1.175: preferred, colored
Changes since revision 1.175: +4 -4 lines
Normalize all the compat hooks' names to the form

	<subsystem>_<function>_<version>_hook

NFCI

XXX Note that although this introduces a change in the kernel-to-
XXX module interface, we are NOT bumping the kernel version number.
XXX We will bump the version number once the interface stabilizes.

Revision 1.175: download - view: text, markup, annotated - select for diffs
Sun Jan 27 02:08:42 2019 UTC (5 years, 10 months ago) by pgoyette
Branches: MAIN
Diff to: previous 1.174: preferred, colored
Changes since revision 1.174: +17 -103 lines
Merge the [pgoyette-compat] branch

Revision 1.168.2.11: download - view: text, markup, annotated - select for diffs
Tue Jan 22 07:42:41 2019 UTC (5 years, 10 months ago) by pgoyette
Branches: pgoyette-compat
CVS tags: pgoyette-compat-merge-20190127
Diff to: previous 1.168.2.10: preferred, colored; branchpoint 1.168: preferred, colored; next MAIN 1.169: preferred, colored
Changes since revision 1.168.2.10: +7 -25 lines
Convert the MODULE_{,VOID_}HOOK_CALL macros to do everything in-line
rather than defining an intermediate hook##call function.  Almost
all of the hooks are called only once, and although we lose the
ability of doing things like

	if (MODULE_HOOK_CALL(...) == 0) ...

we simplify things quite a bit.  With this change, we no longer need
to have both declaration and definition macros, and the definition
no longer needs to have both prototype argument list and a "real"
argument list.

FWIW, the above if now needs to written as

	int ret;

	MODULE_HOOK_CALL(..., ret);
	if (ret == 0) ...

with appropriate use of braces {}.

Revision 1.168.2.10: download - view: text, markup, annotated - select for diffs
Fri Jan 18 00:01:01 2019 UTC (5 years, 10 months ago) by pgoyette
Branches: pgoyette-compat
Diff to: previous 1.168.2.9: preferred, colored; branchpoint 1.168: preferred, colored
Changes since revision 1.168.2.9: +6 -6 lines
Don't restrict hooks to having only int or void types.  Pass the hook's
type to the various macros, as needed.

Allows us to reduce diffs to original in at least one or two places (we
no longer have to provide an additional parameter to the hook routine
for returning a non-int return value).

Revision 1.168.2.9: download - view: text, markup, annotated - select for diffs
Mon Jan 14 13:34:27 2019 UTC (5 years, 10 months ago) by pgoyette
Branches: pgoyette-compat
Diff to: previous 1.168.2.8: preferred, colored; branchpoint 1.168: preferred, colored
Changes since revision 1.168.2.8: +11 -10 lines
Create a variant of the HOOK macros that handles hook routines of
type void, and use them where appropriate.

Revision 1.168.2.8: download - view: text, markup, annotated - select for diffs
Sun Jan 13 10:49:50 2019 UTC (5 years, 11 months ago) by pgoyette
Branches: pgoyette-compat
Diff to: previous 1.168.2.7: preferred, colored; branchpoint 1.168: preferred, colored
Changes since revision 1.168.2.7: +10 -10 lines
Remove the HOOK2 versions of the MODULE_HOOK macros.  There were
only a few uses, and using them led to some lack of clarity in the
code.  Instead, we now use two separate hooks, with names that
make it clear(er) what we're doing.

This also positions us to start unraveling some of the rtsock_50
mess, which will need (at least) five hooks.

Revision 1.168.2.7: download - view: text, markup, annotated - select for diffs
Sun Sep 30 01:45:51 2018 UTC (6 years, 2 months ago) by pgoyette
Branches: pgoyette-compat
Diff to: previous 1.168.2.6: preferred, colored; branchpoint 1.168: preferred, colored
Changes since revision 1.168.2.6: +50 -32 lines
Ssync with HEAD

Revision 1.168.2.6: download - view: text, markup, annotated - select for diffs
Sat Sep 29 21:36:14 2018 UTC (6 years, 2 months ago) by pgoyette
Branches: pgoyette-compat
Diff to: previous 1.168.2.5: preferred, colored; branchpoint 1.168: preferred, colored
Changes since revision 1.168.2.5: +4 -7 lines
In MODULE_HOOK_CALL_DECL we don't need to provide the actual argument
list for calling the hook function, nor do we need to provide the
default value (for when the hook has not been set).

Revision 1.165.6.4: download - view: text, markup, annotated - select for diffs
Thu Sep 27 14:52:26 2018 UTC (6 years, 2 months ago) by martin
Branches: netbsd-8
CVS tags: netbsd-8-1-RELEASE, netbsd-8-1-RC1
Diff to: previous 1.165.6.3: preferred, colored; branchpoint 1.165: preferred, colored
Changes since revision 1.165.6.3: +50 -32 lines
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.

Revision 1.168.2.5: download - view: text, markup, annotated - select for diffs
Tue Sep 18 23:03:55 2018 UTC (6 years, 2 months ago) by pgoyette
Branches: pgoyette-compat
Diff to: previous 1.168.2.4: preferred, colored; branchpoint 1.168: preferred, colored
Changes since revision 1.168.2.4: +6 -6 lines
The COMPAT_HOOK macros were renamed to MODULE_HOOK, adjust all callers

Revision 1.174: download - view: text, markup, annotated - select for diffs
Tue Sep 18 05:37:54 2018 UTC (6 years, 2 months ago) by mrg
Branches: MAIN
CVS tags: pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930
Diff to: previous 1.173: preferred, colored
Changes since revision 1.173: +2 -11 lines
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.

Revision 1.173: download - view: text, markup, annotated - select for diffs
Tue Sep 18 05:24:10 2018 UTC (6 years, 2 months ago) by mrg
Branches: MAIN
Diff to: previous 1.172: preferred, colored
Changes since revision 1.172: +20 -8 lines
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

Revision 1.168.2.4: download - view: text, markup, annotated - select for diffs
Tue Sep 18 01:15:58 2018 UTC (6 years, 2 months ago) by pgoyette
Branches: pgoyette-compat
Diff to: previous 1.168.2.3: preferred, colored; branchpoint 1.168: preferred, colored
Changes since revision 1.168.2.3: +27 -4 lines
Split the COMPAT_CALL_HOOK to separate the declaration from the
implementation.  Some hooks are called from multiple source files,
and the old method resulted in duplicate implementations.

Implement MP-safe hooks for the usb_subr_30 code.  Pass the helper
functions as arguments to the compat code so it does not have to
determine if the kernel contains usb code.

Revision 1.172: download - view: text, markup, annotated - select for diffs
Sun Sep 16 20:21:56 2018 UTC (6 years, 2 months ago) by mrg
Branches: MAIN
Diff to: previous 1.171: preferred, colored
Changes since revision 1.171: +32 -17 lines
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.

Revision 1.168.2.3: download - view: text, markup, annotated - select for diffs
Thu Sep 6 06:56:05 2018 UTC (6 years, 3 months ago) by pgoyette
Branches: pgoyette-compat
Diff to: previous 1.168.2.2: preferred, colored; branchpoint 1.168: preferred, colored
Changes since revision 1.168.2.2: +85 -4 lines
Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)

Revision 1.165.6.3: download - view: text, markup, annotated - select for diffs
Wed Aug 8 10:28:35 2018 UTC (6 years, 4 months ago) by martin
Branches: netbsd-8
Diff to: previous 1.165.6.2: preferred, colored; branchpoint 1.165: preferred, colored
Changes since revision 1.165.6.2: +85 -4 lines
Pull up following revision(s) (requested by riastradh in ticket #963):

	sys/dev/usb/if_cue.c: revision 1.80
	sys/dev/usb/umcs.c: revision 1.11
	sys/dev/usb/umcs.c: revision 1.12
	sys/dev/usb/if_ural.c: revision 1.56
	sys/dev/usb/if_run.c: revision 1.28
	sys/dev/usb/if_ural.c: revision 1.57
	sys/dev/usb/if_run.c: revision 1.29
	sys/dev/usb/uatp.c: revision 1.16
	sys/dev/usb/uatp.c: revision 1.17
	sys/dev/usb/if_axe.c: revision 1.91
	sys/dev/usb/if_axe.c: revision 1.92
	sys/dev/usb/if_zyd.c: revision 1.49
	sys/dev/usb/if_axen.c: revision 1.15
	sys/dev/usb/if_url.c: revision 1.60
	sys/dev/usb/if_udav.c: revision 1.54
	sys/dev/usb/if_axen.c: revision 1.16
	sys/dev/usb/if_udav.c: revision 1.55
	sys/dev/usb/if_athn_usb.c: revision 1.28
	sys/dev/usb/if_athn_usb.c: revision 1.29
	sys/dev/usb/if_urtw.c: revision 1.16
	sys/dev/usb/if_urtw.c: revision 1.17
	sys/dev/usb/if_cue.c: revision 1.79
	sys/dev/usb/if_rum.c: revision 1.62
	sys/dev/usb/if_urtwn.c: revision 1.61
	sys/dev/usb/if_rum.c: revision 1.63
	sys/dev/usb/if_urtwn.c: revision 1.63
	sys/dev/usb/usb.c: revision 1.170
	sys/dev/usb/usb.c: revision 1.171
	sys/dev/usb/if_smsc.c: revision 1.35
	sys/dev/usb/if_smsc.c: revision 1.36
	sys/dev/usb/if_zyd.c: revision 1.50
	sys/dev/usb/if_aue.c: revision 1.144
	sys/dev/usb/if_aue.c: revision 1.145
	sys/dev/usb/usb_subr.c: revision 1.225
	sys/dev/usb/usb_subr.c: revision 1.226
	sys/dev/usb/if_upgt.c: revision 1.21
	sys/dev/usb/usbdi.h: revision 1.93
	sys/dev/usb/if_upgt.c: revision 1.22
	sys/dev/usb/if_url.c: revision 1.59
	sys/dev/usb/usbdi.h: revision 1.95
	sys/dev/usb/if_otus.c: revision 1.34
	sys/dev/usb/if_atu.c: revision 1.62
	sys/dev/usb/if_otus.c: revision 1.35
	sys/dev/usb/if_atu.c: revision 1.63

New function usb_rem_task_wait(dev, task, queue).

If task is scheduled to run, removes it from the queue.  If it may
have already begun to run, waits for it to complete.  Caller must
guarantee it will not switch to another queue.  If caller guarantees
it will not be scheduled again, then usb_rem_task_wait guarantees it
is not running on return.

This will enable us to fix a litany of bugs in detach where we
currently fail to wait for a pending task.

Use usb_rem_task_wait in various drivers.

Revision 1.154.2.4: download - view: text, markup, annotated - select for diffs
Wed Aug 8 10:17:11 2018 UTC (6 years, 4 months ago) by martin
Branches: netbsd-7
CVS tags: netbsd-7-2-RELEASE
Diff to: previous 1.154.2.3: preferred, colored; branchpoint 1.154: preferred, colored; next MAIN 1.155: preferred, colored
Changes since revision 1.154.2.3: +85 -4 lines
Pull up following revision(s) (requested by riastradh in ticket #1626):

	sys/dev/usb/if_cue.c: revision 1.80
	sys/dev/usb/umcs.c: revision 1.11
	sys/dev/usb/umcs.c: revision 1.12
	sys/dev/usb/if_ural.c: revision 1.56
	sys/dev/usb/if_run.c: revision 1.28
	sys/dev/usb/if_ural.c: revision 1.57
	sys/dev/usb/if_run.c: revision 1.29
	sys/dev/usb/uatp.c: revision 1.16
	sys/dev/usb/uatp.c: revision 1.17
	sys/dev/usb/if_axe.c: revision 1.91
	sys/dev/usb/if_axe.c: revision 1.92
	sys/dev/usb/if_zyd.c: revision 1.49
	sys/dev/usb/if_axen.c: revision 1.15
	sys/dev/usb/if_url.c: revision 1.60
	sys/dev/usb/if_udav.c: revision 1.54
	sys/dev/usb/if_axen.c: revision 1.16
	sys/dev/usb/if_udav.c: revision 1.55
	sys/dev/usb/if_athn_usb.c: revision 1.28
	sys/dev/usb/if_athn_usb.c: revision 1.29
	sys/dev/usb/if_urtw.c: revision 1.16
	sys/dev/usb/if_urtw.c: revision 1.17
	sys/dev/usb/if_cue.c: revision 1.79
	sys/dev/usb/if_rum.c: revision 1.62
	sys/dev/usb/if_urtwn.c: revision 1.61
	sys/dev/usb/if_rum.c: revision 1.63
	sys/dev/usb/if_urtwn.c: revision 1.63
	sys/dev/usb/usb.c: revision 1.170
	sys/dev/usb/usb.c: revision 1.171
	sys/dev/usb/if_smsc.c: revision 1.35
	sys/dev/usb/if_smsc.c: revision 1.36
	sys/dev/usb/if_zyd.c: revision 1.50
	sys/dev/usb/if_aue.c: revision 1.144
	sys/dev/usb/if_aue.c: revision 1.145
	sys/dev/usb/usb_subr.c: revision 1.225
	sys/dev/usb/usb_subr.c: revision 1.226
	sys/dev/usb/if_upgt.c: revision 1.21
	sys/dev/usb/usbdi.h: revision 1.93
	sys/dev/usb/if_upgt.c: revision 1.22
	sys/dev/usb/if_url.c: revision 1.59
	sys/dev/usb/usbdi.h: revision 1.95
	sys/dev/usb/if_otus.c: revision 1.34
	sys/dev/usb/if_atu.c: revision 1.62
	sys/dev/usb/if_otus.c: revision 1.35
	sys/dev/usb/if_atu.c: revision 1.63

New function usb_rem_task_wait(dev, task, queue).

If task is scheduled to run, removes it from the queue.  If it may
have already begun to run, waits for it to complete.  Caller must
guarantee it will not switch to another queue.  If caller guarantees
it will not be scheduled again, then usb_rem_task_wait guarantees it
is not running on return.

This will enable us to fix a litany of bugs in detach where we
currently fail to wait for a pending task.

Use usb_rem_task_wait in various drivers.

Revision 1.171: download - view: text, markup, annotated - select for diffs
Thu Aug 2 06:09:04 2018 UTC (6 years, 4 months ago) by riastradh
Branches: MAIN
CVS tags: pgoyette-compat-0906, jdolecek-ncqfixes-base, jdolecek-ncqfixes
Diff to: previous 1.170: preferred, colored
Changes since revision 1.170: +39 -50 lines
Fix usb_rem_task_wait API.

- Return whether it removed task from queue or not.
  . True if it was on the queue and we intercepted it before it ran.
  . False if we could not intercept it: either it wasn't queued,
    or it already ran.  (Up to caller to distinguish these cases.)
- Pass an optional interlock like callout_halt.

While here, simplify.

ok mrg@

Revision 1.170: download - view: text, markup, annotated - select for diffs
Sun Jul 29 01:59:46 2018 UTC (6 years, 4 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.169: preferred, colored
Changes since revision 1.169: +96 -4 lines
New function usb_rem_task_wait(dev, task, queue).

If task is scheduled to run, removes it from the queue.  If it may
have already begun to run, waits for it to complete.  Caller must
guarantee it will not switch to another queue.  If caller guarantees
it will not be scheduled again, then usb_rem_task_wait guarantees it
is not running on return.

This will enable us to fix a litany of bugs in detach where we
currently fail to wait for a pending task.

Revision 1.168.2.2: download - view: text, markup, annotated - select for diffs
Sat Jul 28 04:37:58 2018 UTC (6 years, 4 months ago) by pgoyette
Branches: pgoyette-compat
Diff to: previous 1.168.2.1: preferred, colored; branchpoint 1.168: preferred, colored
Changes since revision 1.168.2.1: +6 -2 lines
Sync with HEAD

Revision 1.169: download - view: text, markup, annotated - select for diffs
Fri Jun 29 17:48:24 2018 UTC (6 years, 5 months ago) by msaitoh
Branches: MAIN
CVS tags: pgoyette-compat-0728
Diff to: previous 1.168: preferred, colored
Changes since revision 1.168: +6 -2 lines
 Detect USB 3.1.

Revision 1.168.2.1: download - view: text, markup, annotated - select for diffs
Thu Mar 29 11:20:03 2018 UTC (6 years, 8 months ago) by pgoyette
Branches: pgoyette-compat
Diff to: previous 1.168: preferred, colored
Changes since revision 1.168: +14 -103 lines
Split out the usb compat_30 code and add it to the module

Revision 1.135.2.3: download - view: text, markup, annotated - select for diffs
Sun Dec 3 11:37:34 2017 UTC (7 years ago) by jdolecek
Branches: tls-maxphys
Diff to: previous 1.135.2.2: preferred, colored; branchpoint 1.135: preferred, colored; next MAIN 1.136: preferred, colored
Changes since revision 1.135.2.2: +253 -158 lines
update from HEAD

Revision 1.165.6.2: download - view: text, markup, annotated - select for diffs
Thu Nov 2 21:29:52 2017 UTC (7 years, 1 month ago) by snj
Branches: netbsd-8
CVS tags: netbsd-8-0-RELEASE, netbsd-8-0-RC2, netbsd-8-0-RC1, matt-nb8-mediatek-base, matt-nb8-mediatek
Diff to: previous 1.165.6.1: preferred, colored; branchpoint 1.165: preferred, colored
Changes since revision 1.165.6.1: +12 -12 lines
Pull up following revision(s) (requested by pgoyette in ticket #335):
	share/man/man9/kernhist.9: 1.5-1.8
	sys/arch/acorn26/acorn26/pmap.c: 1.39
	sys/arch/arm/arm32/fault.c: 1.105 via patch
	sys/arch/arm/arm32/pmap.c: 1.350, 1.359
	sys/arch/arm/broadcom/bcm2835_bsc.c: 1.7
	sys/arch/arm/omap/if_cpsw.c: 1.20
	sys/arch/arm/omap/tiotg.c: 1.7
	sys/arch/evbarm/conf/RPI2_INSTALL: 1.3
	sys/dev/ic/sl811hs.c: 1.98
	sys/dev/usb/ehci.c: 1.256
	sys/dev/usb/if_axe.c: 1.83
	sys/dev/usb/motg.c: 1.18
	sys/dev/usb/ohci.c: 1.274
	sys/dev/usb/ucom.c: 1.119
	sys/dev/usb/uhci.c: 1.277
	sys/dev/usb/uhub.c: 1.137
	sys/dev/usb/umass.c: 1.160-1.162
	sys/dev/usb/umass_quirks.c: 1.100
	sys/dev/usb/umass_scsipi.c: 1.55
	sys/dev/usb/usb.c: 1.168
	sys/dev/usb/usb_mem.c: 1.70
	sys/dev/usb/usb_subr.c: 1.221
	sys/dev/usb/usbdi.c: 1.175
	sys/dev/usb/usbdi_util.c: 1.67-1.70
	sys/dev/usb/usbroothub.c: 1.3
	sys/dev/usb/xhci.c: 1.75
	sys/external/bsd/drm2/dist/drm/i915/i915_gem.c: 1.34
	sys/kern/kern_history.c: 1.15
	sys/kern/kern_xxx.c: 1.74
	sys/kern/vfs_bio.c: 1.275-1.276
	sys/miscfs/genfs/genfs_io.c: 1.71
	sys/sys/kernhist.h: 1.21
	sys/ufs/ffs/ffs_balloc.c: 1.63
	sys/ufs/lfs/lfs_vfsops.c: 1.361
	sys/ufs/lfs/ulfs_inode.c: 1.21
	sys/ufs/lfs/ulfs_vnops.c: 1.52
	sys/ufs/ufs/ufs_inode.c: 1.102
	sys/ufs/ufs/ufs_vnops.c: 1.239
	sys/uvm/pmap/pmap.c: 1.37-1.39
	sys/uvm/pmap/pmap_tlb.c: 1.22
	sys/uvm/uvm_amap.c: 1.108
	sys/uvm/uvm_anon.c: 1.64
	sys/uvm/uvm_aobj.c: 1.126
	sys/uvm/uvm_bio.c: 1.91
	sys/uvm/uvm_device.c: 1.66
	sys/uvm/uvm_fault.c: 1.201
	sys/uvm/uvm_km.c: 1.144
	sys/uvm/uvm_loan.c: 1.85
	sys/uvm/uvm_map.c: 1.353
	sys/uvm/uvm_page.c: 1.194
	sys/uvm/uvm_pager.c: 1.111
	sys/uvm/uvm_pdaemon.c: 1.109
	sys/uvm/uvm_swap.c: 1.175
	sys/uvm/uvm_vnode.c: 1.103
	usr.bin/vmstat/vmstat.c: 1.219
Reorder to test for null before null deref in debug code
--
Reorder to test for null before null deref in debug code
--
KNF
--
No need for '\n' in UVMHIST_LOG
--
normalise a BIOHIST log message
--
Update the kernhist(9) kernel history code to address issues identified
in PR kern/52639, as well as some general cleaning-up...
(As proposed on tech-kern@ with additional changes and enhancements.)
Details of changes:
* All history arguments are now stored as uintmax_t values[1], both in
   the kernel and in the structures used for exporting the history data
   to userland via sysctl(9).  This avoids problems on some architectures
   where passing a 64-bit (or larger) value to printf(3) can cause it to
   process the value as multiple arguments.  (This can be particularly
   problematic when printf()'s format string is not a literal, since in
   that case the compiler cannot know how large each argument should be.)
* Update the data structures used for exporting kernel history data to
   include a version number as well as the length of history arguments.
* All [2] existing users of kernhist(9) have had their format strings
   updated.  Each format specifier now includes an explicit length
   modifier 'j' to refer to numeric values of the size of uintmax_t.
* All [2] existing users of kernhist(9) have had their format strings
   updated to replace uses of "%p" with "%#jx", and the pointer
   arguments are now cast to (uintptr_t) before being subsequently cast
   to (uintmax_t).  This is needed to avoid compiler warnings about
   casting "pointer to integer of a different size."
* All [2] existing users of kernhist(9) have had instances of "%s" or
   "%c" format strings replaced with numeric formats; several instances
   of mis-match between format string and argument list have been fixed.
* vmstat(1) has been modified to handle the new size of arguments in the
   history data as exported by sysctl(9).
* vmstat(1) now provides a warning message if the history requested with
   the -u option does not exist (previously, this condition was silently
   ignored, with only a single blank line being printed).
* vmstat(1) now checks the version and argument length included in the
   data exported via sysctl(9) and exits if they do not match the values
   with which vmstat was built.
* The kernhist(9) man-page has been updated to note the additional
   requirements imposed on the format strings, along with several other
   minor changes and enhancements.
[1] It would have been possible to use an explicit length (for example,
     uint64_t) for the history arguments.  But that would require another
     "rototill" of all the users in the future when we add support for an
     architecture that supports a larger size.  Also, the printf(3)
format
     specifiers for explicitly-sized values, such as "%"PRIu64, are much
     more verbose (and less aesthetically appealing, IMHO) than simply
     using "%ju".
[2] I've tried very hard to find "all [the] existing users of
kernhist(9)"
     but it is possible that I've missed some of them.  I would be glad
to
     update any stragglers that anyone identifies.
--
For some reason this single kernel seems to have outgrown its declared
size as a result of the kernhist(9) changes.  Bump the size.
XXX The amount of increase may be excessive - anyone with more detailed
XXX knowledge please feel free to further adjust the value
appropriately.
--
Misssed one cast of pointer --> uintptr_t in previous kernhist(9) commit
--
And yet another one.  :(
--
Use correct mark-up for NetBSD version.
--
More improvements in grammar and readability.
--
Remove a stray '"' (obvious typo) and add a couple of casts that are
probably needed.
--
And replace an instance of "%p" conversion with "%#jx"
--
Whitespace fix. Give Bl tag table a width. Fix Xr.

Revision 1.168: download - view: text, markup, annotated - select for diffs
Sat Oct 28 00:37:12 2017 UTC (7 years, 1 month ago) by pgoyette
Branches: MAIN
CVS tags: tls-maxphys-base-20171202, phil-wifi-base, pgoyette-compat-base, pgoyette-compat-0625, pgoyette-compat-0521, pgoyette-compat-0502, pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315
Branch point for: phil-wifi, pgoyette-compat
Diff to: previous 1.167: preferred, colored
Changes since revision 1.167: +12 -12 lines
Update the kernhist(9) kernel history code to address issues identified
in PR kern/52639, as well as some general cleaning-up...

(As proposed on tech-kern@ with additional changes and enhancements.)

Details of changes:

* All history arguments are now stored as uintmax_t values[1], both in
  the kernel and in the structures used for exporting the history data
  to userland via sysctl(9).  This avoids problems on some architectures
  where passing a 64-bit (or larger) value to printf(3) can cause it to
  process the value as multiple arguments.  (This can be particularly
  problematic when printf()'s format string is not a literal, since in
  that case the compiler cannot know how large each argument should be.)

* Update the data structures used for exporting kernel history data to
  include a version number as well as the length of history arguments.

* All [2] existing users of kernhist(9) have had their format strings
  updated.  Each format specifier now includes an explicit length
  modifier 'j' to refer to numeric values of the size of uintmax_t.

* All [2] existing users of kernhist(9) have had their format strings
  updated to replace uses of "%p" with "%#jx", and the pointer
  arguments are now cast to (uintptr_t) before being subsequently cast
  to (uintmax_t).  This is needed to avoid compiler warnings about
  casting "pointer to integer of a different size."

* All [2] existing users of kernhist(9) have had instances of "%s" or
  "%c" format strings replaced with numeric formats; several instances
  of mis-match between format string and argument list have been fixed.

* vmstat(1) has been modified to handle the new size of arguments in the
  history data as exported by sysctl(9).

* vmstat(1) now provides a warning message if the history requested with
  the -u option does not exist (previously, this condition was silently
  ignored, with only a single blank line being printed).

* vmstat(1) now checks the version and argument length included in the
  data exported via sysctl(9) and exits if they do not match the values
  with which vmstat was built.

* The kernhist(9) man-page has been updated to note the additional
  requirements imposed on the format strings, along with several other
  minor changes and enhancements.

[1] It would have been possible to use an explicit length (for example,
    uint64_t) for the history arguments.  But that would require another
    "rototill" of all the users in the future when we add support for an
    architecture that supports a larger size.  Also, the printf(3) format
    specifiers for explicitly-sized values, such as "%"PRIu64, are much
    more verbose (and less aesthetically appealing, IMHO) than simply
    using "%ju".

[2] I've tried very hard to find "all [the] existing users of kernhist(9)"
    but it is possible that I've missed some of them.  I would be glad to
    update any stragglers that anyone identifies.

Revision 1.167: download - view: text, markup, annotated - select for diffs
Wed Oct 25 08:12:39 2017 UTC (7 years, 1 month ago) by maya
Branches: MAIN
Diff to: previous 1.166: preferred, colored
Changes since revision 1.166: +8 -4 lines
Use C99 initializer for filterops

Mostly done with spatch with touchups for indentation

@@
expression a;
identifier b,c,d;
identifier p;
@@
const struct filterops p =
- 	{ a, b, c, d
+ 	{
+ 	.f_isfd = a,
+ 	.f_attach = b,
+ 	.f_detach = c,
+ 	.f_event = d,
};

Revision 1.154.2.3: download - view: text, markup, annotated - select for diffs
Sun Oct 1 17:12:41 2017 UTC (7 years, 2 months ago) by snj
Branches: netbsd-7
Diff to: previous 1.154.2.2: preferred, colored; branchpoint 1.154: preferred, colored
Changes since revision 1.154.2.2: +3 -2 lines
Pull up following revision(s) (requested by skrll in ticket #1502):
	sys/dev/usb/usb.c: revision 1.166
Add a missing break that should have been included in revision 1.163.
Spotted by "sc dying" and reported on current-users

Revision 1.165.6.1: download - view: text, markup, annotated - select for diffs
Mon Sep 4 06:40:37 2017 UTC (7 years, 3 months ago) by snj
Branches: netbsd-8
Diff to: previous 1.165: preferred, colored
Changes since revision 1.165: +3 -2 lines
Pull up following revision(s) (requested by skrll in ticket #262):
	sys/dev/usb/usb.c: revision 1.166
Add a missing break that should have been included in revision 1.163.
Spotted by "sc dying" and reported on current-users

Revision 1.166: download - view: text, markup, annotated - select for diffs
Fri Sep 1 15:19:59 2017 UTC (7 years, 3 months ago) by skrll
Branches: MAIN
Diff to: previous 1.165: preferred, colored
Changes since revision 1.165: +3 -2 lines
Add a missing break that should have been included in revision 1.163.

Spotted by "sc dying" and reported on current-users

Revision 1.164.2.1: download - view: text, markup, annotated - select for diffs
Fri Apr 21 16:53:53 2017 UTC (7 years, 7 months ago) by bouyer
Branches: bouyer-socketcan
Diff to: previous 1.164: preferred, colored; next MAIN 1.165: preferred, colored
Changes since revision 1.164: +13 -7 lines
Sync with HEAD

Revision 1.154.2.2: download - view: text, markup, annotated - select for diffs
Wed Apr 5 19:54:20 2017 UTC (7 years, 8 months ago) by snj
Branches: netbsd-7
Diff to: previous 1.154.2.1: preferred, colored; branchpoint 1.154: preferred, colored
Changes since revision 1.154.2.1: +248 -158 lines
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)

Revision 1.163.2.1: download - view: text, markup, annotated - select for diffs
Mon Mar 20 06:57:38 2017 UTC (7 years, 8 months ago) by pgoyette
Branches: pgoyette-localcount
Diff to: previous 1.163: preferred, colored; next MAIN 1.164: preferred, colored
Changes since revision 1.163: +13 -7 lines
Sync with HEAD

Revision 1.154.2.1.2.2: download - view: text, markup, annotated - select for diffs
Thu Jan 26 21:54:25 2017 UTC (7 years, 10 months ago) by skrll
Branches: netbsd-7-nhusb
Diff to: previous 1.154.2.1.2.1: preferred, colored; branchpoint 1.154.2.1: preferred, colored; next MAIN 1.154.2.2: preferred, colored
Changes since revision 1.154.2.1.2.1: +15 -9 lines
Sync with HEAD/nhusb

Revision 1.165: download - view: text, markup, annotated - select for diffs
Thu Jan 19 16:05:00 2017 UTC (7 years, 10 months ago) by skrll
Branches: MAIN
CVS tags: prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, pgoyette-localcount-20170426, pgoyette-localcount-20170320, perseant-stdc-iso10646-base, perseant-stdc-iso10646, nick-nhusb-base-20170825, nick-nhusb-base-20170204, netbsd-8-base, jdolecek-ncq-base, jdolecek-ncq, bouyer-socketcan-base1
Branch point for: netbsd-8
Diff to: previous 1.164: preferred, colored
Changes since revision 1.164: +13 -7 lines
Pull across xhci(4) improvemnts from nick-nhusb

Revision 1.156.2.17: download - view: text, markup, annotated - select for diffs
Tue Jan 3 12:50:50 2017 UTC (7 years, 11 months ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.156.2.16: preferred, colored; branchpoint 1.156: preferred, colored; next MAIN 1.157: preferred, colored
Changes since revision 1.156.2.16: +13 -7 lines
Improve handling of roothub device and free up a bus address for LS/FS/HS
controllers.

Revision 1.156.2.16: download - view: text, markup, annotated - select for diffs
Sun Jan 1 14:56:25 2017 UTC (7 years, 11 months ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.156.2.15: preferred, colored; branchpoint 1.156: preferred, colored
Changes since revision 1.156.2.15: +3 -3 lines
Whitespace

Revision 1.156.2.15: download - view: text, markup, annotated - select for diffs
Thu Dec 29 08:36:46 2016 UTC (7 years, 11 months ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.156.2.14: preferred, colored; branchpoint 1.156: preferred, colored
Changes since revision 1.156.2.14: +3 -3 lines
Whitespae

Revision 1.154.2.1.2.1: download - view: text, markup, annotated - select for diffs
Tue Sep 6 20:33:09 2016 UTC (8 years, 3 months ago) by skrll
Branches: netbsd-7-nhusb
Diff to: previous 1.154.2.1: preferred, colored
Changes since revision 1.154.2.1: +240 -156 lines
First pass at netbsd-7 updated with USB code from HEAD

Revision 1.164: download - view: text, markup, annotated - select for diffs
Sun Aug 14 14:42:22 2016 UTC (8 years, 4 months ago) by skrll
Branches: MAIN
CVS tags: pgoyette-localcount-20170107, pgoyette-localcount-20161104, nick-nhusb-base-20161204, nick-nhusb-base-20161004, localcount-20160914, bouyer-socketcan-base
Branch point for: bouyer-socketcan
Diff to: previous 1.163: preferred, colored
Changes since revision 1.163: +3 -3 lines
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.

Should fix/help
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

and probably others

Revision 1.156.2.14: download - view: text, markup, annotated - select for diffs
Fri Jun 10 08:15:22 2016 UTC (8 years, 6 months ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.156.2.13: preferred, colored; branchpoint 1.156: preferred, colored
Changes since revision 1.156.2.13: +3 -3 lines
Use SOFTINT_SERIAL for the USB stack (the 'S' stands for serial).

This is a step in the right direction towards fixing

kern/50491: unkillable wait in usbd_transfer while using usmsc0 on
raspberry pi 2

kern/49065: ifconfig tun0 ... sequence locks up system

but further analysis of locking of the usb drivers is required.

Revision 1.156.2.13: download - view: text, markup, annotated - select for diffs
Sun May 29 08:44:31 2016 UTC (8 years, 6 months ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.156.2.12: preferred, colored; branchpoint 1.156: preferred, colored
Changes since revision 1.156.2.12: +40 -21 lines
Sync with HEAD

Revision 1.163: download - view: text, markup, annotated - select for diffs
Tue Apr 26 12:58:48 2016 UTC (8 years, 7 months ago) by skrll
Branches: MAIN
CVS tags: pgoyette-localcount-base, pgoyette-localcount-20160806, pgoyette-localcount-20160726, nick-nhusb-base-20160907, nick-nhusb-base-20160529
Branch point for: pgoyette-localcount
Diff to: previous 1.162: preferred, colored
Changes since revision 1.162: +40 -21 lines
Debug

Revision 1.162: download - view: text, markup, annotated - select for diffs
Sat Apr 23 10:15:32 2016 UTC (8 years, 7 months ago) by skrll
Branches: MAIN
Diff to: previous 1.161: preferred, colored
Changes since revision 1.161: +165 -148 lines
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

Revision 1.154.2.1: download - view: text, markup, annotated - select for diffs
Sat Feb 6 20:58:13 2016 UTC (8 years, 10 months ago) by snj
Branches: netbsd-7
CVS tags: netbsd-7-nhusb-base-20170116, netbsd-7-nhusb-base, netbsd-7-1-RELEASE, netbsd-7-1-RC2, netbsd-7-1-RC1, netbsd-7-1-2-RELEASE, netbsd-7-1-1-RELEASE, netbsd-7-1
Branch point for: netbsd-7-nhusb
Diff to: previous 1.154: preferred, colored
Changes since revision 1.154: +3 -3 lines
Pull up following revision(s) (requested by skrll in ticket #1097):
	sys/dev/usb/usb.c: revision 1.161
	sys/dev/usb/usb_subr.c: revisions 1.207, 1.208
	sys/dev/usb/usbdivar.h: revision 1.111
	sys/dev/usb/xhci.c: revision 1.33
Get the iManufacturer, iProduct, and iSerialNumber strings before probing
for drivers and cache them for later use.  This reduces bus transactions
and fixes attachment for at least two of my umass(4)s.
--
Need sys/kmem.h

Revision 1.156.2.12: download - view: text, markup, annotated - select for diffs
Sun Jan 10 10:33:43 2016 UTC (8 years, 11 months ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.156.2.11: preferred, colored; branchpoint 1.156: preferred, colored
Changes since revision 1.156.2.11: +3 -3 lines
Bring the following change from HEAD

Get the iManufacturer, iProduct, and iSerialNumber strings before probing
for drivers and cache them for later use.  This reduces bus transactions
and fixes attachment for at least two of my umass(4)s.

Revision 1.161: download - view: text, markup, annotated - select for diffs
Wed Jan 6 22:12:49 2016 UTC (8 years, 11 months ago) by skrll
Branches: MAIN
CVS tags: nick-nhusb-base-20160422, nick-nhusb-base-20160319
Diff to: previous 1.160: preferred, colored
Changes since revision 1.160: +3 -3 lines
Get the iManufacturer, iProduct, and iSerialNumber strings before probing
for drivers and cache them for later use.  This reduces bus transactions
and fixes attachment for at least two of my umass(4)s.

Revision 1.156.2.11: download - view: text, markup, annotated - select for diffs
Sun Dec 27 12:09:59 2015 UTC (8 years, 11 months ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.156.2.10: preferred, colored; branchpoint 1.156: preferred, colored
Changes since revision 1.156.2.10: +3 -3 lines
Sync with HEAD (as of 26th Dec)

Revision 1.160: download - view: text, markup, annotated - select for diffs
Thu Oct 29 00:15:48 2015 UTC (9 years, 1 month ago) by mrg
Branches: MAIN
CVS tags: nick-nhusb-base-20151226
Diff to: previous 1.159: preferred, colored
Changes since revision 1.159: +3 -3 lines
eliminate USBHIST as a define/option.  it was entangled with USB_DEBUG
and only referenced a handful of times.  rename any usage in configs.

fixes recent build problems i introduced with the previous files.usb
change.

Revision 1.156.2.10: download - view: text, markup, annotated - select for diffs
Tue Sep 29 11:38:29 2015 UTC (9 years, 2 months ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.156.2.9: preferred, colored; branchpoint 1.156: preferred, colored
Changes since revision 1.156.2.9: +5 -5 lines
sizeof KNF

Revision 1.156.2.9: download - view: text, markup, annotated - select for diffs
Sat Jun 6 14:40:14 2015 UTC (9 years, 6 months ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.156.2.8: preferred, colored; branchpoint 1.156: preferred, colored
Changes since revision 1.156.2.8: +4 -2 lines
Sync with HEAD

Revision 1.159: download - view: text, markup, annotated - select for diffs
Sat May 30 06:41:08 2015 UTC (9 years, 6 months ago) by skrll
Branches: MAIN
CVS tags: nick-nhusb-base-20150921, nick-nhusb-base-20150606
Diff to: previous 1.158: preferred, colored
Changes since revision 1.158: +3 -3 lines
Make the non-USBHIST case compile

Revision 1.158: download - view: text, markup, annotated - select for diffs
Sat May 30 06:10:38 2015 UTC (9 years, 6 months ago) by skrll
Branches: MAIN
Diff to: previous 1.157: preferred, colored
Changes since revision 1.157: +4 -2 lines
Add missing KERNHIST_LINK_STATIC(usbhist).  Pointed out by t-hash.

Revision 1.156.2.8: download - view: text, markup, annotated - select for diffs
Thu May 28 11:55:44 2015 UTC (9 years, 6 months ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.156.2.7: preferred, colored; branchpoint 1.156: preferred, colored
Changes since revision 1.156.2.7: +5 -5 lines
Bring usbhist initialisation change across from HEAD

Revision 1.157: download - view: text, markup, annotated - select for diffs
Thu May 28 09:06:36 2015 UTC (9 years, 6 months ago) by skrll
Branches: MAIN
Diff to: previous 1.156: preferred, colored
Changes since revision 1.156: +5 -5 lines
Static initialise usbhist - it can be used by controller drivers, i.e.
before usb attaches.

Revision 1.156.2.7: download - view: text, markup, annotated - select for diffs
Fri Apr 3 21:22:33 2015 UTC (9 years, 8 months ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.156.2.6: preferred, colored; branchpoint 1.156: preferred, colored
Changes since revision 1.156.2.6: +3 -2 lines
Fix non-USB_DEBUG compile

Revision 1.156.2.6: download - view: text, markup, annotated - select for diffs
Sat Mar 21 15:28:10 2015 UTC (9 years, 8 months ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.156.2.5: preferred, colored; branchpoint 1.156: preferred, colored
Changes since revision 1.156.2.5: +41 -26 lines
Convert to USBHIST

Revision 1.156.2.5: download - view: text, markup, annotated - select for diffs
Thu Mar 19 17:26:43 2015 UTC (9 years, 8 months ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.156.2.4: preferred, colored; branchpoint 1.156: preferred, colored
Changes since revision 1.156.2.4: +14 -14 lines
Do the same as OpenBSD and get rid of the *_handle typedefs and use
plain structures insteads

Revision 1.156.2.4: download - view: text, markup, annotated - select for diffs
Fri Dec 5 09:37:50 2014 UTC (10 years ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.156.2.3: preferred, colored; branchpoint 1.156: preferred, colored
Changes since revision 1.156.2.3: +35 -35 lines
KNF. Remove ( ) from return statements.

Revision 1.156.2.3: download - view: text, markup, annotated - select for diffs
Wed Dec 3 14:18:07 2014 UTC (10 years ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.156.2.2: preferred, colored; branchpoint 1.156: preferred, colored
Changes since revision 1.156.2.2: +12 -11 lines
Replace malloc(9) with kmem(9)

Revision 1.156.2.2: download - view: text, markup, annotated - select for diffs
Wed Dec 3 12:52:07 2014 UTC (10 years ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.156.2.1: preferred, colored; branchpoint 1.156: preferred, colored
Changes since revision 1.156.2.1: +67 -67 lines
The grand renaming of structure members.

No functional change.

Revision 1.156.2.1: download - view: text, markup, annotated - select for diffs
Mon Dec 1 12:38:39 2014 UTC (10 years ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.156: preferred, colored
Changes since revision 1.156: +5 -5 lines
Add prefixes to method structures member names. No functional change.

Revision 1.156: download - view: text, markup, annotated - select for diffs
Fri Sep 12 16:40:38 2014 UTC (10 years, 3 months ago) by skrll
Branches: MAIN
CVS tags: nick-nhusb-base-20150406, nick-nhusb-base
Branch point for: nick-nhusb
Diff to: previous 1.155: preferred, colored
Changes since revision 1.155: +44 -2 lines
Improve USB debugging with USBHIST based on KERNHIST.

Convert some DPRINTFs to USBHIST_LOG and allow usbdebug, ehcidebug and
umassdebug to be changed via sysctl.

Remove the #define mess in usb.h.

This was started by mrg@ and updated by reinoud@

Revision 1.135.2.2: download - view: text, markup, annotated - select for diffs
Wed Aug 20 00:03:51 2014 UTC (10 years, 3 months ago) by tls
Branches: tls-maxphys
Diff to: previous 1.135.2.1: preferred, colored; branchpoint 1.135: preferred, colored
Changes since revision 1.135.2.1: +85 -93 lines
Rebase to HEAD as of a few days ago.

Revision 1.155: download - view: text, markup, annotated - select for diffs
Tue Aug 12 13:36:40 2014 UTC (10 years, 4 months ago) by skrll
Branches: MAIN
Diff to: previous 1.154: preferred, colored
Changes since revision 1.154: +6 -2 lines
Some USB3 / SS support - baby steps.  From Takahiro HAYASHI.

Revision 1.149.2.1: download - view: text, markup, annotated - select for diffs
Sun Aug 10 06:54:59 2014 UTC (10 years, 4 months ago) by tls
Branches: tls-earlyentropy
Diff to: previous 1.149: preferred, colored; next MAIN 1.150: preferred, colored
Changes since revision 1.149: +28 -12 lines
Rebase.

Revision 1.154: download - view: text, markup, annotated - select for diffs
Fri Jul 25 08:10:39 2014 UTC (10 years, 4 months ago) by dholland
Branches: MAIN
CVS tags: tls-maxphys-base, tls-earlyentropy-base, netbsd-7-base, netbsd-7-0-RELEASE, netbsd-7-0-RC3, netbsd-7-0-RC2, netbsd-7-0-RC1, netbsd-7-0-2-RELEASE, netbsd-7-0-1-RELEASE, netbsd-7-0
Branch point for: netbsd-7
Diff to: previous 1.153: preferred, colored
Changes since revision 1.153: +3 -2 lines
Add d_discard to all struct cdevsw instances I could find.

All have been set to "nodiscard"; some should get a real implementation.

Revision 1.153: download - view: text, markup, annotated - select for diffs
Tue Jul 22 23:06:29 2014 UTC (10 years, 4 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.152: preferred, colored
Changes since revision 1.152: +2 -3 lines
Remove (harmless) redundant assignment of task->queue in usb_add_task.

Revision 1.152: download - view: text, markup, annotated - select for diffs
Thu Jul 17 19:23:40 2014 UTC (10 years, 4 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.151: preferred, colored
Changes since revision 1.151: +3 -2 lines
Need <sys/atomic.h> for atomic_cas_uint.

Revision 1.151: download - view: text, markup, annotated - select for diffs
Thu Jul 17 18:53:34 2014 UTC (10 years, 4 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.150: preferred, colored
Changes since revision 1.150: +7 -4 lines
Don't touch task after calling it.

Revision 1.150: download - view: text, markup, annotated - select for diffs
Thu Jul 17 18:42:37 2014 UTC (10 years, 4 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.149: preferred, colored
Changes since revision 1.149: +21 -9 lines
Fix usb task queue locking.

Revision 1.125.2.5: download - view: text, markup, annotated - select for diffs
Thu May 22 11:40:37 2014 UTC (10 years, 6 months ago) by yamt
Branches: yamt-pagecache
Diff to: previous 1.125.2.4: preferred, colored; branchpoint 1.125: preferred, colored; next MAIN 1.126: preferred, colored
Changes since revision 1.125.2.4: +59 -83 lines
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")

Revision 1.140.2.2: download - view: text, markup, annotated - select for diffs
Sun May 18 17:45:48 2014 UTC (10 years, 6 months ago) by rmind
Branches: rmind-smpnet
Diff to: previous 1.140.2.1: preferred, colored; branchpoint 1.140: preferred, colored; next MAIN 1.141: preferred, colored
Changes since revision 1.140.2.1: +56 -80 lines
sync with head

Revision 1.149: download - view: text, markup, annotated - select for diffs
Sun Mar 16 05:20:29 2014 UTC (10 years, 9 months ago) by dholland
Branches: MAIN
CVS tags: yamt-pagecache-base9, rmind-smpnet-nbase, rmind-smpnet-base, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3
Branch point for: tls-earlyentropy
Diff to: previous 1.148: preferred, colored
Changes since revision 1.148: +13 -4 lines
Change (mostly mechanically) every cdevsw/bdevsw I can find to use
designated initializers.

I have not built every extant kernel so I have probably broken at
least one build; however I've also found and fixed some wrong
cdevsw/bdevsw entries so even if so I think we come out ahead.

Revision 1.148: download - view: text, markup, annotated - select for diffs
Sat Nov 9 07:52:22 2013 UTC (11 years, 1 month ago) by skrll
Branches: MAIN
Diff to: previous 1.147: preferred, colored
Changes since revision 1.147: +3 -3 lines
Whitespace

Revision 1.147: download - view: text, markup, annotated - select for diffs
Thu Nov 7 06:54:48 2013 UTC (11 years, 1 month ago) by skrll
Branches: MAIN
Diff to: previous 1.146: preferred, colored
Changes since revision 1.146: +31 -63 lines
bus->lock is always available now. Remove the old code that helped when
it wasn't always available.

Revision 1.146: download - view: text, markup, annotated - select for diffs
Fri Oct 18 19:54:56 2013 UTC (11 years, 1 month ago) by christos
Branches: MAIN
Diff to: previous 1.145: preferred, colored
Changes since revision 1.145: +4 -4 lines
move compat var in compat code.

Revision 1.145: download - view: text, markup, annotated - select for diffs
Sat Oct 12 16:49:01 2013 UTC (11 years, 2 months ago) by christos
Branches: MAIN
Diff to: previous 1.144: preferred, colored
Changes since revision 1.144: +4 -4 lines
Pass the device name in, so we can debug what deferred drivers did not work.

Revision 1.144: download - view: text, markup, annotated - select for diffs
Sat Sep 14 14:06:40 2013 UTC (11 years, 3 months ago) by jakllsch
Branches: MAIN
Diff to: previous 1.143: preferred, colored
Changes since revision 1.143: +3 -3 lines
Allow USB_DEVICEINFO on address 0.  Needed for the xhci(4) root hub device.

Revision 1.143: download - view: text, markup, annotated - select for diffs
Fri Sep 13 23:42:12 2013 UTC (11 years, 3 months ago) by jakllsch
Branches: MAIN
Diff to: previous 1.142: preferred, colored
Changes since revision 1.142: +13 -14 lines
Establish host controller softint earlier, in usb_attach rather than
usb_doattach.

Revision 1.140.2.1: download - view: text, markup, annotated - select for diffs
Wed Aug 28 23:59:27 2013 UTC (11 years, 3 months ago) by rmind
Branches: rmind-smpnet
Diff to: previous 1.140: preferred, colored
Changes since revision 1.140: +5 -5 lines
sync with head

Revision 1.142: download - view: text, markup, annotated - select for diffs
Wed Aug 21 18:11:31 2013 UTC (11 years, 3 months ago) by jakllsch
Branches: MAIN
Diff to: previous 1.141: preferred, colored
Changes since revision 1.141: +4 -4 lines
Use usbd_errstr instead of printing non-errno(2) error code.

Revision 1.141: download - view: text, markup, annotated - select for diffs
Wed Aug 21 17:59:40 2013 UTC (11 years, 3 months ago) by jakllsch
Branches: MAIN
Diff to: previous 1.140: preferred, colored
Changes since revision 1.140: +3 -3 lines
Use NULL instead of 0 as appropriate.

Revision 1.135.2.1: download - view: text, markup, annotated - select for diffs
Mon Feb 25 00:29:40 2013 UTC (11 years, 9 months ago) by tls
Branches: tls-maxphys
Diff to: previous 1.135: preferred, colored
Changes since revision 1.135: +18 -7 lines
resync with head

Revision 1.125.2.4: download - view: text, markup, annotated - select for diffs
Wed Jan 23 00:06:14 2013 UTC (11 years, 10 months ago) by yamt
Branches: yamt-pagecache
CVS tags: yamt-pagecache-tag8
Diff to: previous 1.125.2.3: preferred, colored; branchpoint 1.125: preferred, colored
Changes since revision 1.125.2.3: +15 -8 lines
sync with head

Revision 1.140: download - view: text, markup, annotated - select for diffs
Tue Jan 22 12:40:43 2013 UTC (11 years, 10 months ago) by jmcneill
Branches: MAIN
CVS tags: yamt-pagecache-base8, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, khorben-n900, agc-symver-base, agc-symver
Branch point for: rmind-smpnet
Diff to: previous 1.139: preferred, colored
Changes since revision 1.139: +8 -2 lines
- Add a USBD_MPSAFE flag to usbd_open_pipe. If not set, acquire KERNEL_LOCK
  before invoking xfer callbacks on this pipe.
- Add an extra flags parameter to usb_init_task. If USBD_TASKQ_MPSAFE is not
  present, acquire KERNEL_LOCK before invoking the task callback.

Revision 1.125.2.3: download - view: text, markup, annotated - select for diffs
Wed Jan 16 05:33:35 2013 UTC (11 years, 10 months ago) by yamt
Branches: yamt-pagecache
Diff to: previous 1.125.2.2: preferred, colored; branchpoint 1.125: preferred, colored
Changes since revision 1.125.2.2: +7 -3 lines
sync with (a bit old) head

Revision 1.139: download - view: text, markup, annotated - select for diffs
Tue Jan 8 06:47:45 2013 UTC (11 years, 11 months ago) by skrll
Branches: MAIN
Diff to: previous 1.138: preferred, colored
Changes since revision 1.138: +4 -4 lines
Improve a comment slightly

Revision 1.138: download - view: text, markup, annotated - select for diffs
Sat Jan 5 23:34:19 2013 UTC (11 years, 11 months ago) by christos
Branches: MAIN
Diff to: previous 1.137: preferred, colored
Changes since revision 1.137: +2 -3 lines
fix debug variables.
- include opt_usb.h in usb.h so that USB_DEBUG gets set properly in it.
- normalize and sort debugging variables

Revision 1.137: download - view: text, markup, annotated - select for diffs
Sat Jan 5 01:30:17 2013 UTC (11 years, 11 months ago) by christos
Branches: MAIN
Diff to: previous 1.136: preferred, colored
Changes since revision 1.136: +7 -5 lines
- need opt_usb.h if depending on USB_DEBUG
- remove trailing whitespace
- add missing KERNEL_RCSID

Revision 1.136: download - view: text, markup, annotated - select for diffs
Tue Nov 27 04:54:58 2012 UTC (12 years ago) by mrg
Branches: MAIN
CVS tags: yamt-pagecache-base7
Diff to: previous 1.135: preferred, colored
Changes since revision 1.135: +7 -3 lines
since usb task add/remove is supposed to be callable in any usb
context, make sure the lock is OK for such.  ie, not a sleeping lock.
fixes PR#47244.

Revision 1.125.2.2: download - view: text, markup, annotated - select for diffs
Tue Oct 30 17:22:09 2012 UTC (12 years, 1 month ago) by yamt
Branches: yamt-pagecache
Diff to: previous 1.125.2.1: preferred, colored; branchpoint 1.125: preferred, colored
Changes since revision 1.125.2.1: +167 -87 lines
sync with head

Revision 1.135: download - view: text, markup, annotated - select for diffs
Fri Jul 20 23:18:02 2012 UTC (12 years, 4 months ago) by mrg
Branches: MAIN
CVS tags: yamt-pagecache-base6
Branch point for: tls-maxphys
Diff to: previous 1.134: preferred, colored
Changes since revision 1.134: +3 -3 lines
now that the task threads are created earlier, move the call to
usb_create_event_thread() back into usb_doattach(), so that eg,
usb_discover() never operates when the root_hub is not setup.

fixes a crash joerg@ reported.

Revision 1.134: download - view: text, markup, annotated - select for diffs
Fri Jul 20 07:31:14 2012 UTC (12 years, 4 months ago) by mrg
Branches: MAIN
Diff to: previous 1.133: preferred, colored
Changes since revision 1.133: +34 -32 lines
usb task fixes, from jared and myself:

- create the task/event threads in usb_attach() so they're more likely
  to be ready when usb_doattach() runs

- move the task thread creation into usb_once_init(), instead of having
  some other method of only creating them once

Revision 1.133: download - view: text, markup, annotated - select for diffs
Fri Jul 20 02:23:35 2012 UTC (12 years, 4 months ago) by christos
Branches: MAIN
Diff to: previous 1.132: preferred, colored
Changes since revision 1.132: +5 -6 lines
don't access memory outside the array bounds.

Revision 1.132: download - view: text, markup, annotated - select for diffs
Tue Jul 17 10:33:46 2012 UTC (12 years, 4 months ago) by cegger
Branches: MAIN
Diff to: previous 1.131: preferred, colored
Changes since revision 1.131: +4 -5 lines
revert previous. testing queue number requires lock held.

Revision 1.131: download - view: text, markup, annotated - select for diffs
Tue Jul 17 10:18:43 2012 UTC (12 years, 4 months ago) by cegger
Branches: MAIN
Diff to: previous 1.130: preferred, colored
Changes since revision 1.130: +7 -6 lines
Do not mutex_enter() a usb_taskq[-1].
Fixes LOCKDEBUG panic.

Revision 1.130: download - view: text, markup, annotated - select for diffs
Sun Jun 10 06:15:54 2012 UTC (12 years, 6 months ago) by mrg
Branches: MAIN
Diff to: previous 1.129: preferred, colored
Changes since revision 1.129: +145 -66 lines
merge the jmcneill-usbmp branch.  many thanks to jared for the
initial work, and every one else who has tested things for me.
this is largely my fault at this point :-)

the main changes are something like:

        - usbd_bus_methods{} gains a get_lock() to enable the
          host controller to provide a lock for the USB code.
          if the lock isn't provided, old-style protection is
          (partially) applied.

        - ehci/ohci/uhci have been converted to the new
          interfaces, including mutex/cv/etc conversion.

        - usbdivar.h contains a discussion about locking and
          what locks are held for which method calls.  more
          to come for usbdi(9) here.

        - audio drivers (uaudio, umidi, auvitek) have been
          properly SMPified now that USB is ready.

        - scsi drivers have been modified to take the kernel
          lock explicitly before calling into scsi code.

        - usb pipes are associated with a lock, that is the
          same as the controller lock.  (this could be split
          up further in the future.)

        - several usbfoo_locked() or usbfoo_unlocked()
          functions have been added to the usbdi(9) to
          enable functionality with or without the USB
          lock (per controller) already being held.

the TODO.usbmp file has specific details on what is left to
do, including what device-specific changes should be done now
that the whole framework is ready.

Revision 1.125.2.1: download - view: text, markup, annotated - select for diffs
Tue Apr 17 00:08:09 2012 UTC (12 years, 7 months ago) by yamt
Branches: yamt-pagecache
Diff to: previous 1.125: preferred, colored
Changes since revision 1.125: +4 -12 lines
sync with head

Revision 1.125.6.13: download - view: text, markup, annotated - select for diffs
Mon Mar 12 06:42:15 2012 UTC (12 years, 9 months ago) by mrg
Branches: jmcneill-usbmp
Diff to: previous 1.125.6.12: preferred, colored; branchpoint 1.125: preferred, colored; next MAIN 1.126: preferred, colored
Changes since revision 1.125.6.12: +4 -2 lines
fix detach bugs:
- need to disestablish the ehci softint's.
- need to destroy needs_explore_cv
- note that ehci.c inits locks, but ehci_pci.c destroys them due to the
  way that the (pci) front end does softint handling, and can only be
  trusted to destroy them.  XXX need to fix this, by looking at the many
  ehci frontends as well and checking ohci/uhci.

Revision 1.129: download - view: text, markup, annotated - select for diffs
Sun Mar 11 01:06:07 2012 UTC (12 years, 9 months ago) by mrg
Branches: MAIN
CVS tags: yamt-pagecache-base5, yamt-pagecache-base4, jmcneill-usbmp-base9, jmcneill-usbmp-base8, jmcneill-usbmp-base7, jmcneill-usbmp-base10
Diff to: previous 1.128: preferred, colored
Changes since revision 1.128: +4 -4 lines
minor cleanups from usbmp:
- move usbd_delay_ms() into usbdivar.h in the usb_subr.c section
- minor rcsid fixes
- copyright maintenence

Revision 1.128: download - view: text, markup, annotated - select for diffs
Tue Mar 6 02:49:03 2012 UTC (12 years, 9 months ago) by mrg
Branches: MAIN
CVS tags: jmcneill-usbmp-base6
Diff to: previous 1.127: preferred, colored
Changes since revision 1.127: +2 -10 lines
pull down from usbmp:

kill the !USE_USE_SOFTINTR code.

Revision 1.125.6.12: download - view: text, markup, annotated - select for diffs
Sun Feb 26 05:05:45 2012 UTC (12 years, 9 months ago) by mrg
Branches: jmcneill-usbmp
Diff to: previous 1.125.6.11: preferred, colored; branchpoint 1.125: preferred, colored
Changes since revision 1.125.6.11: +5 -5 lines
- add some more "XXXSMP ok" tags
- use cpu_softintr_p() instead of checking LP_INTR directly

Revision 1.125.6.11: download - view: text, markup, annotated - select for diffs
Sat Feb 25 10:26:24 2012 UTC (12 years, 9 months ago) by mrg
Branches: jmcneill-usbmp
Diff to: previous 1.125.6.10: preferred, colored; branchpoint 1.125: preferred, colored
Changes since revision 1.125.6.10: +4 -4 lines
copyright maintenence.

Revision 1.125.6.10: download - view: text, markup, annotated - select for diffs
Thu Feb 23 09:25:04 2012 UTC (12 years, 9 months ago) by mrg
Branches: jmcneill-usbmp
Diff to: previous 1.125.6.9: preferred, colored; branchpoint 1.125: preferred, colored
Changes since revision 1.125.6.9: +6 -6 lines
update a bunch of comments for reality.  usb lock isn't a "thread lock",
which is terminology we copied from the audiomp code.

Revision 1.125.6.9: download - view: text, markup, annotated - select for diffs
Mon Feb 20 06:50:21 2012 UTC (12 years, 9 months ago) by mrg
Branches: jmcneill-usbmp
Diff to: previous 1.125.6.8: preferred, colored; branchpoint 1.125: preferred, colored
Changes since revision 1.125.6.8: +5 -6 lines
remove the intr_lock from the mp usb api, it wasn't used.

Revision 1.125.6.8: download - view: text, markup, annotated - select for diffs
Mon Feb 20 04:06:13 2012 UTC (12 years, 9 months ago) by mrg
Branches: jmcneill-usbmp
Diff to: previous 1.125.6.7: preferred, colored; branchpoint 1.125: preferred, colored
Changes since revision 1.125.6.7: +9 -6 lines
task thread and event threads are both MPSAFE now.

Revision 1.125.6.7: download - view: text, markup, annotated - select for diffs
Mon Feb 20 03:27:07 2012 UTC (12 years, 9 months ago) by mrg
Branches: jmcneill-usbmp
Diff to: previous 1.125.6.6: preferred, colored; branchpoint 1.125: preferred, colored
Changes since revision 1.125.6.6: +40 -31 lines
convert usb event code to using a mutex and condvar.

Revision 1.125.6.6: download - view: text, markup, annotated - select for diffs
Mon Feb 20 02:12:24 2012 UTC (12 years, 9 months ago) by mrg
Branches: jmcneill-usbmp
Diff to: previous 1.125.6.5: preferred, colored; branchpoint 1.125: preferred, colored
Changes since revision 1.125.6.5: +18 -3 lines
several changes to the MP usb apis, and other misc changes:

- usb_transfer_complete()/usb_insert_transfer()/usb_start_next() all
  must have the thread lock held

- (*soft_intr) now is called with the thread lock held unless we are
  in polling mode.  add a usb_soft_intr() to deal with this

- XXX usbd_set_polling() api exists to increase/decrease the polling
  count, but only ukbd uses.  everyone else open codes it, but this
  should probably be changed

- (*abort) is now called with the thread lock held

- update several comments to not refer to splusb() anymore

- add many more asserts

- use more c99 struct initialisers

Revision 1.127: download - view: text, markup, annotated - select for diffs
Fri Dec 23 00:51:48 2011 UTC (12 years, 11 months ago) by jakllsch
Branches: MAIN
CVS tags: netbsd-6-base, netbsd-6-1-RELEASE, netbsd-6-1-RC4, netbsd-6-1-RC3, netbsd-6-1-RC2, netbsd-6-1-RC1, netbsd-6-1-5-RELEASE, netbsd-6-1-4-RELEASE, netbsd-6-1-3-RELEASE, netbsd-6-1-2-RELEASE, netbsd-6-1-1-RELEASE, netbsd-6-1, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-RC1, netbsd-6-0-6-RELEASE, netbsd-6-0-5-RELEASE, netbsd-6-0-4-RELEASE, netbsd-6-0-3-RELEASE, netbsd-6-0-2-RELEASE, netbsd-6-0-1-RELEASE, netbsd-6-0, netbsd-6, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus, jmcneill-usbmp-base5, jmcneill-usbmp-base4, jmcneill-usbmp-base3, jmcneill-usbmp-base2
Diff to: previous 1.126: preferred, colored
Changes since revision 1.126: +5 -5 lines
Revert previous due to active usbmp branch(es).

Revision 1.126: download - view: text, markup, annotated - select for diffs
Thu Dec 22 20:07:02 2011 UTC (12 years, 11 months ago) by jakllsch
Branches: MAIN
Diff to: previous 1.125: preferred, colored
Changes since revision 1.125: +5 -5 lines
Adjust-away inconsistent and trailing whitespace.

Revision 1.125.6.5: download - view: text, markup, annotated - select for diffs
Fri Dec 9 01:53:00 2011 UTC (13 years ago) by mrg
Branches: jmcneill-usbmp
CVS tags: jmcneill-usbmp-pre-base2
Diff to: previous 1.125.6.4: preferred, colored; branchpoint 1.125: preferred, colored
Changes since revision 1.125.6.4: +67 -21 lines
- make pipe->close method take the thread lock

- convert usb_taskq to use mutex/cv

- convert needs_explore usage into a cv on the thread lock

- remove KERNEL_*LOCK from uaudio and umidi, since we're supposedly
  MPSAFE here now

- use IPL_SCHED instead of IPL_USB (aka biglocked) interrupts

- drop the audio thread lock when calling into usb when it may sleep,
  avoiding a deadlock between audiowrite and audioioctl.  this fixes
  mixerctl -a vs. playing hanging the system
  XXX probably need to check this in a bunch more places.

Revision 1.125.6.1.2.2: download - view: text, markup, annotated - select for diffs
Thu Dec 8 10:41:28 2011 UTC (13 years ago) by mrg
Branches: mrg-ohci-jmcneill-usbmp
Diff to: previous 1.125.6.1.2.1: preferred, colored; branchpoint 1.125.6.1: preferred, colored; next MAIN 1.125.6.2: preferred, colored
Changes since revision 1.125.6.1.2.1: +9 -2 lines
merge a few more changes from the main branch.

Revision 1.125.6.1.2.1: download - view: text, markup, annotated - select for diffs
Thu Dec 8 09:54:30 2011 UTC (13 years ago) by mrg
Branches: mrg-ohci-jmcneill-usbmp
Diff to: previous 1.125.6.1: preferred, colored
Changes since revision 1.125.6.1: +8 -12 lines
mostly in sync with the branch here now.

Revision 1.125.6.4: download - view: text, markup, annotated - select for diffs
Thu Dec 8 02:51:08 2011 UTC (13 years ago) by mrg
Branches: jmcneill-usbmp
Diff to: previous 1.125.6.3: preferred, colored; branchpoint 1.125: preferred, colored
Changes since revision 1.125.6.3: +9 -2 lines
- convert usbd_bus_methods{} and usbd_pipe_methods{} to use
  c99 struct initialisers

- move the locks from the pipe to the bus, since we'll need
  access to them from bus-level ops

- remove dead-for-years SPLUSBCHECK and replaced it with
  asserts that the thread lock is held

- begin to document the locking scheme

- convert usbd_*lock_pipe() into real function-like macros

Revision 1.125.6.3: download - view: text, markup, annotated - select for diffs
Wed Dec 7 22:52:17 2011 UTC (13 years ago) by mrg
Branches: jmcneill-usbmp
Diff to: previous 1.125.6.2: preferred, colored; branchpoint 1.125: preferred, colored
Changes since revision 1.125.6.2: +4 -12 lines
kill some #ifdef USB_DEBUG with some compiler smarts.

Revision 1.125.6.2: download - view: text, markup, annotated - select for diffs
Tue Dec 6 02:10:01 2011 UTC (13 years ago) by mrg
Branches: jmcneill-usbmp
Diff to: previous 1.125.6.1: preferred, colored; branchpoint 1.125: preferred, colored
Changes since revision 1.125.6.1: +6 -2 lines
need to ensure kpreempt_disable() for softint_schedule().

fix the locking in ohci_timeout_task(), ohci_device_isoc_start(),
ohci_device_isoc_abort() and ohci_device_isoc_close().

uaudio(4) can still play with these, but mixerctl -a against it will
hang the writer.  however, mixerctl continues to run in a tight loop
and the system isn't soft-locked up at this point, an advance from
how it is in -current.

Revision 1.125.6.1: download - view: text, markup, annotated - select for diffs
Sun Dec 4 13:23:17 2011 UTC (13 years ago) by jmcneill
Branches: jmcneill-usbmp
CVS tags: mrg-ohci-jmcneill-usbmp-base
Branch point for: mrg-ohci-jmcneill-usbmp
Diff to: previous 1.125: preferred, colored
Changes since revision 1.125: +5 -11 lines
Make ehci mpsafe.

Revision 1.124.2.1: download - view: text, markup, annotated - select for diffs
Thu Jun 23 14:20:10 2011 UTC (13 years, 5 months ago) by cherry
Branches: cherry-xenmp
Diff to: previous 1.124: preferred, colored; next MAIN 1.125: preferred, colored
Changes since revision 1.124: +3 -2 lines
Catchup with rmind-uvmplock merge.

Revision 1.120.4.5: download - view: text, markup, annotated - select for diffs
Sun Jun 12 00:24:27 2011 UTC (13 years, 6 months ago) by rmind
Branches: rmind-uvmplock
Diff to: previous 1.120.4.4: preferred, colored; branchpoint 1.120: preferred, colored; next MAIN 1.121: preferred, colored
Changes since revision 1.120.4.4: +1 -0 lines
sync with head

Revision 1.125: download - view: text, markup, annotated - select for diffs
Thu Jun 9 19:08:32 2011 UTC (13 years, 6 months ago) by matt
Branches: MAIN
CVS tags: yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, rmind-uvmplock-nbase, rmind-uvmplock-base, jmcneill-usbmp-base, jmcneill-audiomp3-base, jmcneill-audiomp3
Branch point for: yamt-pagecache, jmcneill-usbmp
Diff to: previous 1.124: preferred, colored
Changes since revision 1.124: +3 -2 lines
Move EHCI_DEBUG, OHCI_DEBUG, UHCI_DEBUG, USB_DEBUG, UHUB_DEBUG to opt_usb.h
(ya dependencies).
Cleanup usb_mem.c a little more and add block tracking code.  Help find
corruption problems.
Comment out the SPEED check for ETTF.  XXX why doesn't that work right?

Revision 1.123.2.1: download - view: text, markup, annotated - select for diffs
Mon Jun 6 09:08:43 2011 UTC (13 years, 6 months ago) by jruoho
Branches: jruoho-x86intr
Diff to: previous 1.123: preferred, colored; next MAIN 1.124: preferred, colored
Changes since revision 1.123: +3 -3 lines
Sync with HEAD.

Revision 1.120.4.4: download - view: text, markup, annotated - select for diffs
Tue May 31 03:04:56 2011 UTC (13 years, 6 months ago) by rmind
Branches: rmind-uvmplock
Diff to: previous 1.120.4.3: preferred, colored; branchpoint 1.120: preferred, colored
Changes since revision 1.120.4.3: +1 -1 lines
sync with head

Revision 1.124: download - view: text, markup, annotated - select for diffs
Mon May 23 21:50:44 2011 UTC (13 years, 6 months ago) by joerg
Branches: MAIN
CVS tags: cherry-xenmp-base
Branch point for: cherry-xenmp
Diff to: previous 1.123: preferred, colored
Changes since revision 1.123: +3 -3 lines
Don't use the name of the task queue as format string

Revision 1.120.4.3: download - view: text, markup, annotated - select for diffs
Sat Mar 5 20:54:16 2011 UTC (13 years, 9 months ago) by rmind
Branches: rmind-uvmplock
Diff to: previous 1.120.4.2: preferred, colored; branchpoint 1.120: preferred, colored
Changes since revision 1.120.4.2: +13 -13 lines
sync with head

Revision 1.120.2.2: download - view: text, markup, annotated - select for diffs
Sat Nov 6 08:08:40 2010 UTC (14 years, 1 month ago) by uebayasi
Branches: uebayasi-xip
Diff to: previous 1.120.2.1: preferred, colored; branchpoint 1.120: preferred, colored; next MAIN 1.121: preferred, colored
Changes since revision 1.120.2.1: +13 -13 lines
Sync with HEAD.

Revision 1.123: download - view: text, markup, annotated - select for diffs
Wed Nov 3 22:34:24 2010 UTC (14 years, 1 month ago) by dyoung
Branches: MAIN
CVS tags: uebayasi-xip-base4, matt-mips64-premerge-20101231, jruoho-x86intr-base, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2
Branch point for: jruoho-x86intr
Diff to: previous 1.122: preferred, colored
Changes since revision 1.122: +13 -13 lines
Stop using the compatibility macros USB_ATTACH(), USB_DETACH(),
USB_MATCH(), et cetera.  These files produce the same assembly
(according to objdump -d) before and after the change

Revision 1.120.2.1: download - view: text, markup, annotated - select for diffs
Tue Aug 17 06:46:46 2010 UTC (14 years, 3 months ago) by uebayasi
Branches: uebayasi-xip
Diff to: previous 1.120: preferred, colored
Changes since revision 1.120: +4 -2 lines
Sync with HEAD.

Revision 1.112.2.6: download - view: text, markup, annotated - select for diffs
Wed Aug 11 22:54:16 2010 UTC (14 years, 4 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.112.2.5: preferred, colored; branchpoint 1.112: preferred, colored; next MAIN 1.113: preferred, colored
Changes since revision 1.112.2.5: +4 -2 lines
sync with head.

Revision 1.120.4.2: download - view: text, markup, annotated - select for diffs
Sat Jul 3 01:19:41 2010 UTC (14 years, 5 months ago) by rmind
Branches: rmind-uvmplock
Diff to: previous 1.120.4.1: preferred, colored; branchpoint 1.120: preferred, colored
Changes since revision 1.120.4.1: +2 -8 lines
sync with head

Revision 1.122: download - view: text, markup, annotated - select for diffs
Sun Jun 6 18:58:26 2010 UTC (14 years, 6 months ago) by pgoyette
Branches: MAIN
CVS tags: yamt-nfs-mp-base11, yamt-nfs-mp-base10, uebayasi-xip-base3, uebayasi-xip-base2
Diff to: previous 1.121: preferred, colored
Changes since revision 1.121: +2 -8 lines
Update usbverbose module to use module_autoload() rather than module_load().
Load the module right before each attempt to use its features, and let the
module subsystem handle unloading.

Revision 1.120.4.1: download - view: text, markup, annotated - select for diffs
Sun May 30 05:17:45 2010 UTC (14 years, 6 months ago) by rmind
Branches: rmind-uvmplock
Diff to: previous 1.120: preferred, colored
Changes since revision 1.120: +10 -2 lines
sync with head

Revision 1.121: download - view: text, markup, annotated - select for diffs
Sat May 29 01:14:29 2010 UTC (14 years, 6 months ago) by pgoyette
Branches: MAIN
Diff to: previous 1.120: preferred, colored
Changes since revision 1.120: +10 -2 lines
Extract USBVERBOSE into a kernel module.  The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.

Revision 1.112.2.5: download - view: text, markup, annotated - select for diffs
Thu Mar 11 15:04:07 2010 UTC (14 years, 9 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.112.2.4: preferred, colored; branchpoint 1.112: preferred, colored
Changes since revision 1.112.2.4: +12 -35 lines
sync with head

Revision 1.120: download - view: text, markup, annotated - select for diffs
Sat Dec 19 11:41:56 2009 UTC (14 years, 11 months ago) by pooka
Branches: MAIN
CVS tags: yamt-nfs-mp-base9, uebayasi-xip-base1, uebayasi-xip-base
Branch point for: uebayasi-xip, rmind-uvmplock
Diff to: previous 1.119: preferred, colored
Changes since revision 1.119: +2 -17 lines
Don't impose a compile-time dependency on the kernel containing
ohci/uhci just for the sake of setting a debug variable.

Revision 1.119: download - view: text, markup, annotated - select for diffs
Thu Nov 12 20:11:35 2009 UTC (15 years, 1 month ago) by dyoung
Branches: MAIN
CVS tags: matt-premerge-20091211
Diff to: previous 1.118: preferred, colored
Changes since revision 1.118: +12 -20 lines
Re-order operations in usb_detach() so that if a usb(4) instance's
children will not detach, the instance is not left in an inconsistent
state.

If uhub(4) port is disconnected, forcefully detach the children on
that port.

Simplify detachment hooks.  (sc_dying must die!)

Pass along and respect detachment flags, esp. DETACH_FORCE,
throughout.

Revision 1.115.12.2: download - view: text, markup, annotated - select for diffs
Thu Jul 23 23:32:21 2009 UTC (15 years, 4 months ago) by jym
Branches: jym-xensuspend
Diff to: previous 1.115.12.1: preferred, colored; branchpoint 1.115: preferred, colored; next MAIN 1.116: preferred, colored
Changes since revision 1.115.12.1: +7 -5 lines
Sync with HEAD.

Revision 1.112.2.4: download - view: text, markup, annotated - select for diffs
Sat Jun 20 07:20:29 2009 UTC (15 years, 5 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.112.2.3: preferred, colored; branchpoint 1.112: preferred, colored
Changes since revision 1.112.2.3: +7 -5 lines
sync with head

Revision 1.118: download - view: text, markup, annotated - select for diffs
Tue Jun 16 19:42:44 2009 UTC (15 years, 6 months ago) by dyoung
Branches: MAIN
CVS tags: yamt-nfs-mp-base8, yamt-nfs-mp-base7, yamt-nfs-mp-base6, yamt-nfs-mp-base5, jymxensuspend-base, jym-xensuspend-nbase
Diff to: previous 1.117: preferred, colored
Changes since revision 1.117: +7 -5 lines
Use device_t instead of device_ptr_t.  Stop using USB_MATCH() and
USB_ATTACH().

Revision 1.112.2.3: download - view: text, markup, annotated - select for diffs
Sat May 16 10:41:45 2009 UTC (15 years, 7 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.112.2.2: preferred, colored; branchpoint 1.112: preferred, colored
Changes since revision 1.112.2.2: +3 -3 lines
sync with head

Revision 1.115.12.1: download - view: text, markup, annotated - select for diffs
Wed May 13 17:21:35 2009 UTC (15 years, 7 months ago) by jym
Branches: jym-xensuspend
Diff to: previous 1.115: preferred, colored
Changes since revision 1.115: +6 -5 lines
Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.

Revision 1.117: download - view: text, markup, annotated - select for diffs
Tue May 12 13:22:10 2009 UTC (15 years, 7 months ago) by cegger
Branches: MAIN
CVS tags: yamt-nfs-mp-base4, jym-xensuspend-base
Diff to: previous 1.116: preferred, colored
Changes since revision 1.116: +3 -3 lines
struct cfdata * -> cfdata_t, no functional changes intended.

Revision 1.112.2.2: download - view: text, markup, annotated - select for diffs
Mon May 4 08:13:22 2009 UTC (15 years, 7 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.112.2.1: preferred, colored; branchpoint 1.112: preferred, colored
Changes since revision 1.112.2.1: +15 -19 lines
sync with head.

Revision 1.115.6.1: download - view: text, markup, annotated - select for diffs
Tue Apr 28 07:36:39 2009 UTC (15 years, 7 months ago) by skrll
Branches: nick-hppapmap
Diff to: previous 1.115: preferred, colored; next MAIN 1.116: preferred, colored
Changes since revision 1.115: +5 -4 lines
Sync with HEAD.

Revision 1.116: download - view: text, markup, annotated - select for diffs
Tue Apr 7 18:15:45 2009 UTC (15 years, 8 months ago) by dyoung
Branches: MAIN
CVS tags: yamt-nfs-mp-base3, nick-hppapmap-base4, nick-hppapmap-base3, nick-hppapmap-base
Diff to: previous 1.115: preferred, colored
Changes since revision 1.115: +5 -4 lines
Detach uhub(4) and usb(4) at shutdown.

Revision 1.113.2.1: download - view: text, markup, annotated - select for diffs
Mon Jun 23 04:31:37 2008 UTC (16 years, 5 months ago) by wrstuden
Branches: wrstuden-revivesa
Diff to: previous 1.113: preferred, colored; next MAIN 1.114: preferred, colored
Changes since revision 1.113: +12 -17 lines
Sync w/ -current. 34 merge conflicts to follow.

Revision 1.111.2.2: download - view: text, markup, annotated - select for diffs
Wed Jun 4 02:05:21 2008 UTC (16 years, 6 months ago) by yamt
Branches: yamt-pf42
Diff to: previous 1.111.2.1: preferred, colored; branchpoint 1.111: preferred, colored; next MAIN 1.112: preferred, colored
Changes since revision 1.111.2.1: +12 -17 lines
sync with head

Revision 1.106.6.4: download - view: text, markup, annotated - select for diffs
Mon Jun 2 13:23:55 2008 UTC (16 years, 6 months ago) by mjf
Branches: mjf-devfs2
Diff to: previous 1.106.6.3: preferred, colored; branchpoint 1.106: preferred, colored; next MAIN 1.107: preferred, colored
Changes since revision 1.106.6.3: +38 -29 lines
Sync with HEAD.

Revision 1.115: download - view: text, markup, annotated - select for diffs
Mon May 26 18:00:33 2008 UTC (16 years, 6 months ago) by drochner
Branches: MAIN
CVS tags: yamt-pf42-base4, yamt-pf42-base3, wrstuden-revivesa-base-4, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, wrstuden-revivesa-base-1, wrstuden-revivesa-base, simonb-wapbl-nbase, simonb-wapbl-base, simonb-wapbl, nick-hppapmap-base2, netbsd-5-base, netbsd-5-2-RELEASE, netbsd-5-2-RC1, netbsd-5-2-3-RELEASE, netbsd-5-2-2-RELEASE, netbsd-5-2-1-RELEASE, netbsd-5-2, netbsd-5-1-RELEASE, netbsd-5-1-RC4, netbsd-5-1-RC3, netbsd-5-1-RC2, netbsd-5-1-RC1, netbsd-5-1-5-RELEASE, netbsd-5-1-4-RELEASE, netbsd-5-1-3-RELEASE, netbsd-5-1-2-RELEASE, netbsd-5-1-1-RELEASE, netbsd-5-1, netbsd-5-0-RELEASE, netbsd-5-0-RC4, netbsd-5-0-RC3, netbsd-5-0-RC2, netbsd-5-0-RC1, netbsd-5-0-2-RELEASE, netbsd-5-0-1-RELEASE, netbsd-5-0, netbsd-5, mjf-devfs2-base, matt-nb5-pq3-base, matt-nb5-pq3, matt-nb5-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-premerge-20091211, matt-nb5-mips64-k15, matt-nb5-mips64, matt-nb4-mips64-k7-u2a-k9b, matt-mips64-base2, haad-nbase2, haad-dm-base2, haad-dm-base1, haad-dm-base, haad-dm, ad-audiomp2-base, ad-audiomp2
Branch point for: nick-hppapmap, jym-xensuspend
Diff to: previous 1.114: preferred, colored
Changes since revision 1.114: +2 -4 lines
some cleanup:
-unifdef
-since the roothub attach doesn't use locators, don't call
 config_stdsubmatch() -- it is a no-op in that case
-ifsubmatch has configuration and interface always set to useful values,
 remove unnecessary checks
-remove now unused locator definitions from shared header

Revision 1.114: download - view: text, markup, annotated - select for diffs
Sun May 25 21:41:35 2008 UTC (16 years, 6 months ago) by drochner
Branches: MAIN
Diff to: previous 1.113: preferred, colored
Changes since revision 1.113: +12 -15 lines
-make the list of USB child devices a (possibly sparse) array rather
 than a zero-terminated list; this makes the code simpler and also
 hopefully fixes the recent "childdet" botch, see PR kern/38528
-handle the root hub specially a bit earlier, this allows to kick out
 the "submatch" functions completely which needed to second-guess
 from the port number (where "0" meant root hub")
 (we could handle the root hub specially even earlier, but as done
 now big parts of the hub emulation code are exercised regularely,
 this would bitrot otherwise)

Revision 1.111.2.1: download - view: text, markup, annotated - select for diffs
Sun May 18 12:34:51 2008 UTC (16 years, 6 months ago) by yamt
Branches: yamt-pf42
Diff to: previous 1.111: preferred, colored
Changes since revision 1.111: +26 -14 lines
sync with head.

Revision 1.112.2.1: download - view: text, markup, annotated - select for diffs
Fri May 16 02:25:11 2008 UTC (16 years, 7 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.112: preferred, colored
Changes since revision 1.112: +2 -9 lines
sync with head.

Revision 1.113: download - view: text, markup, annotated - select for diffs
Mon Apr 28 20:24:00 2008 UTC (16 years, 7 months ago) by martin
Branches: MAIN
CVS tags: yamt-pf42-base2, yamt-nfs-mp-base2, hpcarm-cleanup-nbase
Branch point for: wrstuden-revivesa
Diff to: previous 1.112: preferred, colored
Changes since revision 1.112: +2 -9 lines
Remove clause 3 and 4 from TNF licenses

Revision 1.112: download - view: text, markup, annotated - select for diffs
Thu Apr 24 15:35:28 2008 UTC (16 years, 7 months ago) by ad
Branches: MAIN
CVS tags: yamt-nfs-mp-base
Branch point for: yamt-nfs-mp
Diff to: previous 1.111: preferred, colored
Changes since revision 1.111: +26 -7 lines
Network protocol interrupts can now block on locks, so merge the globals
proclist_mutex and proclist_lock into a single adaptive mutex (proc_lock).
Implications:

- Inspecting process state requires thread context, so signals can no longer
  be sent from a hardware interrupt handler. Signal activity must be
  deferred to a soft interrupt or kthread.

- As the proc state locking is simplified, it's now safe to take exit()
  and wait() out from under kernel_lock.

- The system spends less time at IPL_SCHED, and there is less lock activity.

Revision 1.106.6.3: download - view: text, markup, annotated - select for diffs
Sun Apr 6 09:58:51 2008 UTC (16 years, 8 months ago) by mjf
Branches: mjf-devfs2
Diff to: previous 1.106.6.2: preferred, colored; branchpoint 1.106: preferred, colored
Changes since revision 1.106.6.2: +3 -3 lines
- after some discussion with agc@ i agreed it would be a good idea to move
  device_unregister_* to device_deregister_* to be more like the pmf(9)
  functions, especially since a lot of the time the function calls are next
  to each other.

- add device_register_name() support for dk(4).

Revision 1.106.6.2: download - view: text, markup, annotated - select for diffs
Sat Apr 5 23:33:23 2008 UTC (16 years, 8 months ago) by mjf
Branches: mjf-devfs2
Diff to: previous 1.106.6.1: preferred, colored; branchpoint 1.106: preferred, colored
Changes since revision 1.106.6.1: +8 -3 lines
- add "file-system DEVFS" and "pseudo-device devfsctl" to conf/std seeing
  as these are always needed.

- convert many, many drivers over to the New Devfs World Order. For a
  list of device drivers yet to be converted see,
  http://www.netbsd.org/~mjf/devfs-todo.html.

- add a new device_unregister_all(device_t) function to remove all device
  names associated with a device_t, which saves us having to construct
  device names when the driver is detached.

- add a DEV_AUDIO type for devices.

Revision 1.111: download - view: text, markup, annotated - select for diffs
Thu Apr 3 14:07:01 2008 UTC (16 years, 8 months ago) by drochner
Branches: MAIN
CVS tags: yamt-pf42-baseX, yamt-pf42-base
Branch point for: yamt-pf42
Diff to: previous 1.110: preferred, colored
Changes since revision 1.110: +4 -2 lines
restore error handling in usbopen() (accidentally removed in a recent
commit), should fix a crash reported by Arto Huusko

Revision 1.106.6.1: download - view: text, markup, annotated - select for diffs
Thu Apr 3 12:42:57 2008 UTC (16 years, 8 months ago) by mjf
Branches: mjf-devfs2
Diff to: previous 1.106: preferred, colored
Changes since revision 1.106: +64 -42 lines
Sync with HEAD.

Revision 1.110: download - view: text, markup, annotated - select for diffs
Sun Mar 30 15:37:49 2008 UTC (16 years, 8 months ago) by ad
Branches: MAIN
Diff to: previous 1.109: preferred, colored
Changes since revision 1.109: +32 -19 lines
Defer USB configuration until interrupts are enabled.

Revision 1.109: download - view: text, markup, annotated - select for diffs
Fri Mar 28 17:14:46 2008 UTC (16 years, 8 months ago) by drochner
Branches: MAIN
Diff to: previous 1.108: preferred, colored
Changes since revision 1.108: +25 -23 lines
split device/softc for USB host controllers and the usb (control)
device,
this is hairy stuff, and I've only tested with uhci/ehci at pci,
please test the rest and report problems

Revision 1.106.2.1: download - view: text, markup, annotated - select for diffs
Mon Mar 24 07:16:09 2008 UTC (16 years, 8 months ago) by keiichi
Branches: keiichi-mipv6
Diff to: previous 1.106: preferred, colored; next MAIN 1.107: preferred, colored
Changes since revision 1.106: +12 -5 lines
sync with head.

Revision 1.99.2.3: download - view: text, markup, annotated - select for diffs
Sun Mar 23 02:04:54 2008 UTC (16 years, 8 months ago) by matt
Branches: matt-armv6
Diff to: previous 1.99.2.2: preferred, colored; branchpoint 1.99: preferred, colored; next MAIN 1.100: preferred, colored
Changes since revision 1.99.2.2: +47 -10 lines
sync with HEAD

Revision 1.82.2.9: download - view: text, markup, annotated - select for diffs
Mon Mar 17 09:15:28 2008 UTC (16 years, 9 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.82.2.8: preferred, colored; next MAIN 1.83: preferred, colored
Changes since revision 1.82.2.8: +12 -5 lines
sync with head.

Revision 1.108: download - view: text, markup, annotated - select for diffs
Sat Mar 8 18:46:18 2008 UTC (16 years, 9 months ago) by ws
Branches: MAIN
CVS tags: yamt-lazymbuf-base15, yamt-lazymbuf-base14, matt-armv6-nbase, keiichi-mipv6-nbase, keiichi-mipv6-base, ad-socklock-base1
Diff to: previous 1.107: preferred, colored
Changes since revision 1.107: +6 -4 lines
Don't leak information from kernel to userland.
(Well, the first 2 changes wouldn't really be neccessary,
however, IMHO this makes it clearer why we don't leak.)

Revision 1.107: download - view: text, markup, annotated - select for diffs
Sat Mar 1 14:16:51 2008 UTC (16 years, 9 months ago) by rmind
Branches: MAIN
Diff to: previous 1.106: preferred, colored
Changes since revision 1.106: +8 -3 lines
Welcome to 4.99.55:

- Add a lot of missing selinit() and seldestroy() calls.

- Merge selwakeup() and selnotify() calls into a single selnotify().

- Add an additional 'events' argument to selnotify() call.  It will
  indicate which event (POLL_IN, POLL_OUT, etc) happen.  If unknown,
  zero may be used.

Note: please pass appropriate value of 'events' where possible.
Proposed on: <tech-kern>

Revision 1.82.2.8: download - view: text, markup, annotated - select for diffs
Wed Feb 27 08:36:47 2008 UTC (16 years, 9 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.82.2.7: preferred, colored
Changes since revision 1.82.2.7: +37 -7 lines
sync with head.

Revision 1.101.2.3: download - view: text, markup, annotated - select for diffs
Mon Feb 18 21:06:26 2008 UTC (16 years, 9 months ago) by mjf
Branches: mjf-devfs
Diff to: previous 1.101.2.2: preferred, colored; branchpoint 1.101: preferred, colored; next MAIN 1.102: preferred, colored
Changes since revision 1.101.2.2: +38 -7 lines
Sync with HEAD.

Revision 1.106: download - view: text, markup, annotated - select for diffs
Mon Feb 18 05:24:24 2008 UTC (16 years, 9 months ago) by dyoung
Branches: MAIN
CVS tags: nick-net80211-sync-base, nick-net80211-sync, mjf-devfs-base, hpcarm-cleanup-base
Branch point for: mjf-devfs2, keiichi-mipv6
Diff to: previous 1.105: preferred, colored
Changes since revision 1.105: +37 -7 lines
Use device_t and its accessor functions.

Register _childdetached methods with drivers that attach children.
Wait to set child references to NULL there, instead of doing that
in the detach method.

Replace many uses of USB_DECLARE_DRIVER() with CFATTACH_DECL2().

Revision 1.82.2.7: download - view: text, markup, annotated - select for diffs
Mon Jan 21 09:44:49 2008 UTC (16 years, 10 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.82.2.6: preferred, colored
Changes since revision 1.82.2.6: +6 -2 lines
sync with head

Revision 1.99.2.2: download - view: text, markup, annotated - select for diffs
Wed Jan 9 01:54:45 2008 UTC (16 years, 11 months ago) by matt
Branches: matt-armv6
Diff to: previous 1.99.2.1: preferred, colored; branchpoint 1.99: preferred, colored
Changes since revision 1.99.2.1: +14 -9 lines
sync with HEAD

Revision 1.104.2.1: download - view: text, markup, annotated - select for diffs
Tue Jan 8 22:11:23 2008 UTC (16 years, 11 months ago) by bouyer
Branches: bouyer-xeni386
CVS tags: bouyer-xeni386-merge1
Diff to: previous 1.104: preferred, colored; next MAIN 1.105: preferred, colored
Changes since revision 1.104: +3 -2 lines
Sync with HEAD

Revision 1.105: download - view: text, markup, annotated - select for diffs
Fri Jan 4 03:56:48 2008 UTC (16 years, 11 months ago) by smb
Branches: MAIN
CVS tags: matt-armv6-base, bouyer-xeni386-nbase, bouyer-xeni386-base
Diff to: previous 1.104: preferred, colored
Changes since revision 1.104: +3 -2 lines
Add calls to pmf_deregister on detach.

Revision 1.101.2.2: download - view: text, markup, annotated - select for diffs
Thu Dec 27 00:45:33 2007 UTC (16 years, 11 months ago) by mjf
Branches: mjf-devfs
Diff to: previous 1.101.2.1: preferred, colored; branchpoint 1.101: preferred, colored
Changes since revision 1.101.2.1: +5 -2 lines
Sync with HEAD.

Revision 1.102.2.2: download - view: text, markup, annotated - select for diffs
Wed Dec 26 21:39:31 2007 UTC (16 years, 11 months ago) by ad
Branches: vmlocking2
Diff to: previous 1.102.2.1: preferred, colored; branchpoint 1.102: preferred, colored; next MAIN 1.103: preferred, colored
Changes since revision 1.102.2.1: +5 -2 lines
Sync with head.

Revision 1.103.2.1: download - view: text, markup, annotated - select for diffs
Tue Dec 11 15:40:05 2007 UTC (17 years ago) by yamt
Branches: yamt-kmem
Diff to: previous 1.103: preferred, colored; next MAIN 1.104: preferred, colored
Changes since revision 1.103: +5 -2 lines
sync with head.

Revision 1.104: download - view: text, markup, annotated - select for diffs
Sun Dec 9 20:28:25 2007 UTC (17 years ago) by jmcneill
Branches: MAIN
CVS tags: yamt-kmem-base3, yamt-kmem-base2, vmlocking2-base3, cube-autoconf-base, cube-autoconf
Branch point for: bouyer-xeni386
Diff to: previous 1.103: preferred, colored
Changes since revision 1.103: +5 -2 lines
Merge jmcneill-pm branch.

Revision 1.98.6.7: download - view: text, markup, annotated - select for diffs
Sun Dec 9 19:38:05 2007 UTC (17 years ago) by jmcneill
Branches: jmcneill-pm
Diff to: previous 1.98.6.6: preferred, colored; branchpoint 1.98: preferred, colored; next MAIN 1.99: preferred, colored
Changes since revision 1.98.6.6: +3 -3 lines
Sync with HEAD.

Revision 1.101.2.1: download - view: text, markup, annotated - select for diffs
Sat Dec 8 18:20:06 2007 UTC (17 years ago) by mjf
Branches: mjf-devfs
Diff to: previous 1.101: preferred, colored
Changes since revision 1.101: +10 -9 lines
Sync with HEAD.

Revision 1.102.2.1: download - view: text, markup, annotated - select for diffs
Sat Dec 8 17:57:35 2007 UTC (17 years ago) by ad
Branches: vmlocking2
Diff to: previous 1.102: preferred, colored
Changes since revision 1.102: +3 -3 lines
Sync with head.

Revision 1.98.6.6: download - view: text, markup, annotated - select for diffs
Sat Dec 8 16:21:37 2007 UTC (17 years ago) by jmcneill
Branches: jmcneill-pm
Diff to: previous 1.98.6.5: preferred, colored; branchpoint 1.98: preferred, colored
Changes since revision 1.98.6.5: +3 -3 lines
Rename pnp(9) -> pmf(9), as requested by many.

Revision 1.82.2.6: download - view: text, markup, annotated - select for diffs
Fri Dec 7 17:31:39 2007 UTC (17 years ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.82.2.5: preferred, colored
Changes since revision 1.82.2.5: +10 -9 lines
sync with head

Revision 1.103: download - view: text, markup, annotated - select for diffs
Wed Dec 5 17:19:56 2007 UTC (17 years ago) by pooka
Branches: MAIN
CVS tags: yamt-kmem-base, vmlocking2-base2, reinoud-bufcleanup-nbase, reinoud-bufcleanup-base, jmcneill-pm-base
Branch point for: yamt-kmem
Diff to: previous 1.102: preferred, colored
Changes since revision 1.102: +3 -3 lines
Do not "return 1" from kqfilter for errors.  That value is passed
directly to the userland caller and results in a mysterious EPERM.
Instead, return EINVAL or something else sensible depending on the
case.

Revision 1.98.6.5: download - view: text, markup, annotated - select for diffs
Sat Dec 1 05:13:24 2007 UTC (17 years ago) by jmcneill
Branches: jmcneill-pm
Diff to: previous 1.98.6.4: preferred, colored; branchpoint 1.98: preferred, colored
Changes since revision 1.98.6.4: +9 -8 lines
Sync with HEAD.

Revision 1.102: download - view: text, markup, annotated - select for diffs
Sat Dec 1 05:12:48 2007 UTC (17 years ago) by jmcneill
Branches: MAIN
CVS tags: vmlocking2-base1, vmlocking-nbase
Branch point for: vmlocking2
Diff to: previous 1.101: preferred, colored
Changes since revision 1.101: +9 -8 lines
aprintify

Revision 1.99.2.1: download - view: text, markup, annotated - select for diffs
Tue Nov 6 23:30:41 2007 UTC (17 years, 1 month ago) by matt
Branches: matt-armv6
CVS tags: matt-armv6-prevmlocking
Diff to: previous 1.99: preferred, colored
Changes since revision 1.99: +7 -6 lines
sync with HEAD

Revision 1.98.6.4: download - view: text, markup, annotated - select for diffs
Tue Nov 6 14:27:35 2007 UTC (17 years, 1 month ago) by joerg
Branches: jmcneill-pm
Diff to: previous 1.98.6.3: preferred, colored; branchpoint 1.98: preferred, colored
Changes since revision 1.98.6.3: +4 -3 lines
Refactor PNP API:
- Make suspend/resume directly a device functionality. It consists of
  three layers (class logic, device logic, bus logic), all of them being
  optional. This replaces D0/D3 transitions.
- device_is_active returns true if the device was not disabled and was
  not suspended (even partially), device_is_enabled returns true if the
  device was enabled.
- Change pnp_global_transition into pnp_system_suspend and
  pnp_system_resume. Before running any suspend/resume handlers, check
  that all currently attached devices support power management and bail
  out otherwise. The latter is not done for the shutdown/panic case.
- Make the former bus-specific generic network handlers a class handler.
- Make PNP message like volume up/down/toogle PNP events. Each device
  can register what events they are interested in and whether the handler
  should be global or not.
- Introduce device_active API for devices to mark themselve in use from
  either the system or the device. Use this to implement the idle handling
  for audio and input devices. This is intended to replace most ad-hoc
  watchdogs as well.
- Fix somes situations in which audio resume would lose mixer settings.
- Make USB host controllers better deal with suspend in the light of
  shared interrupts.
- Flush filesystem cache on suspend.
- Flush disk caches on suspend. Put ATA disks into standby on suspend as
  well.
- Adopt drivers to use the new PNP API.
- Fix a critical bug in the generic cardbus layer that made D0->D3
  break.
- Fix ral(4) to set if_stop.
- Convert cbb(4) to the new PNP API.
- Apply the PCI Express SCI fix on resume again.

Revision 1.82.2.5: download - view: text, markup, annotated - select for diffs
Sat Oct 27 11:34:39 2007 UTC (17 years, 1 month ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.82.2.4: preferred, colored
Changes since revision 1.82.2.4: +7 -6 lines
sync with head.

Revision 1.98.6.3: download - view: text, markup, annotated - select for diffs
Fri Oct 26 15:47:56 2007 UTC (17 years, 1 month ago) by joerg
Branches: jmcneill-pm
Diff to: previous 1.98.6.2: preferred, colored; branchpoint 1.98: preferred, colored
Changes since revision 1.98.6.2: +7 -6 lines
Sync with HEAD.

Follow the merge of pmap.c on i386 and amd64 and move
pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup
code to restore CR4 before jumping back into kernel space as the large
page option might cover that.

Revision 1.100.2.1: download - view: text, markup, annotated - select for diffs
Thu Oct 25 22:39:52 2007 UTC (17 years, 1 month ago) by bouyer
Branches: bouyer-xenamd64
Diff to: previous 1.100: preferred, colored; next MAIN 1.101: preferred, colored
Changes since revision 1.100: +3 -3 lines
Sync with HEAD.

Revision 1.96.2.6: download - view: text, markup, annotated - select for diffs
Tue Oct 23 20:09:54 2007 UTC (17 years, 1 month ago) by ad
Branches: vmlocking
Diff to: previous 1.96.2.5: preferred, colored; branchpoint 1.96: preferred, colored; next MAIN 1.97: preferred, colored
Changes since revision 1.96.2.5: +3 -3 lines
Sync with head.

Revision 1.101: download - view: text, markup, annotated - select for diffs
Fri Oct 19 12:01:22 2007 UTC (17 years, 1 month ago) by ad
Branches: MAIN
CVS tags: jmcneill-base, bouyer-xenamd64-base2, bouyer-xenamd64-base
Branch point for: mjf-devfs
Diff to: previous 1.100: preferred, colored
Changes since revision 1.100: +3 -3 lines
machine/{bus,cpu,intr}.h -> sys/{bus,cpu,intr}.h

Revision 1.98.6.2: download - view: text, markup, annotated - select for diffs
Fri Oct 19 11:52:26 2007 UTC (17 years, 1 month ago) by jmcneill
Branches: jmcneill-pm
Diff to: previous 1.98.6.1: preferred, colored; branchpoint 1.98: preferred, colored
Changes since revision 1.98.6.1: +4 -2 lines
Register generic power handler at attach time.

Revision 1.99.4.1: download - view: text, markup, annotated - select for diffs
Sun Oct 14 11:48:21 2007 UTC (17 years, 2 months ago) by yamt
Branches: yamt-x86pmap
Diff to: previous 1.99: preferred, colored; next MAIN 1.100: preferred, colored
Changes since revision 1.99: +6 -5 lines
sync with head.

Revision 1.100: download - view: text, markup, annotated - select for diffs
Mon Oct 8 16:18:04 2007 UTC (17 years, 2 months ago) by ad
Branches: MAIN
CVS tags: yamt-x86pmap-base4, yamt-x86pmap-base3, vmlocking-base
Branch point for: bouyer-xenamd64
Diff to: previous 1.99: preferred, colored
Changes since revision 1.99: +6 -5 lines
Use the softint API.

Revision 1.82.2.4: download - view: text, markup, annotated - select for diffs
Mon Sep 3 14:39:20 2007 UTC (17 years, 3 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.82.2.3: preferred, colored
Changes since revision 1.82.2.3: +17 -38 lines
sync with head.

Revision 1.96.2.5: download - view: text, markup, annotated - select for diffs
Mon Aug 20 18:37:57 2007 UTC (17 years, 3 months ago) by ad
Branches: vmlocking
Diff to: previous 1.96.2.4: preferred, colored; branchpoint 1.96: preferred, colored
Changes since revision 1.96.2.4: +8 -12 lines
Sync with HEAD.

Revision 1.98.6.1: download - view: text, markup, annotated - select for diffs
Thu Aug 16 11:03:23 2007 UTC (17 years, 4 months ago) by jmcneill
Branches: jmcneill-pm
Diff to: previous 1.98: preferred, colored
Changes since revision 1.98: +9 -13 lines
Sync with HEAD.

Revision 1.98.2.1: download - view: text, markup, annotated - select for diffs
Wed Aug 15 13:48:48 2007 UTC (17 years, 4 months ago) by skrll
Branches: nick-csl-alignment
Diff to: previous 1.98: preferred, colored; next MAIN 1.99: preferred, colored
Changes since revision 1.98: +9 -13 lines
Sync with HEAD.

Revision 1.99: download - view: text, markup, annotated - select for diffs
Wed Aug 15 04:00:34 2007 UTC (17 years, 4 months ago) by kiyohara
Branches: MAIN
CVS tags: yamt-x86pmap-base2, yamt-x86pmap-base, nick-csl-alignment-base5
Branch point for: yamt-x86pmap, matt-armv6
Diff to: previous 1.98: preferred, colored
Changes since revision 1.98: +9 -13 lines
* splsoftusb, IPL_SOFTUSB, and IPL_HARDUSB defines in usbdi.h
-> the current names are confusing (didn't change other drivers)
* fix invalid memory access in usbd_transfer (kern/24636)
-> needed for this driver
* fix USB HC detach race condition (kern/32011)
-> main patch needed for this driver, sc_dying changes in other drivers
not necessary but seem right to me

Patch from Matthew Orgass.
  http://mail-index.netbsd.org/tech-kern/2007/06/26/0001.html

Revision 1.96.2.4: download - view: text, markup, annotated - select for diffs
Sun Jul 15 15:52:50 2007 UTC (17 years, 5 months ago) by ad
Branches: vmlocking
Diff to: previous 1.96.2.3: preferred, colored; branchpoint 1.96: preferred, colored
Changes since revision 1.96.2.3: +2 -16 lines
Sync with head.

Revision 1.98: download - view: text, markup, annotated - select for diffs
Sat Jul 14 21:02:39 2007 UTC (17 years, 5 months ago) by ad
Branches: MAIN
CVS tags: nick-csl-alignment-base, matt-mips64-base, matt-mips64, hpcarm-cleanup
Branch point for: nick-csl-alignment, jmcneill-pm
Diff to: previous 1.97: preferred, colored
Changes since revision 1.97: +2 -16 lines
Generic soft interrupts are mandatory.

Revision 1.96.4.1: download - view: text, markup, annotated - select for diffs
Wed Jul 11 20:08:46 2007 UTC (17 years, 5 months ago) by mjf
Branches: mjf-ufs-trans
Diff to: previous 1.96: preferred, colored; next MAIN 1.97: preferred, colored
Changes since revision 1.96: +8 -8 lines
Sync with head.

Revision 1.97: download - view: text, markup, annotated - select for diffs
Mon Jul 9 21:01:24 2007 UTC (17 years, 5 months ago) by ad
Branches: MAIN
CVS tags: mjf-ufs-trans-base
Diff to: previous 1.96: preferred, colored
Changes since revision 1.96: +8 -8 lines
Merge some of the less invasive changes from the vmlocking branch:

- kthread, callout, devsw API changes
- select()/poll() improvements
- miscellaneous MT safety improvements

Revision 1.95.4.3: download - view: text, markup, annotated - select for diffs
Fri Jun 22 10:12:24 2007 UTC (17 years, 5 months ago) by itohy
Branches: itohy-usb1
Diff to: previous 1.95.4.2: preferred, colored; branchpoint 1.95: preferred, colored; next MAIN 1.96: preferred, colored
Changes since revision 1.95.4.2: +8 -6 lines
- Introduce USBD_CALLBACK_AS_TASK flag, which causes the callback function
  is called as a USB_TASKQ_DRIVER task, with thread context.
  This makes sharing Ethernet drivers with FreeBSD (that requires context
  for some network-related code) much easier.
  The flag is not used by NetBSD/OpenBSD for now.

- Rename xfer->async_task as xfer->task, now used by both async xfer and the
  callback above.

- Use 0 as idle task queue ID (definition USB_TASKQ_IDLE added), and
  increase USB_TASKQ_HC and USB_TASKQ_DRIVER accordingly.
  This makes passing zero-initialized (but not initialized by usb_init_task())
  usb_task to usb_rem_task() be ignored, rather than panic the system.

Revision 1.96.2.3: download - view: text, markup, annotated - select for diffs
Sun Jun 17 21:31:03 2007 UTC (17 years, 6 months ago) by ad
Branches: vmlocking
Diff to: previous 1.96.2.2: preferred, colored; branchpoint 1.96: preferred, colored
Changes since revision 1.96.2.2: +6 -5 lines
- Increase the number of thread priorities from 128 to 256. How the space
  is set up is to be revisited.
- Implement soft interrupts as kernel threads. A generic implementation
  is provided, with hooks for fast-path MD code that can run the interrupt
  threads over the top of other threads executing in the kernel.
- Split vnode::v_flag into three fields, depending on how the flag is
  locked (by the interlock, by the vnode lock, by the file system).
- Miscellaneous locking fixes and improvements.

Revision 1.95.4.2: download - view: text, markup, annotated - select for diffs
Sun Jun 17 01:22:12 2007 UTC (17 years, 6 months ago) by itohy
Branches: itohy-usb1
Diff to: previous 1.95.4.1: preferred, colored; branchpoint 1.95: preferred, colored
Changes since revision 1.95.4.1: +6 -11 lines
- Pullup 1.96 in a different way.
- Use macro to set vmspace of uio for portability.

Revision 1.95.4.1: download - view: text, markup, annotated - select for diffs
Tue May 22 14:57:46 2007 UTC (17 years, 6 months ago) by itohy
Branches: itohy-usb1
Diff to: previous 1.95: preferred, colored
Changes since revision 1.95: +328 -67 lines
Overhaul of USB stack, mostly DMA related

This applies to NetBSD 4.99.13 (March 1, 2007)

usbdi(9) interface is based on FreeBSD version, excluding
 - removal of portability code

Patch most NetBSD changes, excluding
 - DMA memory "reserve", since we don't need contiguous buffers any longer
 - volatiles in DMA structure, since it should not be needed
   with proper bus_dmamap_sync(9)s

DMA/non-DMA memory management overhaul
 - Move all DMA related code to usb_mem.[ch]
   (add usb_alloc_buffer_dma(), usb_free_buffer_dma(), etc.).
   XXX Should usb_mem.[ch] be renamed as usb_mem_dma.[ch] ?
 - Add corresponding non-DMA code to usb_mem_nodma.[ch] .
   Currently just use malloc(9).
 - Above files are conditionally used by config framework (added
   attributes to conf/files and dev/usb/files.usb).
 - Add diagnostic panics when resource allocation is requested
   on interrupt context.
 - Change memory allocations (that require context) from NOWAIT to WAITOK.

Allocate DMA/non-DMA buffer per host interface, not globally.
 advantage:	Buffers can be freed on detaching host interface.
		Activity of a host interface does not affect others.
 disadvantages:	It possibly consumes more memory.

API changes
 - usbd_alloc_xfer() is changed:
    old: usbd_xfer_handle usbd_alloc_xfer(usbd_device_handle dev);
    new: usbd_xfer_handle usbd_alloc_xfer(usbd_device_handle dev,
		usbd_pipe_handle pipe);
 - pipe argument of usbd_setup_*xfer() are now unused
   XXX the pipe argument should be removed?
 - add mapping APIs
 - async request will be processed as a task (kernel thread context),
   and delayed to some extent
 - usbdivar.h: struct usbd_xfer: renamed a member "allocbuf" to "hcbuffer"
   (mapped/allocated/refered buffer for HCI driver)
 - usb_port.h: change usb_proc_ptr from  struct ptoc *  to struct lwp *
 - usb_port.h: add usb_sigproc_ptr for psignal(9) (struct proc *)
 - usb.h: add UE_MAXPKTSZ(ep) and UE_MAXPKTSZ_MASK macros for USB 2.0

changes to USB device drivers
 - atu, aue, axe, cdce, cue, kue, rum, udav, upl, ural, url,
   uaudio, ubt, ucom, ugen, uhidev, uirda, ulpt, umidi, urio,
   uscanner, ustir, utoppy:
    * catch up API change of usbd_alloc_xfer()
 - umass, usscanner:
    * catch up API change of usbd_alloc_xfer()
    * eliminate memory copy for large transfer

ohci
 - free resources on detach
 - add lots of bus_dmamap_sync() operations
 - simplify the code of loading std chain
 - rewrite code of looking up TD/ITD from DMA addr by using allocation chunk
 - add workaround for CMD Tech 670 and 673 chipsets
 - make sure resources are not allocated in interrupt context
 - add support for mapping buffer and mbuf

slhci
 - allocate xfer and slhci_xfer at once, and simplify relevant code
 - add slhci_detach()
 - remove second arg of slhci_attach() since it is the same as the first arg.
 - add support for "mapping" (no, it doesn't map since it doesn't do DMA)
   buffer and mbuf
 - add pcmcia frontend
 - NOT TESTED, missing hardware

ehci
 - add lots of bus_dmamap_sync() operations, possibly too many
 - make sure resources are not allocated in interrupt context
 - add support for mapping buffer and mbuf
 - done only simple test

uhci
 - add lots of bus_dmamap_sync() operations, possibly too many
 - make sure resources are not allocated in interrupt context
 - add support for mapping buffer and mbuf

To do
 - review, test, debug
 - rewrite network drivers to utilize usbd_map_buffer_mbuf()
 - rewrite uaudio(4) to eliminate memcpy
 - "pipe" argument of usbd_setup_*xfer() should eventually be removed

Revision 1.96.2.2: download - view: text, markup, annotated - select for diffs
Sun May 13 17:36:30 2007 UTC (17 years, 7 months ago) by ad
Branches: vmlocking
Diff to: previous 1.96.2.1: preferred, colored; branchpoint 1.96: preferred, colored
Changes since revision 1.96.2.1: +5 -5 lines
- Pass the error number and residual count to biodone(), and let it handle
  setting error indicators. Prepare to eliminate B_ERROR.
- Add a flag argument to brelse() to be set into the buf's flags, instead
  of doing it directly. Typically used to set B_INVAL.
- Add a "struct cpu_info *" argument to kthread_create(), to be used to
  create bound threads. Change "bool mpsafe" to "int flags".
- Allow exit of LWPs in the IDL state when (l != curlwp).
- More locking fixes & conversion to the new API.

Revision 1.96.2.1: download - view: text, markup, annotated - select for diffs
Mon Apr 9 22:10:01 2007 UTC (17 years, 8 months ago) by ad
Branches: vmlocking
Diff to: previous 1.96: preferred, colored
Changes since revision 1.96: +8 -8 lines
- Add two new arguments to kthread_create1: pri_t pri, bool mpsafe.
- Fork kthreads off proc0 as new LWPs, not new processes.

Revision 1.91.2.1: download - view: text, markup, annotated - select for diffs
Fri Apr 6 18:43:51 2007 UTC (17 years, 8 months ago) by bouyer
Branches: netbsd-4
CVS tags: wrstuden-fixsa-newbase, wrstuden-fixsa-base-1, wrstuden-fixsa-base, wrstuden-fixsa, netbsd-4-0-RELEASE, netbsd-4-0-RC5, netbsd-4-0-RC4, netbsd-4-0-RC3, netbsd-4-0-RC2, netbsd-4-0-RC1, netbsd-4-0-1-RELEASE, netbsd-4-0, matt-nb4-arm-base, matt-nb4-arm
Diff to: previous 1.91: preferred, colored; next MAIN 1.92: preferred, colored
Changes since revision 1.91: +143 -12 lines
Pull up following revision(s) (requested by pavel in ticket #556):
	sys/dev/usb/ugen.c: revision 1.89
	sys/dev/usb/usb.c: revisions 1.92, 1.93
	sys/dev/usb/usb_subr.c: revision 1.139, 1.140
	sys/dev/usb/usb.h: revision 1.75
	sys/dev/usb/usbdi.h: revisions 1.71, 1.72
	sys/dev/usb/usbdi.c: revision 1.115, 1.116
	sys/dev/usb/uhid.c: revision 1.73
Restore compatibility of USB_DEVICEINFO ioctl and reads from /dev/usb with
NetBSD 3.x.  The code is conditionally compiled depending on COMPAT_30.

Revision 1.94.2.2: download - view: text, markup, annotated - select for diffs
Mon Mar 12 05:57:33 2007 UTC (17 years, 9 months ago) by rmind
Branches: yamt-idlelwp
Diff to: previous 1.94.2.1: preferred, colored; branchpoint 1.94: preferred, colored; next MAIN 1.95: preferred, colored
Changes since revision 1.94.2.1: +4 -4 lines
Sync with HEAD.

Revision 1.96: download - view: text, markup, annotated - select for diffs
Sun Mar 4 06:02:50 2007 UTC (17 years, 9 months ago) by christos
Branches: MAIN
CVS tags: yamt-idlelwp-base8, thorpej-atomic-base, thorpej-atomic, reinoud-bufcleanup
Branch point for: vmlocking, mjf-ufs-trans
Diff to: previous 1.95: preferred, colored
Changes since revision 1.95: +4 -4 lines
Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.

Revision 1.94.2.1: download - view: text, markup, annotated - select for diffs
Tue Feb 27 16:54:08 2007 UTC (17 years, 9 months ago) by yamt
Branches: yamt-idlelwp
Diff to: previous 1.94: preferred, colored
Changes since revision 1.94: +2 -5 lines
- sync with head.
- move sched_changepri back to kern_synch.c as it doesn't know PPQ anymore.

Revision 1.95: download - view: text, markup, annotated - select for diffs
Mon Feb 26 13:38:09 2007 UTC (17 years, 9 months ago) by drochner
Branches: MAIN
CVS tags: itohy-usb1-base, ad-audiomp-base, ad-audiomp
Branch point for: itohy-usb1
Diff to: previous 1.94: preferred, colored
Changes since revision 1.94: +2 -5 lines
g/c calls to usbd_init()/usbd_finish() which don't have an effect

Revision 1.82.2.3: download - view: text, markup, annotated - select for diffs
Mon Feb 26 09:10:47 2007 UTC (17 years, 9 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.82.2.2: preferred, colored
Changes since revision 1.82.2.2: +6 -3 lines
sync with head.

Revision 1.94: download - view: text, markup, annotated - select for diffs
Fri Feb 9 21:55:29 2007 UTC (17 years, 10 months ago) by ad
Branches: MAIN
CVS tags: post-newlock2-merge
Branch point for: yamt-idlelwp
Diff to: previous 1.93: preferred, colored
Changes since revision 1.93: +6 -3 lines
Merge newlock2 to head.

Revision 1.88.2.3: download - view: text, markup, annotated - select for diffs
Fri Jan 19 09:39:58 2007 UTC (17 years, 10 months ago) by ad
Branches: newlock2
Diff to: previous 1.88.2.2: preferred, colored; branchpoint 1.88: preferred, colored; next MAIN 1.89: preferred, colored
Changes since revision 1.88.2.2: +6 -3 lines
Acquire proclist_mutex before sending signals.

Revision 1.88.2.2: download - view: text, markup, annotated - select for diffs
Fri Jan 12 00:57:49 2007 UTC (17 years, 11 months ago) by ad
Branches: newlock2
Diff to: previous 1.88.2.1: preferred, colored; branchpoint 1.88: preferred, colored
Changes since revision 1.88.2.1: +143 -12 lines
Sync with head.

Revision 1.82.2.2: download - view: text, markup, annotated - select for diffs
Sat Dec 30 20:49:39 2006 UTC (17 years, 11 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.82.2.1: preferred, colored
Changes since revision 1.82.2.1: +190 -37 lines
sync with head.

Revision 1.88.4.2: download - view: text, markup, annotated - select for diffs
Sun Dec 10 07:18:17 2006 UTC (18 years ago) by yamt
Branches: yamt-splraiseipl
Diff to: previous 1.88.4.1: preferred, colored; branchpoint 1.88: preferred, colored; next MAIN 1.89: preferred, colored
Changes since revision 1.88.4.1: +195 -43 lines
sync with head.

Revision 1.93: download - view: text, markup, annotated - select for diffs
Tue Dec 5 17:35:35 2006 UTC (18 years ago) by christos
Branches: MAIN
CVS tags: yamt-splraiseipl-base5, yamt-splraiseipl-base4, yamt-splraiseipl-base3, newlock2-nbase, newlock2-base
Diff to: previous 1.92: preferred, colored
Changes since revision 1.92: +23 -25 lines
fix compilation issues.

Revision 1.92: download - view: text, markup, annotated - select for diffs
Sun Dec 3 22:34:58 2006 UTC (18 years ago) by pavel
Branches: MAIN
Diff to: previous 1.91: preferred, colored
Changes since revision 1.91: +142 -9 lines
Restore compatibility of USB_DEVICEINFO ioctl and reads from /dev/usb with
NetBSD 3.x. Patch from Stephan Thesing provided in
http://mail-index.netbsd.org/current-users/2006/03/21/0002.html, with some
modifications by me.
See also
http://mail-index.netbsd.org/current-users/2006/08/29/0017.html

The code is conditionally compiled depending on COMPAT_30.

Also fix a leak of struct usb_event in usbread() introduced while converting
on-stack variables to dynamic allocation.

Reviewed by martin@.

Revision 1.88.2.1: download - view: text, markup, annotated - select for diffs
Sat Nov 18 21:34:51 2006 UTC (18 years ago) by ad
Branches: newlock2
Diff to: previous 1.88: preferred, colored
Changes since revision 1.88: +48 -26 lines
Sync with head.

Revision 1.91: download - view: text, markup, annotated - select for diffs
Thu Nov 16 01:33:27 2006 UTC (18 years, 1 month ago) by christos
Branches: MAIN
CVS tags: netbsd-4-base
Branch point for: netbsd-4
Diff to: previous 1.90: preferred, colored
Changes since revision 1.90: +10 -10 lines
__unused removal on arguments; approved by core.

Revision 1.90: download - view: text, markup, annotated - select for diffs
Tue Oct 31 20:43:31 2006 UTC (18 years, 1 month ago) by joerg
Branches: MAIN
Diff to: previous 1.89: preferred, colored
Changes since revision 1.89: +47 -26 lines
Split the USB task queue into two parts, one for normal device tasks and
one for tasks of the host controllers. This is needed for drivers like
ural(4) that want to do synchronous USB transfers from the task handler.
Before the split timeouts could not be handled correctly as the task
thread was still blocked. From FreeBSD.

Revision 1.88.4.1: download - view: text, markup, annotated - select for diffs
Sun Oct 22 06:06:52 2006 UTC (18 years, 1 month ago) by yamt
Branches: yamt-splraiseipl
Diff to: previous 1.88: preferred, colored
Changes since revision 1.88: +11 -10 lines
sync with head

Revision 1.89: download - view: text, markup, annotated - select for diffs
Thu Oct 12 01:32:00 2006 UTC (18 years, 2 months ago) by christos
Branches: MAIN
CVS tags: yamt-splraiseipl-base2
Diff to: previous 1.88: preferred, colored
Changes since revision 1.88: +11 -10 lines
- sprinkle __unused on function decls.
- fix a couple of unused bugs
- no more -Wno-unused for i386

Revision 1.85.2.3: download - view: text, markup, annotated - select for diffs
Thu Sep 14 12:31:40 2006 UTC (18 years, 3 months ago) by yamt
Branches: yamt-pdpolicy
Diff to: previous 1.85.2.2: preferred, colored; branchpoint 1.85: preferred, colored; next MAIN 1.86: preferred, colored
Changes since revision 1.85.2.2: +3 -3 lines
sync with head.

Revision 1.84.4.1: download - view: text, markup, annotated - select for diffs
Sat Sep 9 02:55:33 2006 UTC (18 years, 3 months ago) by rpaulo
Branches: rpaulo-netinet-merge-pcb
Diff to: previous 1.84: preferred, colored; next MAIN 1.85: preferred, colored
Changes since revision 1.84: +42 -25 lines
sync with head

Revision 1.88: download - view: text, markup, annotated - select for diffs
Sun Sep 3 21:33:10 2006 UTC (18 years, 3 months ago) by christos
Branches: MAIN
CVS tags: yamt-splraiseipl-base, yamt-pdpolicy-base9, rpaulo-netinet-merge-pcb-base
Branch point for: yamt-splraiseipl, newlock2
Diff to: previous 1.87: preferred, colored
Changes since revision 1.87: +3 -3 lines
add missing initializer.

Revision 1.85.2.2: download - view: text, markup, annotated - select for diffs
Mon Jun 26 12:52:28 2006 UTC (18 years, 5 months ago) by yamt
Branches: yamt-pdpolicy
Diff to: previous 1.85.2.1: preferred, colored; branchpoint 1.85: preferred, colored
Changes since revision 1.85.2.1: +39 -21 lines
sync with head.

Revision 1.82.2.1: download - view: text, markup, annotated - select for diffs
Wed Jun 21 15:07:44 2006 UTC (18 years, 5 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.82: preferred, colored
Changes since revision 1.82: +50 -33 lines
sync with head.

Revision 1.86.2.1: download - view: text, markup, annotated - select for diffs
Mon Jun 19 04:05:49 2006 UTC (18 years, 5 months ago) by chap
Branches: chap-midi
Diff to: previous 1.86: preferred, colored; next MAIN 1.87: preferred, colored
Changes since revision 1.86: +39 -21 lines
Sync with head.

Revision 1.87: download - view: text, markup, annotated - select for diffs
Fri Jun 9 21:33:42 2006 UTC (18 years, 6 months ago) by christos
Branches: MAIN
CVS tags: yamt-pdpolicy-base8, yamt-pdpolicy-base7, yamt-pdpolicy-base6, gdamore-uart-base, gdamore-uart, chap-midi-nbase, chap-midi-base, abandoned-netbsd-4-base, abandoned-netbsd-4
Diff to: previous 1.86: preferred, colored
Changes since revision 1.86: +39 -21 lines
stack police: don't allocate usb_events on the stack, malloc them directly.
this saves stack and an extra copy.

Revision 1.84.6.1: download - view: text, markup, annotated - select for diffs
Sat Apr 22 11:39:38 2006 UTC (18 years, 7 months ago) by simonb
Branches: simonb-timecounters
CVS tags: simonb-timcounters-final
Diff to: previous 1.84: preferred, colored; next MAIN 1.85: preferred, colored
Changes since revision 1.84: +4 -5 lines
Sync with head.

Revision 1.85.4.1: download - view: text, markup, annotated - select for diffs
Wed Apr 19 03:26:30 2006 UTC (18 years, 7 months ago) by elad
Branches: elad-kernelauth
Diff to: previous 1.85: preferred, colored; next MAIN 1.86: preferred, colored
Changes since revision 1.85: +3 -3 lines
sync with head.

Revision 1.85.2.1: download - view: text, markup, annotated - select for diffs
Sat Apr 1 12:07:31 2006 UTC (18 years, 8 months ago) by yamt
Branches: yamt-pdpolicy
Diff to: previous 1.85: preferred, colored
Changes since revision 1.85: +3 -3 lines
sync with head.

Revision 1.85.6.1: download - view: text, markup, annotated - select for diffs
Fri Mar 31 09:45:26 2006 UTC (18 years, 8 months ago) by tron
Branches: peter-altq
Diff to: previous 1.85: preferred, colored; next MAIN 1.86: preferred, colored
Changes since revision 1.85: +3 -3 lines
Merge 2006-03-31 NetBSD-current into the "peter-altq" branch.

Revision 1.86: download - view: text, markup, annotated - select for diffs
Wed Mar 29 04:16:50 2006 UTC (18 years, 8 months ago) by thorpej
Branches: MAIN
CVS tags: yamt-pdpolicy-base5, yamt-pdpolicy-base4, yamt-pdpolicy-base3, simonb-timecounters-base, elad-kernelauth-base
Branch point for: chap-midi
Diff to: previous 1.85: preferred, colored
Changes since revision 1.85: +3 -3 lines
Use device_cfdata().

Revision 1.81.8.1: download - view: text, markup, annotated - select for diffs
Fri Mar 24 22:36:10 2006 UTC (18 years, 8 months ago) by riz
Branches: netbsd-3-0
CVS tags: netbsd-3-0-3-RELEASE, netbsd-3-0-2-RELEASE, netbsd-3-0-1-RELEASE
Diff to: previous 1.81: preferred, colored; next MAIN 1.82: preferred, colored
Changes since revision 1.81: +5 -5 lines
Pull up following revision(s) (requested by drochner in ticket #1215):
	sys/dev/usb/usb.c: revision 1.83
Allow a NULL pointer as argument to usb_get_next_event(), and don't
allocate a "struct usb_event" on stack in usb_add_event().
This gives just enough breathing space that the box doesn't die
immediately from stack overflow when I insert a
ohci0 at cardbus0 dev 0 function 0: Acer Labs M5237 USB 1.1 Host Controller

Revision 1.81.6.1: download - view: text, markup, annotated - select for diffs
Fri Mar 24 22:35:33 2006 UTC (18 years, 8 months ago) by riz
Branches: netbsd-3
CVS tags: netbsd-3-1-RELEASE, netbsd-3-1-RC4, netbsd-3-1-RC3, netbsd-3-1-RC2, netbsd-3-1-RC1, netbsd-3-1-1-RELEASE, netbsd-3-1
Diff to: previous 1.81: preferred, colored; next MAIN 1.82: preferred, colored
Changes since revision 1.81: +5 -5 lines
Pull up following revision(s) (requested by drochner in ticket #1215):
	sys/dev/usb/usb.c: revision 1.83
Allow a NULL pointer as argument to usb_get_next_event(), and don't
allocate a "struct usb_event" on stack in usb_add_event().
This gives just enough breathing space that the box doesn't die
immediately from stack overflow when I insert a
ohci0 at cardbus0 dev 0 function 0: Acer Labs M5237 USB 1.1 Host Controller

Revision 1.85: download - view: text, markup, annotated - select for diffs
Wed Mar 1 12:38:13 2006 UTC (18 years, 9 months ago) by yamt
Branches: MAIN
CVS tags: yamt-pdpolicy-base2, yamt-pdpolicy-base, peter-altq-base
Branch point for: yamt-pdpolicy, peter-altq, elad-kernelauth
Diff to: previous 1.84: preferred, colored
Changes since revision 1.84: +3 -4 lines
merge yamt-uio_vmspace branch.

- use vmspace rather than proc or lwp where appropriate.
  the latter is more natural to specify an address space.
  (and less likely to be abused for random purposes.)
- fix a swdmover race.

Revision 1.84.2.1: download - view: text, markup, annotated - select for diffs
Sun Feb 5 12:54:07 2006 UTC (18 years, 10 months ago) by yamt
Branches: yamt-uio_vmspace
Diff to: previous 1.84: preferred, colored; next MAIN 1.85: preferred, colored
Changes since revision 1.84: +3 -4 lines
adapt dev/usb.

Revision 1.84: download - view: text, markup, annotated - select for diffs
Sun Dec 11 12:24:01 2005 UTC (19 years ago) by christos
Branches: MAIN
CVS tags: yamt-uio_vmspace-base5
Branch point for: yamt-uio_vmspace, simonb-timecounters, rpaulo-netinet-merge-pcb
Diff to: previous 1.83: preferred, colored
Changes since revision 1.83: +9 -9 lines
merge ktrace-lwp.

Revision 1.79.2.6: download - view: text, markup, annotated - select for diffs
Thu Nov 10 14:08:06 2005 UTC (19 years, 1 month ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.79.2.5: preferred, colored; next MAIN 1.80: preferred, colored
Changes since revision 1.79.2.5: +6 -6 lines
Sync with HEAD. Here we go again...

Revision 1.83: download - view: text, markup, annotated - select for diffs
Fri Sep 9 12:04:30 2005 UTC (19 years, 3 months ago) by drochner
Branches: MAIN
CVS tags: yamt-vop-base3, yamt-vop-base2, yamt-vop-base, yamt-vop, yamt-readahead-pervnode, yamt-readahead-perfile, yamt-readahead-base3, yamt-readahead-base2, yamt-readahead-base, yamt-readahead, thorpej-vnode-attr-base, thorpej-vnode-attr, ktrace-lwp-base
Diff to: previous 1.82: preferred, colored
Changes since revision 1.82: +5 -5 lines
Allow a NULL pointer as argument to usb_get_next_event(), and don't
allocate a "struct usb_event" on stack in usb_add_event().
This gives just enough breathing space that the box doesn't die
immediately from stack overflow when I insert a
ohci0 at cardbus0 dev 0 function 0: Acer Labs M5237 USB 1.1 Host Controller

Revision 1.82: download - view: text, markup, annotated - select for diffs
Tue Jun 21 14:01:12 2005 UTC (19 years, 5 months ago) by ws
Branches: MAIN
Branch point for: yamt-lazymbuf
Diff to: previous 1.81: preferred, colored
Changes since revision 1.81: +3 -3 lines
PR-30566: Poll must not return <sys/errno.h> values.
Start with those places I can easily test.

Revision 1.80.8.1: download - view: text, markup, annotated - select for diffs
Fri Apr 29 11:29:18 2005 UTC (19 years, 7 months ago) by kent
Branches: kent-audio2
Diff to: previous 1.80: preferred, colored; next MAIN 1.81: preferred, colored
Changes since revision 1.80: +11 -2 lines
sync with -current

Revision 1.79.2.5: download - view: text, markup, annotated - select for diffs
Mon Jan 24 08:35:36 2005 UTC (19 years, 10 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.79.2.4: preferred, colored
Changes since revision 1.79.2.4: +11 -2 lines
Sync with HEAD.

Revision 1.81: download - view: text, markup, annotated - select for diffs
Mon Jan 24 01:30:38 2005 UTC (19 years, 10 months ago) by joff
Branches: MAIN
CVS tags: yamt-km-base4, yamt-km-base3, yamt-km-base2, yamt-km-base, yamt-km, netbsd-3-base, netbsd-3-0-RELEASE, netbsd-3-0-RC6, netbsd-3-0-RC5, netbsd-3-0-RC4, netbsd-3-0-RC3, netbsd-3-0-RC2, netbsd-3-0-RC1, kent-audio2-base
Branch point for: netbsd-3-0, netbsd-3
Diff to: previous 1.80: preferred, colored
Changes since revision 1.80: +11 -2 lines
Implementation requirements of usb_needs_reattach(), from OpenBSD and required
for atu(4) to do a USB reconnect after firmware upload.

Revision 1.79.2.4: download - view: text, markup, annotated - select for diffs
Tue Sep 21 13:33:49 2004 UTC (20 years, 2 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.79.2.3: preferred, colored
Changes since revision 1.79.2.3: +9 -9 lines
Fix the sync with head I botched.

Revision 1.79.2.3: download - view: text, markup, annotated - select for diffs
Sat Sep 18 14:51:46 2004 UTC (20 years, 2 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.79.2.2: preferred, colored
Changes since revision 1.79.2.2: +9 -9 lines
Sync with HEAD.

Revision 1.79.2.2: download - view: text, markup, annotated - select for diffs
Tue Aug 3 10:51:39 2004 UTC (20 years, 4 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.79.2.1: preferred, colored
Changes since revision 1.79.2.1: +4 -4 lines
Sync with HEAD

Revision 1.80: download - view: text, markup, annotated - select for diffs
Fri Nov 7 17:03:25 2003 UTC (21 years, 1 month ago) by wiz
Branches: MAIN
CVS tags: netbsd-2-base, netbsd-2-1-RELEASE, netbsd-2-1-RC6, netbsd-2-1-RC5, netbsd-2-1-RC4, netbsd-2-1-RC3, netbsd-2-1-RC2, netbsd-2-1-RC1, netbsd-2-1, netbsd-2-0-base, netbsd-2-0-RELEASE, netbsd-2-0-RC5, netbsd-2-0-RC4, netbsd-2-0-RC3, netbsd-2-0-RC2, netbsd-2-0-RC1, netbsd-2-0-3-RELEASE, netbsd-2-0-2-RELEASE, netbsd-2-0-1-RELEASE, netbsd-2-0, netbsd-2, kent-audio1-beforemerge, kent-audio1-base, kent-audio1
Branch point for: kent-audio2
Diff to: previous 1.79: preferred, colored
Changes since revision 1.79: +4 -4 lines
URL updates, from Jared Yanovich and jmc@openbsd, forwarded by the latter.

Revision 1.79.2.1: download - view: text, markup, annotated - select for diffs
Wed Jul 2 15:26:24 2003 UTC (21 years, 5 months ago) by darrenr
Branches: ktrace-lwp
Diff to: previous 1.79: preferred, colored
Changes since revision 1.79: +9 -9 lines
Apply the aborted ktrace-lwp changes to a specific branch.  This is just for
others to review, I'm concerned that patch fuziness may have resulted in some
errant code being generated but I'll look at that later by comparing the diff
from the base to the branch with the file I attempt to apply to it.  This will,
at the very least, put the changes in a better context for others to review
them and attempt to tinker with removing passing of 'struct lwp' through
the kernel.

Revision 1.79: download - view: text, markup, annotated - select for diffs
Sun Jun 29 22:30:58 2003 UTC (21 years, 5 months ago) by fvdl
Branches: MAIN
Branch point for: ktrace-lwp
Diff to: previous 1.78: preferred, colored
Changes since revision 1.78: +7 -7 lines
Back out the lwp/ktrace changes. They contained a lot of colateral damage,
and need to be examined and discussed more.

Revision 1.78: download - view: text, markup, annotated - select for diffs
Sat Jun 28 14:21:46 2003 UTC (21 years, 5 months ago) by darrenr
Branches: MAIN
Diff to: previous 1.77: preferred, colored
Changes since revision 1.77: +9 -9 lines
Pass lwp pointers throughtout the kernel, as required, so that the lwpid can
be inserted into ktrace records.  The general change has been to replace
"struct proc *" with "struct lwp *" in various function prototypes, pass
the lwp through and use l_proc to get the process pointer when needed.

Bump the kernel rev up to 1.6V

Revision 1.53.2.10: download - view: text, markup, annotated - select for diffs
Fri Jan 3 17:08:21 2003 UTC (21 years, 11 months ago) by thorpej
Branches: nathanw_sa
CVS tags: nathanw_sa_end
Diff to: previous 1.53.2.9: preferred, colored; branchpoint 1.53: preferred, colored; next MAIN 1.54: preferred, colored
Changes since revision 1.53.2.9: +12 -9 lines
Sync with HEAD.

Revision 1.77: download - view: text, markup, annotated - select for diffs
Wed Jan 1 00:10:26 2003 UTC (21 years, 11 months ago) by thorpej
Branches: MAIN
CVS tags: nathanw_sa_before_merge, nathanw_sa_base, fvdl_fs64_base
Diff to: previous 1.76: preferred, colored
Changes since revision 1.76: +3 -3 lines
Use aprint_normal() in cfprint routines.

Revision 1.76: download - view: text, markup, annotated - select for diffs
Mon Dec 30 02:44:32 2002 UTC (21 years, 11 months ago) by dsainty
Branches: MAIN
Diff to: previous 1.75: preferred, colored
Changes since revision 1.75: +11 -8 lines
extern references to debugging globals that really exist elsewhere

Revision 1.53.2.9: download - view: text, markup, annotated - select for diffs
Wed Dec 11 06:38:53 2002 UTC (22 years ago) by thorpej
Branches: nathanw_sa
Diff to: previous 1.53.2.8: preferred, colored; branchpoint 1.53: preferred, colored
Changes since revision 1.53.2.8: +2 -2 lines
Sync with HEAD.

Revision 1.75: download - view: text, markup, annotated - select for diffs
Tue Nov 26 18:49:49 2002 UTC (22 years ago) by christos
Branches: MAIN
CVS tags: gmcgarry_ucred_base, gmcgarry_ucred, gmcgarry_ctxsw_base, gmcgarry_ctxsw
Diff to: previous 1.74: preferred, colored
Changes since revision 1.74: +4 -4 lines
si_ -> sel_

Revision 1.53.2.8: download - view: text, markup, annotated - select for diffs
Mon Nov 11 22:12:59 2002 UTC (22 years, 1 month ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.53.2.7: preferred, colored; branchpoint 1.53: preferred, colored
Changes since revision 1.53.2.7: +54 -2 lines
Catch up to -current

Revision 1.74: download - view: text, markup, annotated - select for diffs
Wed Oct 23 09:14:02 2002 UTC (22 years, 1 month ago) by jdolecek
Branches: MAIN
CVS tags: kqueue-aftermerge
Diff to: previous 1.73: preferred, colored
Changes since revision 1.73: +56 -4 lines
merge kqueue branch into -current

kqueue provides a stateful and efficient event notification framework
currently supported events include socket, file, directory, fifo,
pipe, tty and device changes, and monitoring of processes and signals

kqueue is supported by all writable filesystems in NetBSD tree
(with exception of Coda) and all device drivers supporting poll(2)

based on work done by Jonathan Lemon for FreeBSD
initial NetBSD port done by Luke Mewburn and Jason Thorpe

Revision 1.53.2.7: download - view: text, markup, annotated - select for diffs
Fri Oct 18 02:44:37 2002 UTC (22 years, 2 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.53.2.6: preferred, colored; branchpoint 1.53: preferred, colored
Changes since revision 1.53.2.6: +0 -1 lines
Catch up to -current.

Revision 1.53.4.6: download - view: text, markup, annotated - select for diffs
Thu Oct 10 18:42:44 2002 UTC (22 years, 2 months ago) by jdolecek
Branches: kqueue
Diff to: previous 1.53.4.5: preferred, colored; branchpoint 1.53: preferred, colored; next MAIN 1.54: preferred, colored
Changes since revision 1.53.4.5: +13 -4 lines
sync kqueue with -current; this includes merge of gehenna-devsw branch,
merge of i386 MP branch, and part of autoconf rototil work

Revision 1.73: download - view: text, markup, annotated - select for diffs
Mon Sep 23 05:51:19 2002 UTC (22 years, 2 months ago) by simonb
Branches: MAIN
CVS tags: kqueue-beforemerge, kqueue-base
Diff to: previous 1.72: preferred, colored
Changes since revision 1.72: +2 -3 lines
Remove breaks after returns, unreachable returns and returns after
returns(!).

Revision 1.53.2.6: download - view: text, markup, annotated - select for diffs
Tue Sep 17 21:21:36 2002 UTC (22 years, 3 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.53.2.5: preferred, colored; branchpoint 1.53: preferred, colored
Changes since revision 1.53.2.5: +12 -3 lines
Catch up to -current.

Revision 1.72: download - view: text, markup, annotated - select for diffs
Fri Sep 6 13:18:43 2002 UTC (22 years, 3 months ago) by gehenna
Branches: MAIN
Diff to: previous 1.71: preferred, colored
Changes since revision 1.71: +12 -3 lines
Merge the gehenna-devsw branch into the trunk.

This merge changes the device switch tables from static array to
dynamically generated by config(8).

- All device switches is defined as a constant structure in device drivers.

- The new grammer ``device-major'' is introduced to ``files''.

	device-major <prefix> char <num> [block <num>] [<rules>]

- All device major numbers must be listed up in port dependent majors.<arch>
  by using this grammer.

- Added the new naming convention.
  The name of the device switch must be <prefix>_[bc]devsw for auto-generation
  of device switch tables.

- The backward compatibility of loading block/character device
  switch by LKM framework is broken. This is necessary to convert
  from block/character device major to device name in runtime and vice versa.

- The restriction to assign device major by LKM is completely removed.
  We don't need to reserve LKM entries for dynamic loading of device switch.

- In compile time, device major numbers list is packed into the kernel and
  the LKM framework will refer it to assign device major number dynamically.

Revision 1.53.4.5: download - view: text, markup, annotated - select for diffs
Sun Jun 23 17:49:11 2002 UTC (22 years, 5 months ago) by jdolecek
Branches: kqueue
Diff to: previous 1.53.4.4: preferred, colored; branchpoint 1.53: preferred, colored
Changes since revision 1.53.4.4: +10 -4 lines
catch up with -current on kqueue branch

Revision 1.70.2.2: download - view: text, markup, annotated - select for diffs
Thu Jun 20 16:34:14 2002 UTC (22 years, 5 months ago) by gehenna
Branches: gehenna-devsw
Diff to: previous 1.70.2.1: preferred, colored; branchpoint 1.70: preferred, colored; next MAIN 1.71: preferred, colored
Changes since revision 1.70.2.1: +3 -3 lines
catch up with -current.

Revision 1.53.2.5: download - view: text, markup, annotated - select for diffs
Thu Jun 20 03:46:56 2002 UTC (22 years, 5 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.53.2.4: preferred, colored; branchpoint 1.53: preferred, colored
Changes since revision 1.53.2.4: +10 -4 lines
Catch up to -current.

Revision 1.71: download - view: text, markup, annotated - select for diffs
Sat Jun 1 23:51:04 2002 UTC (22 years, 6 months ago) by lukem
Branches: MAIN
CVS tags: gehenna-devsw-base
Diff to: previous 1.70: preferred, colored
Changes since revision 1.70: +3 -3 lines
SIMPLEQ rototill:
- implement SIMPLEQ_REMOVE(head, elm, type, field).  whilst it's O(n),
  this mirrors the functionality of SLIST_REMOVE() (the other
  singly-linked list type) and FreeBSD's STAILQ_REMOVE()
- remove the unnecessary elm arg from SIMPLEQ_REMOVE_HEAD().
  this mirrors the functionality of SLIST_REMOVE_HEAD() (the other
  singly-linked list type) and FreeBSD's STAILQ_REMOVE_HEAD()
- remove notes about SIMPLEQ not supporting arbitrary element removal
- use SIMPLEQ_FOREACH() instead of home-grown for loops
- use SIMPLEQ_EMPTY() appropriately
- use SIMPLEQ_*() instead of accessing sqh_first,sqh_last,sqe_next directly
- reorder manual page; be consistent about how the types are listed
- other minor cleanups

Revision 1.70.2.1: download - view: text, markup, annotated - select for diffs
Thu May 16 11:29:15 2002 UTC (22 years, 7 months ago) by gehenna
Branches: gehenna-devsw
Diff to: previous 1.70: preferred, colored
Changes since revision 1.70: +12 -3 lines
Add the character device switch.

Revision 1.70: download - view: text, markup, annotated - select for diffs
Thu May 9 21:54:32 2002 UTC (22 years, 7 months ago) by augustss
Branches: MAIN
CVS tags: netbsd-1-6-base, netbsd-1-6-RELEASE, netbsd-1-6-RC3, netbsd-1-6-RC2, netbsd-1-6-RC1, netbsd-1-6-PATCH002-RELEASE, netbsd-1-6-PATCH002-RC4, netbsd-1-6-PATCH002-RC3, netbsd-1-6-PATCH002-RC2, netbsd-1-6-PATCH002-RC1, netbsd-1-6-PATCH002, netbsd-1-6-PATCH001-RELEASE, netbsd-1-6-PATCH001-RC3, netbsd-1-6-PATCH001-RC2, netbsd-1-6-PATCH001-RC1, netbsd-1-6-PATCH001, netbsd-1-6
Branch point for: gehenna-devsw
Diff to: previous 1.69: preferred, colored
Changes since revision 1.69: +3 -3 lines
Use callout init macro.

Revision 1.69: download - view: text, markup, annotated - select for diffs
Tue Apr 23 06:34:11 2002 UTC (22 years, 7 months ago) by augustss
Branches: MAIN
Diff to: previous 1.68: preferred, colored
Changes since revision 1.68: +8 -2 lines
Check for write permission for some ioctls.

Revision 1.53.4.4: download - view: text, markup, annotated - select for diffs
Sat Mar 16 16:01:40 2002 UTC (22 years, 9 months ago) by jdolecek
Branches: kqueue
Diff to: previous 1.53.4.3: preferred, colored; branchpoint 1.53: preferred, colored
Changes since revision 1.53.4.3: +9 -8 lines
Catch up with -current.

Revision 1.53.2.4: download - view: text, markup, annotated - select for diffs
Thu Feb 28 04:14:33 2002 UTC (22 years, 9 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.53.2.3: preferred, colored; branchpoint 1.53: preferred, colored
Changes since revision 1.53.2.3: +23 -22 lines
Catch up to -current.

Revision 1.68: download - view: text, markup, annotated - select for diffs
Wed Feb 20 20:30:12 2002 UTC (22 years, 9 months ago) by christos
Branches: MAIN
CVS tags: newlock-base, newlock, ifpoll-base, eeh-devprop-base, eeh-devprop
Diff to: previous 1.67: preferred, colored
Changes since revision 1.67: +8 -8 lines
Prefix structure members to protect them against clashes with eg. c++ keywords.
Suggested by Alfred Perlstein, from FreeBSD, ok'd by augustss

Revision 1.53.4.3: download - view: text, markup, annotated - select for diffs
Mon Feb 11 20:10:17 2002 UTC (22 years, 10 months ago) by jdolecek
Branches: kqueue
Diff to: previous 1.53.4.2: preferred, colored; branchpoint 1.53: preferred, colored
Changes since revision 1.53.4.2: +17 -17 lines
Sync w/ -current.

Revision 1.67: download - view: text, markup, annotated - select for diffs
Mon Feb 11 15:11:49 2002 UTC (22 years, 10 months ago) by augustss
Branches: MAIN
Diff to: previous 1.66: preferred, colored
Changes since revision 1.66: +4 -3 lines
Give usbd_do_request_flags() an extra argument for the timeout.

Revision 1.66: download - view: text, markup, annotated - select for diffs
Sun Feb 3 18:15:21 2002 UTC (22 years, 10 months ago) by augustss
Branches: MAIN
Diff to: previous 1.65: preferred, colored
Changes since revision 1.65: +17 -17 lines
Some white space fixes from FreeBSD.

Revision 1.53.2.3: download - view: text, markup, annotated - select for diffs
Fri Jan 11 23:39:37 2002 UTC (22 years, 11 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.53.2.2: preferred, colored; branchpoint 1.53: preferred, colored
Changes since revision 1.53.2.2: +20 -9 lines
More catchup.

Revision 1.53.4.2: download - view: text, markup, annotated - select for diffs
Thu Jan 10 19:59:04 2002 UTC (22 years, 11 months ago) by thorpej
Branches: kqueue
Diff to: previous 1.53.4.1: preferred, colored; branchpoint 1.53: preferred, colored
Changes since revision 1.53.4.1: +110 -48 lines
Sync kqueue branch with -current.

Revision 1.53.2.2: download - view: text, markup, annotated - select for diffs
Tue Jan 8 00:32:17 2002 UTC (22 years, 11 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.53.2.1: preferred, colored; branchpoint 1.53: preferred, colored
Changes since revision 1.53.2.1: +87 -40 lines
Catch up to -current.

Revision 1.65: download - view: text, markup, annotated - select for diffs
Thu Jan 3 22:20:45 2002 UTC (22 years, 11 months ago) by augustss
Branches: MAIN
Diff to: previous 1.64: preferred, colored
Changes since revision 1.64: +9 -2 lines
Add a DIAGNOSTIC check.  From FreeBSD.

Revision 1.64: download - view: text, markup, annotated - select for diffs
Wed Jan 2 22:44:44 2002 UTC (22 years, 11 months ago) by augustss
Branches: MAIN
Diff to: previous 1.63: preferred, colored
Changes since revision 1.63: +7 -4 lines
Add a comment.

Revision 1.63: download - view: text, markup, annotated - select for diffs
Wed Jan 2 20:58:12 2002 UTC (22 years, 11 months ago) by augustss
Branches: MAIN
Diff to: previous 1.62: preferred, colored
Changes since revision 1.62: +4 -4 lines
Fix typo in last commit.

Revision 1.62: download - view: text, markup, annotated - select for diffs
Wed Jan 2 20:55:58 2002 UTC (22 years, 11 months ago) by augustss
Branches: MAIN
Diff to: previous 1.61: preferred, colored
Changes since revision 1.61: +11 -10 lines
Some more usb_proc_ptr changes.
Also some minor stylistic changes.

Revision 1.61: download - view: text, markup, annotated - select for diffs
Mon Dec 31 15:55:51 2001 UTC (22 years, 11 months ago) by augustss
Branches: MAIN
Diff to: previous 1.60: preferred, colored
Changes since revision 1.60: +3 -5 lines
Delay bus enumeration a little in case the controller is a companion
controller.  This way the main controller can gain ownership of the port
before enumeration starts.

Revision 1.60: download - view: text, markup, annotated - select for diffs
Mon Dec 31 12:15:22 2001 UTC (22 years, 11 months ago) by augustss
Branches: MAIN
Diff to: previous 1.59: preferred, colored
Changes since revision 1.59: +17 -7 lines
Make a typedef for struct proc to make portingeasier.

Revision 1.59: download - view: text, markup, annotated - select for diffs
Mon Nov 26 20:16:55 2001 UTC (23 years ago) by augustss
Branches: MAIN
Diff to: previous 1.58: preferred, colored
Changes since revision 1.58: +3 -3 lines
Change wchan name for usb task thread.

Revision 1.58: download - view: text, markup, annotated - select for diffs
Tue Nov 20 23:53:26 2001 UTC (23 years ago) by augustss
Branches: MAIN
Diff to: previous 1.57: preferred, colored
Changes since revision 1.57: +61 -33 lines
Create a special kernel thread to run the usb short lived tasks (instead
of using the device discovery threads).

Revision 1.57: download - view: text, markup, annotated - select for diffs
Tue Nov 20 13:48:04 2001 UTC (23 years ago) by augustss
Branches: MAIN
Diff to: previous 1.56: preferred, colored
Changes since revision 1.56: +15 -4 lines
Keep track of device speed for USB 2.0.

Revision 1.53.2.1: download - view: text, markup, annotated - select for diffs
Wed Nov 14 19:16:20 2001 UTC (23 years, 1 month ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.53: preferred, colored
Changes since revision 1.53: +7 -3 lines
Catch up to -current.

Revision 1.56: download - view: text, markup, annotated - select for diffs
Tue Nov 13 07:55:30 2001 UTC (23 years, 1 month ago) by augustss
Branches: MAIN
Diff to: previous 1.55: preferred, colored
Changes since revision 1.55: +4 -4 lines
Add some #endif comments.

Revision 1.55: download - view: text, markup, annotated - select for diffs
Tue Nov 13 06:24:56 2001 UTC (23 years, 1 month ago) by lukem
Branches: MAIN
Diff to: previous 1.54: preferred, colored
Changes since revision 1.54: +4 -1 lines
add RCSIDs

Revision 1.53.8.1: download - view: text, markup, annotated - select for diffs
Mon Nov 12 21:18:34 2001 UTC (23 years, 1 month ago) by thorpej
Branches: thorpej-mips-cache
Diff to: previous 1.53: preferred, colored; next MAIN 1.54: preferred, colored
Changes since revision 1.53: +2 -1 lines
Sync the thorpej-mips-cache branch with -current.

Revision 1.54: download - view: text, markup, annotated - select for diffs
Fri Nov 9 14:59:11 2001 UTC (23 years, 1 month ago) by augustss
Branches: MAIN
CVS tags: thorpej-mips-cache-base
Diff to: previous 1.53: preferred, colored
Changes since revision 1.53: +2 -1 lines
Add a debug message.

Revision 1.53.4.1: download - view: text, markup, annotated - select for diffs
Sat Sep 8 05:18:32 2001 UTC (23 years, 3 months ago) by thorpej
Branches: kqueue
Diff to: previous 1.53: preferred, colored
Changes since revision 1.53: +53 -2 lines
Add kqueue support.

Revision 1.53.6.1: download - view: text, markup, annotated - select for diffs
Fri Sep 7 04:45:34 2001 UTC (23 years, 3 months ago) by thorpej
Branches: thorpej-devvp
Diff to: previous 1.53: preferred, colored; next MAIN 1.54: preferred, colored
Changes since revision 1.53: +14 -11 lines
Commit my "devvp" changes to the thorpej-devvp branch.  This
replaces the use of dev_t in most places with a struct vnode *.

This will form the basic infrastructure for real cloning device
support (besides being architecurally cleaner -- it'll be good
to get away from using numbers to represent objects).

Revision 1.28.2.3: download - view: text, markup, annotated - select for diffs
Sun Feb 11 19:16:29 2001 UTC (23 years, 10 months ago) by bouyer
Branches: thorpej_scsipi
Diff to: previous 1.28.2.2: preferred, colored; branchpoint 1.28: preferred, colored; next MAIN 1.29: preferred, colored
Changes since revision 1.28.2.2: +115 -151 lines
Sync with HEAD.

Revision 1.53: download - view: text, markup, annotated - select for diffs
Tue Jan 23 17:04:30 2001 UTC (23 years, 10 months ago) by augustss
Branches: MAIN
CVS tags: thorpej_scsipi_nbase, thorpej_scsipi_beforemerge, thorpej_scsipi_base, thorpej-devvp-base3, thorpej-devvp-base2, thorpej-devvp-base, pre-chs-ubcperf, post-chs-ubcperf
Branch point for: thorpej-mips-cache, thorpej-devvp, nathanw_sa, kqueue
Diff to: previous 1.52: preferred, colored
Changes since revision 1.52: +22 -9 lines
Ad function to remove a usb task.

Revision 1.52: download - view: text, markup, annotated - select for diffs
Sun Jan 21 19:00:29 2001 UTC (23 years, 10 months ago) by augustss
Branches: MAIN
Diff to: previous 1.51: preferred, colored
Changes since revision 1.51: +5 -0 lines
Ad a comment.

Revision 1.51: download - view: text, markup, annotated - select for diffs
Sun Jan 21 19:00:06 2001 UTC (23 years, 10 months ago) by augustss
Branches: MAIN
Diff to: previous 1.50: preferred, colored
Changes since revision 1.50: +57 -26 lines
Change the operation of the USB event thread.  Before it only performed
USB device discovery, now it can also perform (short) tasks for device
drivers that need a process context, but don't have one.
This is not pretty, but better than using busy-wait in an interrupt context.

Revision 1.50: download - view: text, markup, annotated - select for diffs
Sun Jan 21 16:55:11 2001 UTC (23 years, 10 months ago) by augustss
Branches: MAIN
Diff to: previous 1.49: preferred, colored
Changes since revision 1.49: +2 -126 lines
Remove `#ifdef FreeBSD'; they maintain their own version.

Revision 1.49: download - view: text, markup, annotated - select for diffs
Sun Jan 21 02:39:53 2001 UTC (23 years, 10 months ago) by augustss
Branches: MAIN
Diff to: previous 1.48: preferred, colored
Changes since revision 1.48: +41 -2 lines
Add code to use soft interrupt to handle USB interrupt processing.
Don't enable the code since it doesn't work with the kludgy Ethernet drivers.

Revision 1.28.2.2: download - view: text, markup, annotated - select for diffs
Wed Dec 13 15:50:16 2000 UTC (24 years ago) by bouyer
Branches: thorpej_scsipi
Diff to: previous 1.28.2.1: preferred, colored; branchpoint 1.28: preferred, colored
Changes since revision 1.28.2.1: +3 -3 lines
Sync with HEAD (for UBC fixes).

Revision 1.48: download - view: text, markup, annotated - select for diffs
Wed Dec 13 04:05:14 2000 UTC (24 years ago) by augustss
Branches: MAIN
Diff to: previous 1.47: preferred, colored
Changes since revision 1.47: +3 -3 lines
Don't try to access a device that is being disconnected when generating
the detach event.  Fixes (I hope) PR 11713 from itohy@netbsd.org (ITOH Yasufumi).

Revision 1.28.2.1: download - view: text, markup, annotated - select for diffs
Mon Nov 20 11:43:29 2000 UTC (24 years ago) by bouyer
Branches: thorpej_scsipi
Diff to: previous 1.28: preferred, colored
Changes since revision 1.28: +205 -122 lines
Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.

Revision 1.47: download - view: text, markup, annotated - select for diffs
Thu Aug 24 14:12:34 2000 UTC (24 years, 3 months ago) by augustss
Branches: MAIN
Diff to: previous 1.46: preferred, colored
Changes since revision 1.46: +2 -7 lines
Removed unnecessary variable declaration.

Revision 1.44.2.1: download - view: text, markup, annotated - select for diffs
Thu Jun 22 17:08:41 2000 UTC (24 years, 5 months ago) by minoura
Branches: minoura-xpg4dl
Diff to: previous 1.44: preferred, colored; next MAIN 1.45: preferred, colored
Changes since revision 1.44: +29 -64 lines
Sync w/ netbsd-1-5-base.

Revision 1.46: download - view: text, markup, annotated - select for diffs
Wed Jun 7 00:33:51 2000 UTC (24 years, 6 months ago) by thorpej
Branches: MAIN
CVS tags: netbsd-1-5-base, netbsd-1-5-RELEASE, netbsd-1-5-PATCH003, netbsd-1-5-PATCH002, netbsd-1-5-PATCH001, netbsd-1-5-BETA2, netbsd-1-5-BETA, netbsd-1-5-ALPHA2, netbsd-1-5
Diff to: previous 1.45: preferred, colored
Changes since revision 1.45: +6 -5 lines
Deal with the fact that tsleep() may be a macro.

Revision 1.45: download - view: text, markup, annotated - select for diffs
Thu Jun 1 14:29:01 2000 UTC (24 years, 6 months ago) by augustss
Branches: MAIN
Diff to: previous 1.44: preferred, colored
Changes since revision 1.44: +24 -60 lines
Bring the coding style into the 80s, i.e., get rid of __P and use
ANSI prototypes and declarations.

Revision 1.44: download - view: text, markup, annotated - select for diffs
Thu Apr 27 15:26:49 2000 UTC (24 years, 7 months ago) by augustss
Branches: MAIN
CVS tags: minoura-xpg4dl-base
Branch point for: minoura-xpg4dl
Diff to: previous 1.43: preferred, colored
Changes since revision 1.43: +2 -2 lines
Change my email address.

Revision 1.43: download - view: text, markup, annotated - select for diffs
Wed Mar 29 18:24:53 2000 UTC (24 years, 8 months ago) by augustss
Branches: MAIN
Diff to: previous 1.42: preferred, colored
Changes since revision 1.42: +3 -3 lines
Some OpenBSD portability fixes.

Revision 1.42: download - view: text, markup, annotated - select for diffs
Mon Mar 27 12:33:57 2000 UTC (24 years, 8 months ago) by augustss
Branches: MAIN
Diff to: previous 1.41: preferred, colored
Changes since revision 1.41: +13 -13 lines
Change (almost) all static to Static.  The symbol `Static' can then be defined
to `' or `static' depending on if you want to debug or not.

Revision 1.41: download - view: text, markup, annotated - select for diffs
Thu Mar 16 00:46:38 2000 UTC (24 years, 9 months ago) by augustss
Branches: MAIN
Diff to: previous 1.40: preferred, colored
Changes since revision 1.40: +2 -2 lines
Make the USB event queue longer.  Mine overflows before the (user-land)
event handler has started.  But then I have about 25 devices connected. :)

Revision 1.40: download - view: text, markup, annotated - select for diffs
Tue Mar 14 23:13:12 2000 UTC (24 years, 9 months ago) by augustss
Branches: MAIN
Diff to: previous 1.39: preferred, colored
Changes since revision 1.39: +4 -1 lines
Make sure the USB event thread discovers all devices first time it call
usb_discover().
It should now be possible to have the root NFS mounted over a USB Ethernet
adapter.

Revision 1.39: download - view: text, markup, annotated - select for diffs
Tue Feb 22 11:30:56 2000 UTC (24 years, 9 months ago) by augustss
Branches: MAIN
Diff to: previous 1.38: preferred, colored
Changes since revision 1.38: +7 -1 lines
Prepare a little for having USB interrupt processing done outside the hard
interrupt level (in a thread or a softintr).
No real soft processing done yet.

Revision 1.38: download - view: text, markup, annotated - select for diffs
Wed Feb 2 07:33:59 2000 UTC (24 years, 10 months ago) by augustss
Branches: MAIN
CVS tags: chs-ubc2-newbase
Diff to: previous 1.37: preferred, colored
Changes since revision 1.37: +45 -15 lines
Change the USB event mechanism to include more information about devices
and drivers.  Partly from FreeBSD.

Revision 1.37: download - view: text, markup, annotated - select for diffs
Mon Jan 24 18:35:51 2000 UTC (24 years, 10 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.36: preferred, colored
Changes since revision 1.36: +7 -1 lines
Use config_pending.

Revision 1.25.2.1: download - view: text, markup, annotated - select for diffs
Mon Dec 27 18:35:44 1999 UTC (24 years, 11 months ago) by wrstuden
Branches: wrstuden-devbsize
Diff to: previous 1.25: preferred, colored; next MAIN 1.26: preferred, colored
Changes since revision 1.25: +323 -79 lines
Pull up to last week's -current.

Revision 1.36: download - view: text, markup, annotated - select for diffs
Wed Dec 22 23:54:09 1999 UTC (24 years, 11 months ago) by augustss
Branches: MAIN
Diff to: previous 1.35: preferred, colored
Changes since revision 1.35: +2 -2 lines
Use the flags `locator' to govern if devices are detected early or
late during cold boot.

Revision 1.35: download - view: text, markup, annotated - select for diffs
Mon Dec 20 02:12:23 1999 UTC (24 years, 11 months ago) by augustss
Branches: MAIN
CVS tags: wrstuden-devbsize-base, wrstuden-devbsize-19991221
Diff to: previous 1.34: preferred, colored
Changes since revision 1.34: +8 -5 lines
Make sure tsleep() is not called during cold boot.

Revision 1.34: download - view: text, markup, annotated - select for diffs
Fri Nov 26 01:41:03 1999 UTC (25 years ago) by augustss
Branches: MAIN
Diff to: previous 1.33: preferred, colored
Changes since revision 1.33: +13 -4 lines
Make timeout device exploration optional in debug mode.

Revision 1.33: download - view: text, markup, annotated - select for diffs
Mon Nov 22 21:57:09 1999 UTC (25 years ago) by augustss
Branches: MAIN
Diff to: previous 1.32: preferred, colored
Changes since revision 1.32: +3 -3 lines
Don't used extern on uhcidebug and ohidebug variables.

Revision 1.32: download - view: text, markup, annotated - select for diffs
Sat Nov 20 01:15:25 1999 UTC (25 years ago) by augustss
Branches: MAIN
Diff to: previous 1.31: preferred, colored
Changes since revision 1.31: +6 -8 lines
Join two lines in the attach message.

Revision 1.31: download - view: text, markup, annotated - select for diffs
Sat Nov 20 00:57:09 1999 UTC (25 years ago) by augustss
Branches: MAIN
Diff to: previous 1.30: preferred, colored
Changes since revision 1.30: +15 -2 lines
Propagate the USB revision number to the usb driver.

Revision 1.30: download - view: text, markup, annotated - select for diffs
Thu Nov 18 23:32:30 1999 UTC (25 years, 1 month ago) by augustss
Branches: MAIN
Diff to: previous 1.29: preferred, colored
Changes since revision 1.29: +89 -34 lines
Cosmetic changes and some small improvements.  From FreeBSD and Nick Hibma.

Revision 1.28.4.1: download - view: text, markup, annotated - select for diffs
Mon Nov 15 00:41:38 1999 UTC (25 years, 1 month ago) by fvdl
Branches: fvdl-softdep
Diff to: previous 1.28: preferred, colored; next MAIN 1.29: preferred, colored
Changes since revision 1.28: +23 -23 lines
Sync with -current

Revision 1.29: download - view: text, markup, annotated - select for diffs
Fri Nov 12 00:34:58 1999 UTC (25 years, 1 month ago) by augustss
Branches: MAIN
CVS tags: fvdl-softdep-base
Diff to: previous 1.28: preferred, colored
Changes since revision 1.28: +23 -23 lines
A number of stylistic changes to increase readability (many suggested
by Nick Hibma):
	use NULL not 0
	declare all local definitions static
	rename s/usbd_request/usbd_xfer/ s/reqh/xfer/
	rename s/r/err/
	use implicit test for no err
	KNF

Revision 1.28: download - view: text, markup, annotated - select for diffs
Wed Oct 13 08:10:57 1999 UTC (25 years, 2 months ago) by augustss
Branches: MAIN
CVS tags: comdex-fall-1999-base, comdex-fall-1999
Branch point for: thorpej_scsipi, fvdl-softdep
Diff to: previous 1.27: preferred, colored
Changes since revision 1.27: +46 -12 lines
Merge in a large batch of changes from Nick Hibma <hibma@skylink.it> so
the USB stack compiles on FreeBSD again.

Revision 1.27: download - view: text, markup, annotated - select for diffs
Tue Oct 12 20:02:48 1999 UTC (25 years, 2 months ago) by augustss
Branches: MAIN
Diff to: previous 1.26: preferred, colored
Changes since revision 1.26: +8 -2 lines
Fix some bugs in USB controller detach code.

Revision 1.26: download - view: text, markup, annotated - select for diffs
Tue Oct 12 11:54:56 1999 UTC (25 years, 2 months ago) by augustss
Branches: MAIN
Diff to: previous 1.25: preferred, colored
Changes since revision 1.25: +165 -39 lines
Add an event mechanism so that a userland process can watch devices come
and go.

Revision 1.25: download - view: text, markup, annotated - select for diffs
Sat Sep 18 11:25:51 1999 UTC (25 years, 3 months ago) by augustss
Branches: MAIN
Branch point for: wrstuden-devbsize
Diff to: previous 1.24: preferred, colored
Changes since revision 1.24: +18 -25 lines
Make sure the HC deactivation is propagated.

Revision 1.24: download - view: text, markup, annotated - select for diffs
Wed Sep 15 21:10:11 1999 UTC (25 years, 3 months ago) by augustss
Branches: MAIN
Diff to: previous 1.23: preferred, colored
Changes since revision 1.23: +14 -7 lines
Move the code around a little and clearly mark how to delay attachment
(during cold boot) until the interrupts are on.

Revision 1.23: download - view: text, markup, annotated - select for diffs
Wed Sep 15 14:17:15 1999 UTC (25 years, 3 months ago) by augustss
Branches: MAIN
Diff to: previous 1.22: preferred, colored
Changes since revision 1.22: +8 -3 lines
Handle the use_polling flag with a lttle more care and only set it if
we are cold booting.

Revision 1.22: download - view: text, markup, annotated - select for diffs
Wed Sep 15 10:25:31 1999 UTC (25 years, 3 months ago) by augustss
Branches: MAIN
Diff to: previous 1.21: preferred, colored
Changes since revision 1.21: +71 -61 lines
Add preliminary (untested) code for detaching the USB host controller
(needed for CardBus based controllers).

Revision 1.21: download - view: text, markup, annotated - select for diffs
Mon Sep 13 21:33:25 1999 UTC (25 years, 3 months ago) by augustss
Branches: MAIN
Diff to: previous 1.20: preferred, colored
Changes since revision 1.20: +6 -1 lines
* Make sure an aborted pipe is marked as not running.
* Start queued request in the right order.
* Insert some more DIAGNOSTIC sanity checks.

Revision 1.20: download - view: text, markup, annotated - select for diffs
Mon Sep 13 19:18:17 1999 UTC (25 years, 3 months ago) by augustss
Branches: MAIN
Diff to: previous 1.19: preferred, colored
Changes since revision 1.19: +3 -1 lines
Rearrange the code a little so we can decide if we are in process
or interrupt context in a reliable way.  Mainly used for DIAGNOSTIC.

Revision 1.19: download - view: text, markup, annotated - select for diffs
Sun Sep 5 19:32:19 1999 UTC (25 years, 3 months ago) by augustss
Branches: MAIN
Diff to: previous 1.18: preferred, colored
Changes since revision 1.18: +5 -5 lines
Change the way the `struct device' base part of all driver softc are
declared and accessed to make it more portable.  Idea from Nick Hibma, FreeBSD.
No functional changes.

Revision 1.18: download - view: text, markup, annotated - select for diffs
Sat Aug 28 21:42:35 1999 UTC (25 years, 3 months ago) by augustss
Branches: MAIN
Diff to: previous 1.17: preferred, colored
Changes since revision 1.17: +3 -3 lines
Change some 'struct device' to 'bdevice'.  From FreeBSD.

Revision 1.17: download - view: text, markup, annotated - select for diffs
Tue Aug 17 16:06:21 1999 UTC (25 years, 4 months ago) by augustss
Branches: MAIN
Diff to: previous 1.16: preferred, colored
Changes since revision 1.16: +6 -6 lines
Make some small changes to make it compile on OpenBSD.

Revision 1.16: download - view: text, markup, annotated - select for diffs
Sat Aug 14 14:49:32 1999 UTC (25 years, 4 months ago) by augustss
Branches: MAIN
Diff to: previous 1.15: preferred, colored
Changes since revision 1.15: +3 -3 lines
Some changes from FreeBSD (no functional differences).

Revision 1.12.4.2: download - view: text, markup, annotated - select for diffs
Mon Aug 2 22:08:59 1999 UTC (25 years, 4 months ago) by thorpej
Branches: chs-ubc2
Diff to: previous 1.12.4.1: preferred, colored; branchpoint 1.12: preferred, colored; next MAIN 1.13: preferred, colored
Changes since revision 1.12.4.1: +3 -3 lines
Update from trunk.

Revision 1.15: download - view: text, markup, annotated - select for diffs
Mon Aug 2 19:36:48 1999 UTC (25 years, 4 months ago) by augustss
Branches: MAIN
Diff to: previous 1.14: preferred, colored
Changes since revision 1.14: +2 -2 lines
Test return values the right way.

Revision 1.14: download - view: text, markup, annotated - select for diffs
Tue Jul 6 21:44:12 1999 UTC (25 years, 5 months ago) by thorpej
Branches: MAIN
CVS tags: chs-ubc2-base
Diff to: previous 1.13: preferred, colored
Changes since revision 1.13: +3 -3 lines
Make the kthread API a bit more friendly to loadable kernel modules.

Revision 1.12.4.1: download - view: text, markup, annotated - select for diffs
Thu Jul 1 23:40:23 1999 UTC (25 years, 5 months ago) by thorpej
Branches: chs-ubc2
Diff to: previous 1.12: preferred, colored
Changes since revision 1.12: +78 -27 lines
Sync w/ -current.

Revision 1.13: download - view: text, markup, annotated - select for diffs
Wed Jun 30 06:44:23 1999 UTC (25 years, 5 months ago) by augustss
Branches: MAIN
Diff to: previous 1.12: preferred, colored
Changes since revision 1.12: +78 -27 lines
Totally redo the way device detach is done.  It now uses a kernel event
thread and the config detach method.
Squish a number of space leaks on detach.

Revision 1.12: download - view: text, markup, annotated - select for diffs
Sun Jan 10 19:13:16 1999 UTC (25 years, 11 months ago) by augustss
Branches: MAIN
CVS tags: netbsd-1-4-base, netbsd-1-4-RELEASE, netbsd-1-4-PATCH003, netbsd-1-4-PATCH002, netbsd-1-4-PATCH001, netbsd-1-4, kame_14_19990705, kame_14_19990628, kame_141_19991130, kame
Branch point for: chs-ubc2
Diff to: previous 1.11: preferred, colored
Changes since revision 1.11: +3 -1 lines
Some minor updates from FreeBSD.

Revision 1.11: download - view: text, markup, annotated - select for diffs
Fri Jan 8 11:58:25 1999 UTC (25 years, 11 months ago) by augustss
Branches: MAIN
Diff to: previous 1.10: preferred, colored
Changes since revision 1.10: +7 -108 lines
Various little fixes from the FreeBSD version.

Revision 1.10: download - view: text, markup, annotated - select for diffs
Sun Jan 3 01:00:56 1999 UTC (25 years, 11 months ago) by augustss
Branches: MAIN
Diff to: previous 1.9: preferred, colored
Changes since revision 1.9: +3 -2 lines
Add a length paarmeter to usbd_do_request_flags().

Revision 1.9: download - view: text, markup, annotated - select for diffs
Tue Dec 29 03:13:10 1998 UTC (25 years, 11 months ago) by augustss
Branches: MAIN
Diff to: previous 1.8: preferred, colored
Changes since revision 1.8: +6 -5 lines
Make it possible to specify the request flags when issuing a raw USB request.

Revision 1.8: download - view: text, markup, annotated - select for diffs
Mon Dec 28 02:20:28 1998 UTC (25 years, 11 months ago) by augustss
Branches: MAIN
Diff to: previous 1.7: preferred, colored
Changes since revision 1.7: +4 -3 lines
Fix typos.

Revision 1.7: download - view: text, markup, annotated - select for diffs
Sat Dec 26 12:53:03 1998 UTC (25 years, 11 months ago) by augustss
Branches: MAIN
Diff to: previous 1.6: preferred, colored
Changes since revision 1.6: +180 -38 lines
Merge changes to make the USB stack work with FreeBSD.  The original
diffs from Nick Hibma <n_hibma@freebsd.org>, but with substantial
changes from me.
XXX Not tested on FreeBSD yet.

Revision 1.6: download - view: text, markup, annotated - select for diffs
Wed Dec 9 00:18:11 1998 UTC (26 years ago) by augustss
Branches: MAIN
CVS tags: kenh-if-detach-base, kenh-if-detach
Diff to: previous 1.5: preferred, colored
Changes since revision 1.5: +2 -33 lines
Improvement to the ugen driver.
Better error checking.
Some code rearrengment.

Revision 1.5: download - view: text, markup, annotated - select for diffs
Wed Nov 25 22:32:05 1998 UTC (26 years ago) by augustss
Branches: MAIN
Diff to: previous 1.4: preferred, colored
Changes since revision 1.4: +4 -3 lines
Make the copyright header conform to the NetBSD template.

Revision 1.4: download - view: text, markup, annotated - select for diffs
Mon Sep 21 20:47:25 1998 UTC (26 years, 2 months ago) by augustss
Branches: MAIN
CVS tags: chs-ubc-base, chs-ubc
Diff to: previous 1.3: preferred, colored
Changes since revision 1.3: +4 -3 lines
Add missing call to usbd_init().

Revision 1.3: download - view: text, markup, annotated - select for diffs
Sat Aug 1 18:16:20 1998 UTC (26 years, 4 months ago) by augustss
Branches: MAIN
Diff to: previous 1.2: preferred, colored
Changes since revision 1.2: +3 -5 lines
Switch from a global flag to tell if the host controller should use
polling to a local one for each controller.

Revision 1.2: download - view: text, markup, annotated - select for diffs
Sat Jul 25 15:22:11 1998 UTC (26 years, 4 months ago) by augustss
Branches: MAIN
CVS tags: eeh-paddr_t-base, eeh-paddr_t
Diff to: previous 1.1: preferred, colored
Changes since revision 1.1: +5 -1 lines
Add an ioctl() to get host controller statistics.

Revision 1.1: download - view: text, markup, annotated - select for diffs
Sun Jul 12 19:52:00 1998 UTC (26 years, 5 months ago) by augustss
Branches: MAIN
Add USB support.  Supported so far:
* UHCI and OHCI host controllers on PCI
* Hubs
* HID devices withe special drivers for mouse and keyboard
* Printers

Diff request

This form allows you to request diffs between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.

Log view options

CVSweb <webmaster@jp.NetBSD.org>