Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
e042737e9b
# add route/port-based device context lookup and restricted context creation to the default control endpoint prepare hook so contexts are prepared once per attach and reused for later transfers. # update endpoint preparation to error when expected contexts are missing and centralised endpoint teardown through shared helpers used by destroy-endpoint and controller paths. # streamline port reset/disable handling to disable slots and free device resources exactly once while tracking the new route string in device contexts.
33aaff43e5
# display usb3 port info during probing. # correct a typo in pciusbXHCIDevice # clean up some xhci debug related behaviour. # use the default NSDeviceQueryResult definition. # make sure poseidon.library v5 is available for xHCI use. # add prepareEndpoint/destroyEndpoint handlers for the xhci codepath that allocate/configure endpoint rings once and tear them down when Poseidon calls the hook. # advertise the handlers from cmdQueryDevice # update async/periodic scheduling code to assume endpoints are pre-created, removing per-transfer calls and reusing prepared ring via stored endpoint context. # adjust xhciFinishRequest to stop clearing and freeing endpoint rings on every completion; only release per-transfer bookkeeping there, leaving teardown to the destroy hook.
6e3aec203f
Add dedicated helper routines to fetch and parse BOS descriptors.
ab6f56eb75
xHCI requires more work done on the host to bring up endpoints, which is excessive during actual transfers (especially isochronous/periodic) - provide callbacks to alleviate this by allowing the hardware driver to perform necessary work outside of the transfer calls themselves. # add UHA_PrepareEndpoint/UHA_DestroyEndpoint tags to allow hardware drivers to expose callbacks to prepare/destroy hardware endpoints. # add support functions to call the hardware driver callbacks to prepare/destroy endpoints during pipe creation/destruction. # fix psdAllocVec/psdFreeVec to ensure properly aligned pointers are returned for the target platform.
5f93f4e17d
use CPUTOPCI for the endpoint allocations.
c44799c7f6
# Calculate interrupt transfer length from Transfer Event residuals, preserving delivered hub status bytes and only falling back to the requested size when no completion length was recorded for periodic transfers. # Stop endpoints before issuing CLEAR_FEATURE(ENDPOINT_HALT) resets to avoid lockups when recovery is attempted on running endpoints. # Add a bounded timeout to synchronous xHCI command submissions so failed commands no longer hang the driver.
4ffe592a82
# Add PTD allocation/cleanup logic and sanity checks for xHCI realtime isochronous handlers, including failure recovery. # Prepare buffer request tracking and route isochronous requests through the periodic scheduler with proper teardown handling for bounce buffers.
57770dea23
make sure and use the bus address when programming the controller. adjust TRB setup so it is spec compliant. add additional debug to try and diagnose failures.
e4a3af8ec7
# adjust/tidy debug headers. poseidon.library # add a DumpPipe helper to display debug info about a pipe. # correct BOS parsing. # add helpers for USB2/3 pipe settings. pGetRootPort, pBuildRouteString, and pGetTTInfo. use them in psdAllocPipe to populate details passed to the hardware. pciusb.device # rework device ctx & slot allocation code to support devices downstream of hubs connected to the controller. using helper functions. # adjust command submit handling to fix issues. # correct SET_ADDRESS/CLEAR_FEATURE(ENDPOINT_HALT) handling.
9cf0b83fda
fix build when XHCI debug is not enabled.
2859822656
# use per-controller debug, so that it can be enabled for only the chipset being debugged. # use a helper to init the xhci rings.
a9576b2754
move common/public definitions to the correct headers.
3a41063b2a
# Add xHCI slot and endpoint context macros for route strings, transaction translators, and bandwidth tuning. # Update xhciInitEP to consume IO request data for route strings, hub/TT information, and SuperSpeed companion details, setting slot and endpoint contexts accordingly for USB 2/3 endpoints. # Route async and periodic scheduling paths through xhciInitEP, removing duplicated slot configuration logic while passing full IO context to endpoint setup.
e76bf57320
fix formatting for consistency and readability. convert cr+lf -> lf
1bf0da919d
Add hubss.class to Kickstart configuration
cf57b3f065
# Add an EHCI scatter-gather helper that programs TD buffer pointers per physical page and clears unused entries to avoid stale mappings. # Update control, interrupt, and bulk TD construction to use the scatter-gather helper for reloads and new transfers, enabling proper handling of non-contiguous buffers.
7abe0767ff
only include the SSHUB support if PCIUSB_ENABLEXHCI is defined.