usbd: fix ClearFeature pipe-id remap and IoReq byte count (#908) - #909
Closed
horizonends wants to merge 1 commit into
Closed
usbd: fix ClearFeature pipe-id remap and IoReq byte count (#908)#909horizonends wants to merge 1 commit into
horizonends wants to merge 1 commit into
Conversation
After the USBD rewrite, attachIoReqToEndpoint no longer zeroed m_transferedBytes (FreeUsbd did). Also, sceUsbdClearEndpointFeature is commonly called with a pipe id (usbmass_bd), but wIndex must be bEndpointAddress — remap and reset host toggle on HALT clear. Candidate fix for Crash Bandicoot WoC USB slowdown in OPL (ps2dev#908).
Member
|
@uyjulian can you review this PR? |
Author
Hardware resultThis candidate does not fix #908 — it makes things worse. On both OPL and wOPL test ELFs built with this Closing this PR. #908 remains open; next candidates will avoid remap/clear-Halted-at-submit in |
Author
|
Closing: hardware shows this change breaks USB/MC I/O entirely rather than fixing WoC. |
Author
|
Clarifying hardware results for this closed PR:
Sorry for the earlier overstated “both lost USB+MC” summary. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
m_transferedBytes = 0inattachIoReqToEndpoint()(present in pre-rewrite FreeUsbd, missing afterb1f7ff96)sceUsbdClearEndpointFeatureindex from pipe id →bEndpointAddress(usbmass_bd passes pipe ids; wire protocol needs ep address +USB_DIR_IN), and clear host Halted/ToggleCarryCandidate fix for #908 (WoC over USB in OPL: multi-minute load → black screen).
Test plan
usbd_mini+ stock modernusbmass_bd_mini— WoC USB load/playb1f7ff96pin (known good)Test ELF prepared locally as
OPNPS2LD-v1.2.0-Beta-2245-sdk908.ELF.