Age | Commit message (Collapse) | Author |
|
From NetBSD r1.104
|
|
a page offset.
From Dan Ellis via NetBSD rev 1.103
|
|
transfer when necessary.
From Dan Ellis via NetBSD rev 1.102
|
|
From augustss NetBSD
ok dlg@
|
|
userland-visible sys/select.h. Consistent with what Net and Free do.
OK deraadt@, tested with full ports build by naddy@.
|
|
|
|
initialization is finished.
From augustss NetBSD
ok dlg@ pascoe@
|
|
incorrectly attach to the companion controller.
Patch from Sebastiaan Indesteege on tech@
ok dlg@
|
|
controllers. remove the insane amount of support code needed just for the
printing of the companion controllers while here.
zap it deraadt@ sure pascoe@
|
|
devices. usb probe/attach now happens before root is mounted so there is no
requirement to do anything special anymore.
|
|
should not detach and reattach when you resume now.
|
|
Supports bulk, control and interrupt pipes, letting USB1 keyboards and most
network interfaces work when connected to a USB2 hub.
ok dlg@
|
|
downstream interupt heads have an even temporal distribution.
ok dlg@
|
|
XActErr is not the only qH warning bit that "sticks" during a transaction.
ok dlg@
|
|
ok pascoe@
|
|
zero. The host controller should, in theory, never follow this pointer, but
it is a minor spec violation.
ok dlg@
|
|
- always initialise the pipe multiplier to a valid value
- do not unchain the the interrupt QHs immediately after initialisation
ok dlg@
|
|
transaction completed successfully on retry.
ok dlg@
|
|
completion before they have performed writeback from the overlay qTD.
This condition would exhibit itself as a umass stall that never recovers.
ok dlg@
|
|
ok dlg@
|
|
ok dlg@
|
|
ok dlg@
|
|
ok dlg@
|
|
log message:
Attempt to follow the correct procedure for synchronising with the
system BIOS to disable legacy device emulation as per the "EHCI
Extended Capability: Pre-OS to OS Handoff Synchronisation" section
of the EHCI spec. BIOSes that implement legacy emulation using SMIs
are supposed to disable the emulation when this procedure is performed.
tested on various archs by jsg@ and me
ok pascoe@, looks sane jsg@
|
|
Only delay interrupt my 2 miucroframes instead of 8. This improves
Ethernet performance.
|
|
|
|
like us, so get rid of the ifdefs.
|
|
hcpriv is not actually used here. Remove references to it.
|
|
Follow the spec more closely when updating the overlay qTD in the QH.
Preserve some bits in the overlay qTD.
|
|
No need to generate an interrupt at the data part of a control transfer,
it's generated by the status transfer.
|
|
Make sure to update the data toggle on short transfers.
This makes my Ethernet adapter much happier.
|
|
|
|
with usb2 hardware.
|
|
while here define EHCI_DEBUG when USB_DEBUG is defined
ok pvalchev@ deraadt@
|
|
|
|
function names in messages didnt always match the actual name of the function.
endian fix when dumping a qtd chain so it terminates correctly on big endian
archs.
dont blame uhci for problems ehci has.
|
|
|
|
|
|
this is netbsds fix for the endian problems they had with the data toggle
change. do the swap when the var is assigned to the qtd, rather than swap
everything that is assigned to the var and just assign the var. instead of 4
or so htole32s we now do 1.
from netbsd, ehci.c 1.67 (i made a mistake, the last patch i gave you was
from 1.68) log message:
Fix a byte order error.
|
|
Adjust some silliness that was causing us to do extra work for "frame list
rollover" interrupts, which we pretty much ignore.
|
|
|
|
|
|
|
|
|
|
Fix an error in a debug printf().
|
|
related to working with the data toggle, but also includes some endian
fixes. The major changes in the netbsd code were in revisions 1.55 and
1.64. their log messages are:
1.55: Set the data toggle correctly, and use EHCI_QTD_DTC. This fixes
problems with my ALi-based drive enclosure (it works now, rather than
failing to attach). Also seems to work with a GL811-based enclosure and
an ASUS enclosure with a CD-RW, on both Intel and NEC controllers.
Note: The ALi enclosure is currently very SLOW, due to some issue with
taking too long to notice that the QTD is complete. This requires more
investigation.
1.64: Further cleanup of toggle handling. Now that we use EHCI_QH_DTC,
we don't need to fiddle with the TOGGLE bit in the overlay descriptor,
so minimize how much we fuss with it.
|
|
printfs that are more related to the data toggle. log message:
Fix a stupid bug in ehci_check_intr() that caused use to try to complete
a transaction that was still running. Now ehci can handle multiple devices
being active at once.
|
|
printfs that crept in. log message:
Failure to properly mask off UE_DIR_IN from the endpoint address was
causing OHCI_ED_FORMAT_ISO and EHCI_QH_HRECL to get set spuriously,
causing rather interesting lossage.
|
|
EHCI_HCS_P_INDICATOR and EHCI_QG_MPLMASK to EHCI_QH_MPLMASK);
from netbsd; via, loki@animata.net
|
|
tested by nordin@ and david gwynne
|