-
Notifications
You must be signed in to change notification settings - Fork 122
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Clarification re: XHCI IMOD in ReadWriteEverything #13
Comments
I built a script to disable imod usb. |
@djdallmann Why did you close this as Completed? |
@daiplusplus take a look at this discussion #12 and @dougg0k powershell script, looks like it handles multiple interrupters. I haven't tried it myself but see if it does what you're looking for. I'll review your other comments. |
It handles all interrupters that is available in the controller, it can be from 1 to 1024, but commonly are 8. It's able to find the amount per controller, and act in all of them from the first. |
Thanks for the discussion so far, please see below.
If you have BAR1 and BAR2 as follows the actual starting memory address is BAR1+BAR2 = 4410000004 (likely 4410000000 due to above discrepancies, byte boundaries etc)
|
I have also written a script which is significantly less lines, simpler and more transparent than the one above. The source can be found here. |
It's a nice addition, I suppose I could trim down my implementation, but that would provide less information and functionality, and maybe even less clarity in how I reached each value. It is noticeable, at least in the feeling of the mouse movement, even in 1khz. |
https://github.com/djdallmann/GamingPCSetup/tree/master/CONTENT/RESEARCH/PERIPHERALS
0x12
, which is not0x18
.BAR1
address often has4
at the end, e.g.0xED190004
. When RWE's Memory window opens when you jump to that address the last digit in theAddress =
button is reset to 0, which throws me off.BAR1
is0xED190004
and I double-click on the PCI window cell with that value, the Memory window's Button saysAddress = 00000000ED190000
. If I click the button and add-back the "4" at the end then the Memory window seems to show the originalBAR1
address' contents fine (so why does the Memory window initially round-down addresses despite not needing to?).0x24
to the00000000F7310000
instead of adding0x24
to00000000F7310004
, but Intel's documentation (5.5.2.2, page 426) says the offset is "RuntimeBase + 0x24 + ( 0x20 * Interrupter )
" - so what's going on?RuntimeBase
as "The Runtime Base shall be 32-byte aligned and is calculated by adding the value Runtime Register Space Offset register to the Capability Base address" - but your article doesn't show you performing the same calculation.The text was updated successfully, but these errors were encountered: