-
Notifications
You must be signed in to change notification settings - Fork 2k
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
drivers/at24cxxx: Add M24C01 device and enhance documentation #20588
Conversation
I screwed this up. Sorry. |
Okay. So I learned about the importance of using different branch names when working with PRs today. I'm sorry that I unneccesarily pinged four people with this. The reviewers which are now added are not the code owners I think. I fixed it now and the changed files and commits reflect the PR I want to make. Again, I am very sorry for causing any trouble. |
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.
Don't worry, GitHub seems to have sorted it out already.
The additions looks simple enough, thank you for taking care of also enhancing the doc!
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.
Thanks! ❤️
I just noticed that the at24cxxx module actually has a test file which can be run: https://github.com/RIOT-OS/RIOT/tree/master/tests/drivers/at24cxxx I'll run the test and post the results first thing tomorrow. |
All tests compiled and ran successfully :) I'll open a separate issue about the documentation grouping separate from this PR, so from my side it is go for merge.
|
Thx for the PR! If I'm correct this is your first PR you got upstream in this repo, correct? If so: Congratulations 🎉 and welcome to the community! |
Cool 🚀 I'm looking forward to it :) |
Contribution description
This PR adds the ST M24C01 I2C EEPROM to the predefined constants in the at24cxxx driver. Since it is the first non-Atmel/Microchip device, the documentation has been enhanced to make clear the driver is not exclusively for devices from Atmel/Microchip.
Furthermore, documentation has been added to make using the driver easier (via pseudomodules) and a small example how to initialize the EEPROM device with the given data structures.
Testing procedure
The code has been tested with the Nordic nRF52840-DK and an ST M24C01WP EEPROM as shown in Issue #20202 with the example code and Makefile given in this issue.
The expected impact on other parts of RIOT is low, since only features have been added which concentrate on the at24cxxx driver which do not affect other parts.
A global driver pseudomodule with the filter "m24c%" has been added similar to the existing "at24c%" pseudomodule to give access to all ST devices that will potentially be added in the future. Currently this filter does not cause any namespace conflicts.
Issues/PRs references
This PR fixes Issue #20202. Please do not merge until the question about the documentation grouping has been answered!