Disconnect debug-related pins from GPIO by default in OpenTitan #3809
+2
−2
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.
Pull Request Overview
This PR changes the default pinmux configuration of the TAP strap pins in OpenTitan Earl Grey.
The two TAP straps are used to select which JTAG TAP (test access point) is connected to the JTAG pins. This is commonly used to select either the RISC-V debug module or the OpenTitan lifecycle controller.
Most OpenTitan lifecycle states will sample these pins once on boot and use that TAP until reset. The RMA lifecycle state samples these pins continuously. Connecting them to GPIO prevents connecting a debugger as the TAP straps are changed once the pinmux is configured.
Testing Strategy
I tested this by connecting OpenOCD to an Earl Grey bitstream in RMA mode running Tock.
Before this change, trying to connect would give this error message:
We could only connect pre-pinmux configuration. With this change applied, we can connect after the pinmux connection. There is a separate issue that breaks debugging at another stage, but I'm still working that one out.
TODO or Help Wanted
Is floating these pins the right fallback? They can still be pinmuxed to GPIO pins manually if you want to use them for that I believe.
Documentation Updated
/docs
, or no updates are required.Formatting
make prepush
.