-
Notifications
You must be signed in to change notification settings - Fork 7.9k
bmm350: Add Streaming and Read-Decode support #93048
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
Merged
nashif
merged 5 commits into
zephyrproject-rtos:main
from
CogniPilot:bmm350/read-decode-support
Jul 19, 2025
Merged
bmm350: Add Streaming and Read-Decode support #93048
nashif
merged 5 commits into
zephyrproject-rtos:main
from
CogniPilot:bmm350/read-decode-support
Jul 19, 2025
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
As this isn't effectively providing any value to the driver, instead wastes cycles on every sample-fetch. Scrubbing this simplifies the code. Also, remove fix_sign() and replace it for the in-tree helper sign_extend(). Signed-off-by: Luis Ubieda <[email protected]>
da85146
to
045ce56
Compare
ubieda
commented
Jul 14, 2025
Comment on lines
+134
to
+137
.read_async_prep = bmm350_prep_reg_read_rtio_async, | ||
.write_async_prep = bmm350_prep_reg_write_rtio_async, |
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'd like to highlight these two APIs, which could end up in the regmap.h
file @avisconti has created in his in-flight PR.
teburd
previously approved these changes
Jul 14, 2025
bperseghetti
previously approved these changes
Jul 14, 2025
To easily further extend it to other transports and be able to implement streaming mode. Signed-off-by: Luis Ubieda <[email protected]>
In order to allow decoupling these two operations. No functional changes, sensor returns same readings through shell. Signed-off-by: Luis Ubieda <[email protected]>
One-shot reads are now supported through the v2 model API. Signed-off-by: Luis Ubieda <[email protected]>
Supported for DRDY interrupts. Signed-off-by: Luis Ubieda <[email protected]>
045ce56
to
679b0bf
Compare
|
bperseghetti
approved these changes
Jul 15, 2025
MaureenHelm
approved these changes
Jul 18, 2025
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Description
This PR introduces Read-Decode and Streaming mode support to the existing BMM350 driver in-tree.
To accomplish this, there was some refactoring done to allow both v1 and v2 model to coexist without unnecessary code duplication.
Testing
Ran Sensor Shell with BMM350 enabled on an MCXN947 FRDM board and verify both v2 model (read-decode and streaming mode) as well as v1 model (fetch-get) work.
Overlay frdm_mcxn947_mcxn947_cpu0.overlay