- 08 Oct, 2017 1 commit
-
-
Robert Sprowson authored
The file's there, just looking somewhere else. Retagged as XHCIDriver-0_23.
-
- 07 Oct, 2017 1 commit
-
-
ROOL authored
Detail: Duplicate type declaration for device_t, now in usb_port.h. Admin: Requires USBDriver-1_23 for the corresponding usb_port.h. Version 0.23. Tagged as 'XHCIDriver-0_23'
-
- 19 Sep, 2017 1 commit
-
-
ROOL authored
Detail: Since the 'c' file is a local copy, host the 'h' file too. Admin: Submission for USB bounty. Retagged. Version 0.22. Not tagged
-
- 19 Aug, 2017 1 commit
-
-
ROOL authored
Detail: Use those in C:USB rather than reaching inside the adjacent USBDriver. Admin: Requires USBDriver-1_21. Version 0.22. Tagged as 'XHCIDriver-0_22'
-
- 15 Jul, 2017 1 commit
-
-
ROOL authored
Admin: Reach into USBDriver rather than NetBSD. Version 0.21. Tagged as 'XHCIDriver-0_21'
-
- 13 Jul, 2017 2 commits
-
-
Robert Sprowson authored
xhci.c: From NetBSD 1.67. Version 0.20. Tagged as 'XHCIDriver-0_20'
-
Robert Sprowson authored
xhci.c: Merge changes from NetBSD 1.28.2.51; previously timeouts were only applied to control transfers and were cancelled post transfer complete, now all transfer types are covered and are called prior to usbd_transfer_complete() being called. glue.c: More faithfully implement callout_reset(). The spec for this function is supposed to extend a callout for ones that are already running, but since the callx library ultimately uses OS_CallAfter what actually happened was two callafters were scheduled. This caused a NULL pointer exception if USBDriver cancelled a transaction before the timeout completed (because the cancel caused a 2nd OS_CallAfter to be scheduled, but the cancel caused usbd_transfer_complete() to consume then free the xfer, then the 2nd OS_CallAfter fired and passed a free'd list to usbd_transfer_complete()). Also removed redundant headers usb_mem.h and usb_quirks.h. Tested over 3 weeks on a Titanium (waiting for the right sequence of events to cause 2 OS_CallAfters to trigger took several days each!). Version 0.19. Tagged as 'XHCIDriver-0_19'
-
- 30 Jun, 2017 1 commit
-
-
Robert Sprowson authored
Implement the 'todo' note to use RTSupport instead of a callback. This means if the OS is stuck somewhere in SVC mode and no callbacks are happening the pipe is aborted, plus the state is held in the xfer struct rather than a single shared variable. Version 0.18. Tagged as 'XHCIDriver-0_18'
-
- 18 Dec, 2016 2 commits
-
-
Robert Sprowson authored
The addition of min() macro to usb_port.h in NetBSD-1_18 causes the same name function here to no longer compile. Version 0.17. Tagged as 'XHCIDriver-0_17'
-
Robert Sprowson authored
The addition of min() macro to usb_port.h in NetBSD-1_18 causes the same name function here to no longer compile. Version 0.17. Tagged as 'XHCIDriver-0_17'
-
- 10 Dec, 2016 1 commit
-
-
ROOL authored
Admin: Requires NetBSD-1_17
-
- 06 Jun, 2016 2 commits
-
-
Robert Sprowson authored
Performing an open/out/close set of operations leaves the TRBs from the output step in the transfer ring for that endpoint. Subsequently re-opening the same endpoint a second time would start appending new TRBs on the end of the ring, but as the hardware's dequeue pointer gets reset to 0 all the old TRBs (with stale pointers to data) would get repeated. Now, when an endpoint is configured (and hence the hardware's dequeue pointer set) the shadow copy in RAM is also cleared. Since this procedure is also needed during slot initialisation and stall clear, make it a function too. Fixes problem with 1st print job from Printer Manager being good, and the 2nd print job being bad due to bits of the previous page being jumbled up in the data stream. Also fixes problem with TWAIN scanner failing to complete a scan, for the same reason. Endpoints that are only ever opened, such as mass storage devices, were not affected as the hardware's dequeue pointer always matched the software's copy. From NetBSD revision 1.56, ref http://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=51202. Version 0.16. Tagged as 'XHCIDriver-0_16'
-
Robert Sprowson authored
Tell the controller when a pipe is closed, so it doesn't need to schedule time to look at endpoints we're not using any more. Also guards against packets arriving which USBDriver isn't expecting to receive. From NetBSD revision 1.28.2.19. Version 0.15. Tagged as 'XHCIDriver-0_15'
-
- 03 Jun, 2016 2 commits
-
-
Robert Sprowson authored
For an N entry ring, the 0th TRB (which is written last, to avoid some controller quirks) is written to RAM but the N+1th is what gets synced - should sync the 0th. From NetBSD revision 1.47, ref http://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=51199 Version 0.14. Tagged as 'XHCIDriver-0_14'
-
Robert Sprowson authored
xhci.c: If a device babbles (sends more bytes than were requested of it) make sure this completion event code is caught, otherwise USB_TransferComplete is called with potentially bad data. From NetBSD revision 1.28.2.19. glue.c: OS_Memory page numbers are just numbers, not pointers. Version 0.13. Tagged as 'XHCIDriver-0_13'
-
- 27 Mar, 2016 1 commit
-
-
Jeffrey Lee authored
Detail: c/glue - Fix vtophys requesting that pages are made uncacheable. They're already uncacheable (all allocated via PCI_RAMAlloc), and once we're done with the pages we never do a 'make cacheable' call to balance it out Admin: Builds, untested Version 0.12. Tagged as 'XHCIDriver-0_12'
-
- 25 Mar, 2016 1 commit
-
-
Robert Sprowson authored
Since SCSISoftUSB relies on devices stalling (rather than doing a test unit ready), stalls occur when a card reader with no card present is queried. The port of umass ends up trying to add something to the control transfer queue, but enters with interrupts disabled, so the clear endpoint stall just times out having not done anything (other callers have interrupts enabled so do clear the stall). Apply change of policy that NetBSD made in revision 1.28.2.19 where the clear endpoint stall is cleared asynchronously rather than being left around until the next transfer is queued. Since we don't have threads on RISC OS, and callbacks wouldn't happen either, we schedule a one shot RTSupport to trigger the clear at CBAI level. Apply change from NetBSD 1.28.2.37 to remove the old clear code too. Version 0.11. Tagged as 'XHCIDriver-0_11'
-
- 06 Dec, 2015 1 commit
-
-
Robert Sprowson authored
During the submission lag NetBSD-1_08 has API version 0.80 but this HC was only declaring 0.76. Version 0.10. Tagged as 'XHCIDriver-0_10'
-
- 18 Nov, 2015 1 commit
-
-
Robert Sprowson authored
Copy of the change in NetBSD-1_09. Version 0.09. Tagged as 'XHCIDriver-0_09'
-
- 15 Nov, 2015 2 commits