Link: https://lore.kernel.org/r/20260217200002.683975158@linuxfoundation.org Tested-by: Florian Fainelli <florian.fainelli@broadcom.com> Tested-by: Takeshi Ogasawara <takeshi.ogasawara@futuring-girl.com> Tested-by: Peter Schneider <pschneider1968@googlemail.com> Tested-by: Jon Hunter <jonathanh@nvidia.com> Tested-by: Salvatore Bonaccorso <carnil@debian.org> Tested-by: Brett A C Sheffield <bacs@librecast.net> Tested-by: Mark Brown <broonie@kernel.org> Tested-by: Luna Jernberg <droidbittin@gmail.com> Tested-by: Ronald Warsow <rwarsow@gmx.de> Tested-by: Justin M. Forbes <jforbes@fedoraproject.org> Tested-by: Ron Economos <re@w6rz.net> Tested-by: Miguel Ojeda <ojeda@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
33 lines
868 B
ReStructuredText
33 lines
868 B
ReStructuredText
==========================
|
|
Regulator Driver Interface
|
|
==========================
|
|
|
|
The regulator driver interface is relatively simple and designed to allow
|
|
regulator drivers to register their services with the core framework.
|
|
|
|
|
|
Registration
|
|
============
|
|
|
|
Drivers can register a regulator by calling::
|
|
|
|
struct regulator_dev *regulator_register(struct regulator_desc *regulator_desc,
|
|
const struct regulator_config *config);
|
|
|
|
This will register the regulator's capabilities and operations to the regulator
|
|
core.
|
|
|
|
Regulators can be unregistered by calling::
|
|
|
|
void regulator_unregister(struct regulator_dev *rdev);
|
|
|
|
|
|
Regulator Events
|
|
================
|
|
|
|
Regulators can send events (e.g. overtemperature, undervoltage, etc) to
|
|
consumer drivers by calling::
|
|
|
|
int regulator_notifier_call_chain(struct regulator_dev *rdev,
|
|
unsigned long event, void *data);
|