augustss
e8db629494
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.
2001-01-21 02:39:52 +00:00
augustss
f7dc96fe4c
Change some splusb() to splhardusb().
2001-01-20 23:36:02 +00:00
augustss
79f0bd6e1f
Update many URLs.
2000-12-29 01:24:55 +00:00
tsutsui
3bd1aace1b
Add missed le32toh() in uhci_device_isoc_abort().
2000-12-18 15:55:30 +00:00
augustss
d1c538bc2f
Don't repeat 'host controller halted' message. From OpenBSD.
2000-12-16 16:09:24 +00:00
takemura
3c9d9276dc
Add new powerhook argument values, PWR_SOFTSUSPEND, PWR_SOFTSTANDBY and
...
PWR_SOFTRESUME. Apm calls powerhook with the values in normal interrupt
priority level while others are protected with splhigh().
2000-11-26 11:08:57 +00:00
soren
efadefb53f
In uhci_intr(), only warn about power state confusion if the
...
interrupt was actually for us.
2000-11-22 05:50:59 +00:00
augustss
6836c0bd28
Update frlengths after a isoc transfer.
...
Suggested by Yuri <yuri@tsoft.com>
2000-11-10 14:11:49 +00:00
augustss
6417d32d9d
Avoid "bandwidth reclamation" for control transfers. The kue device chokes
...
on it.
2000-09-23 21:00:10 +00:00
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