| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
Some hardware easily comes out of sync with regard to whether the current or
the next control transfer should be stalled, if a stall command is always
issued before receiving the SETUP packet. After this patch the stall command
will only be issued when a transfer should actually be stalled.
Submitted by: Hans Petter Selasky
|
|
|
|
| |
Submitted by: Hans Petter Selasky
|
| |
|
|
|
|
|
|
| |
- change variable types to use the enum
Submitted by: Hans Petter Selasky [1]
|
|
|
|
| |
Submitted by: Hans Petter Selasky
|
|
|
|
|
|
| |
- Enable the controller and wait for the PLL to start
Submitted by: Hans Petter Selasky
|
|
|
|
| |
Submitted by: Hans Petter Selasky
|
|
|
|
| |
Submitted by: Hans Petter Selasky
|
|
|
|
|
|
|
| |
schedule, in case the hardware clears the frame list base address.
Submitted by: Hans Petter Selasky
Reported by: Chao Shin
|
|
|
|
|
|
|
|
| |
to be set via two variables (peer_suspended and self_suspended) and can not be
merged into one.
Submitted by: Hans Petter Selasky
Pointy hat: me
|
|
|
|
|
|
|
|
|
| |
helps
to avoid touching the device when it is not going to respond and would otherwise
timeout.
Implement the suspend tracking as a udev state too.
|
|
|
|
|
|
|
| |
Change the roothub exec functions to take the usb request and data pointers
directly rather than placing them on the parent bus struct.
Submitted by: Hans Petter Selasky
|
|
|
|
|
|
|
| |
Need to check Read/Write allowed before writing any data for non-control
transfers.
Submitted by: Hans Petter Selasky
|
|
|
|
|
|
| |
Resolve possible device side mode deadlock by creating another thread.
Submitted by: Hans Petter Selasky
|
|
|
|
|
|
| |
Remove unused field.
Submitted by: Hans Petter Selasky
|
|
|
|
|
|
|
|
|
| |
Use direct reference to parent high-speed HUB instead of indirect, due to
pointer clearing race at detach of parent USB HUB.
Reported by: kientzle
Submitted by: Hans Petter Selasky
PR: usb/133545
|
|
|
|
|
|
|
| |
The geom and CAM changes for root_hold are the wrong solution for USB design
quirks.
Requested by: scottl
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Refactor how we interface with the root HUB. This is achieved by making a
direct call from usb2_do_request to the host controller for root hub requests,
this call will perform the controller specific register read/writes and return
the error code.
This cuts out a lot of code in the host controller files and saves one thread
per USB bus.
Submitted by: Hans Petter Selasky
|
|
|
|
|
|
|
| |
Some cancelable flags are always true. Substitute these away. These cancelable
flags were mostly useful with the root HUB which is now handled differently.
Submitted by: Hans Petter Selasky
|
|
|
|
|
|
| |
Minor code factorisation in atmegadci.c
Submitted by: Hans Petter Selasky
|
|
|
|
|
|
|
| |
Refactor how we interface with the root HUB. This cuts around 1200 lines of
code totally and saves one thread per USB bus.
Submitted by: Hans Petter Selasky
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- make usb2_power_mask_t 16-bit
- remove "usb2_config_sub" structure from "usb2_config". To compensate for this
"usb2_config" has a new field called "usb_mode" which select for which mode
the current xfer entry is active. Options are: a) Device mode only b) Host
mode only (default-by-zero) c) Both modes. This change was scripted using
the following sed script: "s/\.mh\././g".
- the standard packet size table in "usb_transfer.c" is now a function, hence
the code for the function uses less memory than the table itself.
Submitted by: Hans Petter Selasky
|
|
|
|
|
|
|
|
| |
- memory usage reduction by only allocating the required USB pipes and USB
interfaces.
- cleanup some USB parsing functions to be more flexible.
Submitted by: Hans Petter Selasky
|
|
|
|
|
|
| |
Get rid of the last CALLOUT_RETURNUNLOCKED reference.
Submitted by: Hans Petter Selasky
|
|
|
|
|
|
| |
Fix more corner cases around reception of SETUP packets.
Submitted by: Hans Petter Selasky
|
|
|
|
|
|
| |
Fix a corner case around stalling SETUP packets in device side mode.
Submitted by: Hans Petter Selasky
|
|
|
|
|
|
| |
Fix interrupt register setting on the atmegadci controller.
Submitted by: Hans Petter Selasky
|
|
|
|
| |
in situations where sleeping isnt allowed.
|
|
|
|
|
|
| |
packet, this fixes LS/FS devices on the Gateworks 2348 XScale board.
Reviewed by: HPS
|
|
|
|
|
|
|
|
| |
Workaround for buggy USB hardware not handling new SETUP packet before STATUS
stage is complete, this allows xfers to endpoint0 to return a short frame.
Submitted by: Hans Petter Selasky
Reported by: me
|
|
|
|
|
|
|
| |
- start using the new USB typedefs in the USB core
- Remove usage of USB_ADD_BYTES()
Submitted by: Hans Petter Selasky
|
|
|
|
|
|
| |
Add ifdefs for making parts of usb conditional.
Submitted by: Hans Petter Selasky
|
|
|
|
|
|
|
|
|
|
| |
- Move tunable defines into usb_core.h and dependancy towards usb_defs.h
- Leave hardcoded defines in "usb_defs.h".
- Allow overriding all tunable defines.
- Add more customisable typedefs.
- Correct maximum device number.
Submitted by: Hans Petter Selasky
|
|
|
|
|
|
| |
Sync support for ATMEGA DCI parts.
Submitted by: Hans Petter Selasky
|
|
|
|
| |
Submitted by: Hans Petter Selasky
|
|
|
|
| |
Submitted by: Hans Petter Selasky
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
o add Transaction Translator support (still missing ISOC xfers)
o add EHCI_SCFLG_BIGEMMIO flag to force big-endian byte-select to be
set in USBMODE
o split reset work into new public routine ehci_reset so bus shim drivers
can force big-endian byte-select before ehci_init
o enable TT and big-endian MMIO
o force a reset before ehci_init to get byte-select setup
Also go back to using USB_EHCI_BIG_ENDIAN_DESC at compile time to enable the
byteswapping and reduce diffs to the original commits.
This fixes the new USB stack on the Cambria board.
|
|
|
|
| |
Reviewed by: hps
|
|
|
|
|
|
|
| |
Workaround a EHCI performance problem by issuing a doorbell after queueing a
bulk xfer.
Submitted by: Hans Petter Selasky
|
|
|
|
| |
Approved by: thompsa
|
|
|
|
|
|
|
| |
Clean up old way of polling the USB hardware. The existing polling support was
a bit hackish.
Submitted by: Hans Petter Selasky
|
|
|