r4000.cpp: Add TimerIntDis mux to IPEX5 #9718
Merged
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.
This change implements boot-mode setting bit 19, TimIntDis/TimerIntDis, which configures if the R4x00 will use IPEX5 as an external interrupt, or as an internal timer using the compare register as the threshold (which is the default). The Sony NEWS NWS-5000X has multiple external timers, including a free-running clock and a hardware clock that drives IPEX2. So, Sony disabled the internal timer using TimerIntDis and repurposed IPEX5 for other things.
Boot-Mode Setting Description:
Block diagram:
Test booting
jazz.cpp
to the WinNT installer, showing that the internal timer is still functional in the default config:This is another change pulled in from #8854 since that PR is way too big. Apologies for taking so much time to restart the process of breaking it up into smaller, easier to review portions. The first part of the year is the build and competition season for the robotics team I mentor, so I had essentially no free time....