Add support for MAX17616
Pull Request Description
The MAX17616/MAX17616A offers highly versatile and programmable protection boundaries for systems against input voltage faults and output overcurrent faults. Input-voltage faults (with positive polarity) are protected up to +80V (without Reverse Current Protection)/+75V (with Reverse Current Protection), by an internal nFET featuring low ON-resistance (20mΩ typ). The devices feature a programmable undervoltage-lockout (UVLO) thresholds by using external voltage- dividers. The MAX17616 features a programmable overvoltage-lockout (OVLO) while MAX17616A offers a programmable output voltage clamp function through the OVFB pin that features an output voltage limiting regulation during input transient surge events. Input undervoltage and overvoltage protection (MAX17616)/output voltage clamp function (MAX17616A) can be programmed across the entire 3V to 80V operating range.
PR Type
- [ ] Bug fix (change that fixes an issue)
- [x] New feature (change that adds new functionality)
- [ ] Breaking change (has dependencies in other repos or will cause CI to fail)
PR Checklist
- [x] I have followed the Coding style guidelines
- [x] I have complied with the Submission Checklist
- [x] I have performed a self-review of the changes
- [x] I have commented my code, at least hard-to-understand parts
- [x] I have build all projects affected by the changes in this PR
- [x] I have tested in hardware affected projects, at the relevant boards
- [x] I have signed off all commits from this PR
- [x] I have updated the documentation (wiki pages, ReadMe etc), if applies
/AzurePipelines run
Azure Pipelines successfully started running 2 pipeline(s).
/AzurePipelines run
Azure Pipelines successfully started running 2 pipeline(s).
V2:
Rebase to latest main Move max17616.rst to respective doc/sphinx/source directory Fix astyle errors on identified files
/AzurePipelines run
Azure Pipelines successfully started running 2 pipeline(s).
V3:
Resolve identified Sphinx documentation errors
/AzurePipelines run
Azure Pipelines successfully started running 2 pipeline(s).
V4:
Remove diff headers included in max17616.h
/AzurePipelines run
Commenter does not have sufficient privileges for PR 2734 in repo analogdevicesinc/no-OS
/AzurePipelines run
Azure Pipelines successfully started running 2 pipeline(s).
V5:
- Improve error handling on max17616.c.
- Move variable declaration to top of function.
- Use macros in switch cases.
- Remove explicit value assignments in enum declarations.
- Change to new example infrastructure.
- Remove redundant comments on self-explanatory function names.
- Remove magic numbers by adding descriptive macros.
- Fix file content in commit.
/AzurePipelines run
Azure Pipelines successfully started running 2 pipeline(s).
V6:
- Fix error in builds.json (was iio instead of iio_example)
V7:
- Fix bug in device driver calloc
- Use .priv in iio attributes
- Fix indentations in build file
- Remove extra underscore in docs
V5:
- Improve error handling on max17616.c.
- Move variable declaration to top of function.
- Use macros in switch cases.
- Remove explicit value assignments in enum declarations.
- Change to new example infrastructure.
- Remove redundant comments on self-explanatory function names.
- Remove magic numbers by adding descriptive macros.
- Fix file content in commit.
Some of these changes were reverted from the latest push.
V8:
- Replay V5 changes
LGTM
/AzurePipelines run
Azure Pipelines successfully started running 2 pipeline(s).
LGTM
V9:
- Replace returned data of DIRECT conversions from int to float to preserve precision.
/AzurePipelines run
Azure Pipelines successfully started running 2 pipeline(s).