Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

PM / OPP: improve introductory documentation

Make Operating Performance Points (OPP) library introductory chapter
a little more reader-friendly. Split the chapter into two sections,
highlight the definition with an example and minor rewording to be
verbose.

Reported-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

authored by

Nishanth Menon and committed by
Rafael J. Wysocki
4b875810 e5dde92c

+20 -5
+20 -5
Documentation/power/opp.txt
··· 1 - *=============* 2 - * OPP Library * 3 - *=============* 1 + Operating Performance Points (OPP) Library 2 + ========================================== 4 3 5 4 (C) 2009-2010 Nishanth Menon <nm@ti.com>, Texas Instruments Incorporated 6 5 ··· 15 16 16 17 1. Introduction 17 18 =============== 19 + 1.1 What is an Operating Performance Point (OPP)? 20 + 18 21 Complex SoCs of today consists of a multiple sub-modules working in conjunction. 19 22 In an operational system executing varied use cases, not all modules in the SoC 20 23 need to function at their highest performing frequency all the time. To 21 24 facilitate this, sub-modules in a SoC are grouped into domains, allowing some 22 - domains to run at lower voltage and frequency while other domains are loaded 23 - more. The set of discrete tuples consisting of frequency and voltage pairs that 25 + domains to run at lower voltage and frequency while other domains run at 26 + voltage/frequency pairs that are higher. 27 + 28 + The set of discrete tuples consisting of frequency and voltage pairs that 24 29 the device will support per domain are called Operating Performance Points or 25 30 OPPs. 31 + 32 + As an example: 33 + Let us consider an MPU device which supports the following: 34 + {300MHz at minimum voltage of 1V}, {800MHz at minimum voltage of 1.2V}, 35 + {1GHz at minimum voltage of 1.3V} 36 + 37 + We can represent these as three OPPs as the following {Hz, uV} tuples: 38 + {300000000, 1000000} 39 + {800000000, 1200000} 40 + {1000000000, 1300000} 41 + 42 + 1.2 Operating Performance Points Library 26 43 27 44 OPP library provides a set of helper functions to organize and query the OPP 28 45 information. The library is located in drivers/base/power/opp.c and the header