augustss
ed274219d5
Fix race condition when unlinking xfers. Thanks to IWAMOTO Toshihiro
...
<iwamoto@sat.t.u-tokyo.ac.jp> for analyzing the problem and suggesting a fix.
Fixes PR 10662.
2000-08-13 18:20:14 +00:00
augustss
4f325f2674
Implement what in Intel-speech is known as "bandwidth reclamation".
...
It means that we continously poll USB devices that have a pending transfer
instead of polling just once every ms. This speeds up some transfers
at the expense of using more PCI bandwidth.
2000-08-13 16:18:09 +00:00
tv
2b3a50d3de
%b -> bitmask_snprintf()
...
Because this code is shared, add a macro for bitmask_snprintf() that
should expand to the equivalent snprintf() on non-NetBSD systems. This is
only used in ?HCI_DEBUG cases anyway.
2000-08-08 19:51:46 +00:00
augustss
a119131555
Be a little more explicit and careful about setting links in TDs and QHs.
2000-07-23 19:43:37 +00:00
augustss
c6ddc6009b
Make it compile with USB_DEBUG.
2000-06-01 15:51:26 +00:00
augustss
ed9486e158
Bring the coding style into the 80s, i.e., get rid of __P and use
...
ANSI prototypes and declarations.
2000-06-01 14:28:57 +00:00
augustss
382a7af237
Don't print anything when detecting resume.
2000-05-30 16:56:54 +00:00
augustss
e4217da6d0
As a safety, check that the controller is not suspended when we get
...
an interrupt.
2000-05-30 09:26:06 +00:00
jhawk
6513ba6e74
Make this compile with UHCI_DEBUG in the presence of
...
-Werror: uhci_dump is no longer static.
2000-05-28 22:02:05 +00:00
mycroft
d0d92c23d0
Use USBD_NORMAL_COMPLETION in the previous.
2000-05-03 18:21:36 +00:00
mycroft
ffe599486c
When emulating UHF_PORT_POWER for the internal hub, make sure to initialize
...
the status return value.
2000-05-03 18:14:49 +00:00
augustss
30c20f930f
Change my email address.
2000-04-27 15:26:44 +00:00
augustss
df70862e8c
Insert (very conservative!) bus_space_barrier() calls at all register accesses.
...
The bus_space(9) man page says you've gotta have them...
2000-04-25 14:28:13 +00:00
augustss
3f08804668
Pretend we know how to turn on port power (it's always on).
2000-04-21 15:40:01 +00:00
augustss
e1f94170e5
Generate a diagnistic dump on "Host Controller Halted".
2000-04-14 14:11:36 +00:00
augustss
9355847b78
Fix typos in comments.
2000-04-06 23:44:20 +00:00
augustss
1b57fb1495
Remove some unused prototypes.
2000-03-29 18:55:36 +00:00
augustss
a25e27e1eb
Some OpenBSD portability fixes.
2000-03-29 18:24:52 +00:00
augustss
61db1b8e46
*SIGH* Revert back to the old method of aborting xfers.
...
I had tested the new stuff for two months now, but as soon as I commited
it the problems started to appear. Murphy, no doubt...
2000-03-29 01:49:13 +00:00
augustss
f606c26834
Be more defensive in a DIAGNOSTIC test.
2000-03-28 17:07:04 +00:00
augustss
c2f90d0d43
Correct a debug message.
2000-03-28 10:53:59 +00:00
augustss
3316da3988
Another patch for xfer abort...
...
XXX The current xfer queueing and aborting semantics should really
XXX be changed. It cannot be implemented in a sane way on UHCI.
XXX One day when I have lots of time I'll redesign it...
2000-03-28 09:47:10 +00:00
augustss
568b4d8190
Be a little more careful when aborting.
...
Preallocate some TDs for large buffers.
2000-03-27 22:42:57 +00:00
augustss
fc72e72d7d
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.
2000-03-27 12:33:53 +00:00
augustss
2341e5679e
Don't mess with QH in bulk abort for the moment.
2000-03-27 09:41:36 +00:00
augustss
9e5b3b729c
Remove some debug nonsense.
2000-03-27 08:01:09 +00:00
augustss
9ffe849791
Make it compile without DIAGNOSTIC.
2000-03-27 07:39:48 +00:00
augustss
a52e96b1eb
Fix typo. Found by Aaron Campbell <aaron@cs.dal.ca>.
2000-03-26 21:42:54 +00:00
augustss
3fded57690
Rename and move around callout handles to make it more sane.
...
Add some DIAGNOSTIC.
Fix buglet in isoc abort on UHCI.
2000-03-25 18:02:32 +00:00
augustss
9893633d57
Improve uhci_dump_ii().
2000-03-25 07:23:12 +00:00
augustss
df370f0e48
More DIAGNOSTIC.
...
Initialize a callout handle I forgot.
2000-03-25 07:13:05 +00:00
augustss
cefdf1aee3
Add more DIAGNOSTIC when aborting isoc.
2000-03-25 00:11:21 +00:00
augustss
df8025fec8
Two major changes:
...
Make each xfer have its own intr_info. This is necessary if we want
to queue multiple xfers on an endpoint. This should get rid of the
(mostly harmless) DIAGNOSTICs about intr_infos (not) being done.
Change (again!) how xfers are aborted. Aborting a TD is a nightmare
on the braindead UHCI controller. (Unless you stop the HC, thereby
losing isoc traffic.) Hopefully I got it right this time.
2000-03-24 22:57:58 +00:00
augustss
0069eba19b
Some cleanup and renaming of the callouts used in USB drivers.
2000-03-24 22:03:28 +00:00
thorpej
6a6358ed5c
Shake out some bugs from the callout changes.
2000-03-23 18:59:10 +00:00
thorpej
fc96443d15
New callout mechanism with two major improvements over the old
...
timeout()/untimeout() API:
- Clients supply callout handle storage, thus eliminating problems of
resource allocation.
- Insertion and removal of callouts is constant time, important as
this facility is used quite a lot in the kernel.
The old timeout()/untimeout() API has been removed from the kernel.
2000-03-23 07:01:25 +00:00
tsutsui
6e0e3d609f
Replace LE() macro with le32toh()/le32toh().
2000-03-16 12:40:51 +00:00
augustss
7d05674ba7
Distinguish between device and interface classes.
...
(I finally found a document that said that they were different.)
2000-02-29 21:37:00 +00:00
augustss
009856b631
Save and restore a couple ofregisters in the power hook in case BIOS doesn't.
2000-02-22 16:03:42 +00:00
augustss
9056664327
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.
2000-02-22 11:30:54 +00:00
augustss
30f0efb4f2
Add uhci_root_ctrl_done() method.
2000-01-28 00:44:27 +00:00
augustss
4e9e8e52f4
Change the test to check if transfers are done. The old test was broken
...
and sometimes reported transfers as done prematurely.
This fix seems to stabilize the Ethernet drivers.
2000-01-28 00:15:54 +00:00
augustss
57d2439d74
Try to avoid accessing the HC if it is dead. Suggested by mycroft.
2000-01-26 10:04:38 +00:00
augustss
b9a4fe55b5
Switch the HSE and HCPE messages. Pointed out my mycroft.
2000-01-25 17:31:05 +00:00
augustss
55c5d10627
Fix typos.
...
Never, never, never commit without compiling first.
2000-01-19 01:16:38 +00:00
augustss
fe18229923
Obey the interrupt interval here also.
2000-01-19 01:04:26 +00:00
augustss
a97cf3f9ce
Fix a buglet in framelist locking.
2000-01-19 01:02:11 +00:00
augustss
21863071b1
Move the zeroing of the xfer to the individual methods.
2000-01-18 20:23:42 +00:00
augustss
f14036861f
Turn xfer allocation into a method in the HC driver. The reason is that
...
an HC driver may want to subclass the xfer to have additional private fields.
2000-01-18 20:11:00 +00:00
augustss
ed1996fc7d
Be a little more talkative on with UHCIDEBUG on errors.
2000-01-17 01:01:07 +00:00