Skip to content

Fix the USB legacy control/status offset - #179

Closed
ArthurHeymans wants to merge 2 commits into
rust-osdev:mainfrom
ArthurHeymans:fix-usb-legacy-offset
Closed

Fix the USB legacy control/status offset#179
ArthurHeymans wants to merge 2 commits into
rust-osdev:mainfrom
ArthurHeymans:fix-usb-legacy-offset

Conversation

@ArthurHeymans

Copy link
Copy Markdown

The USB legacy support control/status register lives in the second dword of the capability. Its accessor currently points at the first dword and aliases the semaphore register.

Move the accessor to base + 4 and add a regression check that updates the second dword only.

  • Changelog updated

Allow callers to select native, low-high, or high-low access for xHCI
64-bit MMIO registers. Keep native access as the default for existing
users while making split access available for platforms and controllers
that cannot accept native 64-bit MMIO operations.
The USB legacy support control/status register is the second dword of
the capability. Map it at base + 4 instead of aliasing the legacy
support semaphore register.
@ArthurHeymans

Copy link
Copy Markdown
Author

This PR is part of a stack of 5 bookmarks:

  1. main
  2. configurable-64-bit-mmio
  3. fix-usb-legacy-offset ← this PR
  4. fix-doorbell-count
  5. w1s-zero-setters
  6. per-register-port-access

Created with jj-stack

@ArthurHeymans

Copy link
Copy Markdown
Author

Superseded by the stacked PR: ArthurHeymans#2.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant