-
Notifications
You must be signed in to change notification settings - Fork 747
Fix the bus library to support all the possible address widths #4099
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
Fix the bus library to support all the possible address widths #4099
Conversation
Do buses need to change width dynamically, or should we template |
Addresses should always be fixed. I thought about templating it, but I am not sure about the benefit of it. The only thing that changes is the address with and endianness. Do you have any template idea? |
Using |
I tested both versions (the previous one that is now in master and this one) and there seems to be no code size impact on ARM architecture. The call stack size might be larger though due to the |
Is there anything else that we need for this PR? |
We need approvals. @alexandruradovici maybe can start with you? |
@alevy I don't think this has addressed the concerns from @bradjc and myself in this thread yet: #4099 (comment) |
See #4099 (comment) for current feedback state |
6a611e5
to
fac8199
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this is good to go modulo the mismatch between documentation and implementation. I think you should copy (and adjust) that large document over DataWidth
into the HIL and explain why the various widths & endianness selectors are required.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
I would like to move this forward. Is there anything you’d like me to adjust, or is it ready to go? |
1a057ff
to
80b5e11
Compare
@bradjc @lschuermann Is there anything else that needs to be added, or is this ready to be merged? |
Co-authored-by: Brad Campbell <bradjc5@gmail.com>
Pull Request Overview
This pull request fixes the
bus
library to support all the possible address types. Before this change, thebus
library:usize
that may be only 32 bits wide (this is the case for all the boards now)bus8080
library would acceptusize
address types even though it only supports 16 bit addressesTesting Strategy
This pull request was tested on STM32F4 Discovery board and on Raspberry Pi Pico (connected to Pico Explorer Base).
TODO or Help Wanted
This pull request depends on #4098.Documentation Updated
/docs
, or no updates are required.Formatting
make prepush
.