On Mon, 11 Feb 2008 17:55:45 -0800 Venki Pallipadi wrote: > > Documentation for cpuidle infrastructure. This patch was submitted once > a while back. But, somehow got dropped or never made it upstream. > > Resending with updates. > > Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@xxxxxxxxx> > Index: linux-2.6.25-rc/Documentation/cpuidle/sysfs.txt > =================================================================== > --- /dev/null > +++ linux-2.6.25-rc/Documentation/cpuidle/sysfs.txt > @@ -0,0 +1,81 @@ > + > + > + Supporting multiple CPU idle levels in kernel > + > + cpuidle sysfs > + > +System global cpuidle related information and tunables are under > +/sys/devices/system/cpu/cpuidle > + > +The current interfaces in this directory has self-explanatory names: > +* current_driver > +* current_governor_ro > + > +With cpuidle_sysfs_switch boot option (meant for developer testing) Is 'cpuidle_sysfs_switch' usage documented anywhere? > +following objects are visible instead. > +* current_driver > +* available_governors > +* current_governor > +In this case user can switch the governor at run time by writing users [or "a user"] > +onto current_governor. s/onto/to/ [?] > + > + > +Per logical CPU specific cpuidle information are under > +/sys/devices/system/cpu/cpuX/cpuidle > +for each online cpu X > + ... > + > + > Index: linux-2.6.25-rc/Documentation/cpuidle/governor.txt > =================================================================== > --- /dev/null > +++ linux-2.6.25-rc/Documentation/cpuidle/governor.txt > @@ -0,0 +1,30 @@ > + > + > + > + Supporting multiple CPU idle levels in kernel > + > + cpuidle governors > + > + > + > + > +cpuidle governor is policy routine that decides what idle state to enter at > +any given time. cpuidle core uses different callbacks to the governor. > + > +* enable() to enable governor for a particular device > +* disable() to disable governor for a particular device > +* select() to select an idle state to enter > +* reflect() called after returning from the idle state, which can be used > + by the governor for some record keeping. > + > +More than one governor can be registered at the same time and > +user can switch between drivers using /sysfs interface (when enabled). users [or "a user"] > +More than one governor part is supported for developers to easily experiment > +with different governors. By default, most optimal governor based on your > +kernel configuration and platform will be selected by cpuidle. > + > +Interfaces: > +extern int cpuidle_register_governor(struct cpuidle_governor *gov); > +extern void cpuidle_unregister_governor(struct cpuidle_governor *gov); > +struct cpuidle_governor Thanks. --- ~Randy - To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html