xref: /linux/Documentation/power/regulator/regulator.rst (revision da1d9caf95def6f0320819cf941c9fd1069ba9e1)
1==========================
2Regulator Driver Interface
3==========================
4
5The regulator driver interface is relatively simple and designed to allow
6regulator drivers to register their services with the core framework.
7
8
9Registration
10============
11
12Drivers can register a regulator by calling::
13
14  struct regulator_dev *regulator_register(struct regulator_desc *regulator_desc,
15					   const struct regulator_config *config);
16
17This will register the regulator's capabilities and operations to the regulator
18core.
19
20Regulators can be unregistered by calling::
21
22  void regulator_unregister(struct regulator_dev *rdev);
23
24
25Regulator Events
26================
27
28Regulators can send events (e.g. overtemperature, undervoltage, etc) to
29consumer drivers by calling::
30
31  int regulator_notifier_call_chain(struct regulator_dev *rdev,
32				    unsigned long event, void *data);
33