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
augustss
2b8a0e9b1c
Remove some debug code that was commited by mistake.
2000-01-16 13:14:43 +00:00
augustss
537c04e5ee
Add a flag, USBD_FORCE_SHORT_XFER, to transfers. Using this flag will
...
force the last packet of a transfer to be smaller than the maximum
packet size. The only time this matters is if the transfer size is
a multiple of the maximum packet size, in which case a 0 length packet
is sent last.
Some weird devices require this behaviour to determine the end of
a transfer.
2000-01-16 13:12:05 +00:00
augustss
1a080201cc
Add shutdown hooks to ensure that the host controller is halted when
...
a reboot occurs.
2000-01-16 10:27:51 +00:00
augustss
6e2f22c70f
Turn on the MAXP bit in the controller to allow 64 byte packets at
...
the end of a frame.
1999-12-24 13:56:35 +00:00
augustss
8111aaeef9
Cosmetics and a couple of diagnostic messages.
1999-12-06 21:06:59 +00:00
augustss
b15fcce56c
Use vertical nscheduling for bulk traffic. It improves bulk thruput a lot.
...
From FreeBSD and Nick Hibma.
1999-12-01 00:42:05 +00:00
augustss
881d3f4735
A little cosmetic.
1999-11-23 20:36:10 +00:00
augustss
3386c68b46
Cosmetic changes and some small improvements. From FreeBSD and Nick Hibma.
1999-11-18 23:32:25 +00:00
augustss
cdaec29859
A few more purely stylistic changes that I missed in the last round.
1999-11-17 23:00:49 +00:00
augustss
ffb29861c2
Add a few more diagnostics.
1999-11-16 22:19:03 +00:00
augustss
5f8274b5a6
Get transfer status right on short transfers. From FreeBSD, Nick Hibma.
1999-11-13 23:58:01 +00:00
augustss
0d2fabdf26
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
1999-11-12 00:34:57 +00:00
augustss
a28e3fec43
Fix PR8666, to verbose diagnostics.
1999-10-23 00:21:01 +00:00
augustss
db3b140df8
Handle the (weird) case when the power hook is called with a resume
...
without a prior suspend.
1999-10-17 15:31:00 +00:00
augustss
d8e5f3ab24
Add a DIAGNOSTIC to check that the polling flag is set when resuming.
1999-10-16 15:35:18 +00:00
augustss
03a522d3c1
Merge in a large batch of changes from Nick Hibma <hibma@skylink.it> so
...
the USB stack compiles on FreeBSD again.
1999-10-13 08:10:55 +00:00
augustss
11403b6ec1
Fix some bugs in USB controller detach code.
1999-10-12 20:02:47 +00:00
augustss
b14b78dfc9
Deallocate resources (bus space and interrupts) when detaching from
...
the bus.
1999-10-12 11:21:24 +00:00