On 29/11/2023 12:08, Lukasz Luba wrote:
Add a new section 'Design' which covers the information about Energy
Model. It contains the design decisions, describes models and how they
reflect the reality. Remove description of the default EM. Change the
other section IDs. Add documentation bit for the new feature which
allows to modify the EM in runtime.
Signed-off-by: Lukasz Luba <lukasz.luba@xxxxxxx>
---
Documentation/power/energy-model.rst | 206 +++++++++++++++++++++++++--
1 file changed, 196 insertions(+), 10 deletions(-)
diff --git a/Documentation/power/energy-model.rst b/Documentation/power/energy-model.rst
index 13225965c9a4..1f8cf36914b1 100644
--- a/Documentation/power/energy-model.rst
+++ b/Documentation/power/energy-model.rst
@@ -72,16 +72,48 @@ required to have the same micro-architecture. CPUs in different performance
domains can have different micro-architectures.
-2. Core APIs
+2. Design
+-----------------
+
+2.1 Runtime modifiable EM
+^^^^^^^^^^^^^^^^^^^^^^^^^
The issue I see here is that since now the EM is runtime modifiable and
there is only one EM people might be confused in locking for a
non-runtime modifiable EM. (which matches the design till v4).
So 'runtime modifiability' is now feature of the EM itself.
There is also a figure in this document illustrating the use of
em_get_energy(), em_cpu_get() and em_dev_register_perf_domain().
I wonder if this should be extended to cover all the new interfaces
created for the 'runtime modifiability' feature?