Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 63209a71 authored by Mark Brown's avatar Mark Brown Committed by Liam Girdwood
Browse files

regulator: Add some brief design documentation



Provide some brief documentation of some of the design decisions that
are made by the regulator API.

Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: default avatarLiam Girdwood <lrg@slimlogic.co.uk>
parent 55c1d7c6
Loading
Loading
Loading
Loading
+33 −0
Original line number Diff line number Diff line
Regulator API design notes
==========================

This document provides a brief, partially structured, overview of some
of the design considerations which impact the regulator API design.

Safety
------

 - Errors in regulator configuration can have very serious consequences
   for the system, potentially including lasting hardware damage.
 - It is not possible to automatically determine the power confugration
   of the system - software-equivalent variants of the same chip may
   have different power requirments, and not all components with power
   requirements are visible to software.

  => The API should make no changes to the hardware state unless it has
     specific knowledge that these changes are safe to do perform on
     this particular system.

Consumer use cases
------------------

 - The overwhelming majority of devices in a system will have no
   requirement to do any runtime configuration of their power beyond
   being able to turn it on or off.

 - Many of the power supplies in the system will be shared between many
   different consumers.

  => The consumer API should be structured so that these use cases are
     very easy to handle and so that consumers will work with shared
     supplies without any additional effort.