forked from torvalds/linux
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'linus' into perfcounters/rename
Merge reason: pull in all the latest code before doing the rename. Signed-off-by: Ingo Molnar <[email protected]>
- Loading branch information
Showing
901 changed files
with
66,493 additions
and
11,792 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,129 @@ | ||
|
||
The OMAP PM interface | ||
===================== | ||
|
||
This document describes the temporary OMAP PM interface. Driver | ||
authors use these functions to communicate minimum latency or | ||
throughput constraints to the kernel power management code. | ||
Over time, the intention is to merge features from the OMAP PM | ||
interface into the Linux PM QoS code. | ||
|
||
Drivers need to express PM parameters which: | ||
|
||
- support the range of power management parameters present in the TI SRF; | ||
|
||
- separate the drivers from the underlying PM parameter | ||
implementation, whether it is the TI SRF or Linux PM QoS or Linux | ||
latency framework or something else; | ||
|
||
- specify PM parameters in terms of fundamental units, such as | ||
latency and throughput, rather than units which are specific to OMAP | ||
or to particular OMAP variants; | ||
|
||
- allow drivers which are shared with other architectures (e.g., | ||
DaVinci) to add these constraints in a way which won't affect non-OMAP | ||
systems, | ||
|
||
- can be implemented immediately with minimal disruption of other | ||
architectures. | ||
|
||
|
||
This document proposes the OMAP PM interface, including the following | ||
five power management functions for driver code: | ||
|
||
1. Set the maximum MPU wakeup latency: | ||
(*pdata->set_max_mpu_wakeup_lat)(struct device *dev, unsigned long t) | ||
|
||
2. Set the maximum device wakeup latency: | ||
(*pdata->set_max_dev_wakeup_lat)(struct device *dev, unsigned long t) | ||
|
||
3. Set the maximum system DMA transfer start latency (CORE pwrdm): | ||
(*pdata->set_max_sdma_lat)(struct device *dev, long t) | ||
|
||
4. Set the minimum bus throughput needed by a device: | ||
(*pdata->set_min_bus_tput)(struct device *dev, u8 agent_id, unsigned long r) | ||
|
||
5. Return the number of times the device has lost context | ||
(*pdata->get_dev_context_loss_count)(struct device *dev) | ||
|
||
|
||
Further documentation for all OMAP PM interface functions can be | ||
found in arch/arm/plat-omap/include/mach/omap-pm.h. | ||
|
||
|
||
The OMAP PM layer is intended to be temporary | ||
--------------------------------------------- | ||
|
||
The intention is that eventually the Linux PM QoS layer should support | ||
the range of power management features present in OMAP3. As this | ||
happens, existing drivers using the OMAP PM interface can be modified | ||
to use the Linux PM QoS code; and the OMAP PM interface can disappear. | ||
|
||
|
||
Driver usage of the OMAP PM functions | ||
------------------------------------- | ||
|
||
As the 'pdata' in the above examples indicates, these functions are | ||
exposed to drivers through function pointers in driver .platform_data | ||
structures. The function pointers are initialized by the board-*.c | ||
files to point to the corresponding OMAP PM functions: | ||
.set_max_dev_wakeup_lat will point to | ||
omap_pm_set_max_dev_wakeup_lat(), etc. Other architectures which do | ||
not support these functions should leave these function pointers set | ||
to NULL. Drivers should use the following idiom: | ||
|
||
if (pdata->set_max_dev_wakeup_lat) | ||
(*pdata->set_max_dev_wakeup_lat)(dev, t); | ||
|
||
The most common usage of these functions will probably be to specify | ||
the maximum time from when an interrupt occurs, to when the device | ||
becomes accessible. To accomplish this, driver writers should use the | ||
set_max_mpu_wakeup_lat() function to to constrain the MPU wakeup | ||
latency, and the set_max_dev_wakeup_lat() function to constrain the | ||
device wakeup latency (from clk_enable() to accessibility). For | ||
example, | ||
|
||
/* Limit MPU wakeup latency */ | ||
if (pdata->set_max_mpu_wakeup_lat) | ||
(*pdata->set_max_mpu_wakeup_lat)(dev, tc); | ||
|
||
/* Limit device powerdomain wakeup latency */ | ||
if (pdata->set_max_dev_wakeup_lat) | ||
(*pdata->set_max_dev_wakeup_lat)(dev, td); | ||
|
||
/* total wakeup latency in this example: (tc + td) */ | ||
|
||
The PM parameters can be overwritten by calling the function again | ||
with the new value. The settings can be removed by calling the | ||
function with a t argument of -1 (except in the case of | ||
set_max_bus_tput(), which should be called with an r argument of 0). | ||
|
||
The fifth function above, omap_pm_get_dev_context_loss_count(), | ||
is intended as an optimization to allow drivers to determine whether the | ||
device has lost its internal context. If context has been lost, the | ||
driver must restore its internal context before proceeding. | ||
|
||
|
||
Other specialized interface functions | ||
------------------------------------- | ||
|
||
The five functions listed above are intended to be usable by any | ||
device driver. DSPBridge and CPUFreq have a few special requirements. | ||
DSPBridge expresses target DSP performance levels in terms of OPP IDs. | ||
CPUFreq expresses target MPU performance levels in terms of MPU | ||
frequency. The OMAP PM interface contains functions for these | ||
specialized cases to convert that input information (OPPs/MPU | ||
frequency) into the form that the underlying power management | ||
implementation needs: | ||
|
||
6. (*pdata->dsp_get_opp_table)(void) | ||
|
||
7. (*pdata->dsp_set_min_opp)(u8 opp_id) | ||
|
||
8. (*pdata->dsp_get_opp)(void) | ||
|
||
9. (*pdata->cpu_get_freq_table)(void) | ||
|
||
10. (*pdata->cpu_set_freq)(unsigned long f) | ||
|
||
11. (*pdata->cpu_get_freq)(void) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
Kernel driver wm831x-hwmon | ||
========================== | ||
|
||
Supported chips: | ||
* Wolfson Microelectronics WM831x PMICs | ||
Prefix: 'wm831x' | ||
Datasheet: | ||
http://www.wolfsonmicro.com/products/WM8310 | ||
http://www.wolfsonmicro.com/products/WM8311 | ||
http://www.wolfsonmicro.com/products/WM8312 | ||
|
||
Authors: Mark Brown <[email protected]> | ||
|
||
Description | ||
----------- | ||
|
||
The WM831x series of PMICs include an AUXADC which can be used to | ||
monitor a range of system operating parameters, including the voltages | ||
of the major supplies within the system. Currently the driver provides | ||
reporting of all the input values but does not provide any alarms. | ||
|
||
Voltage Monitoring | ||
------------------ | ||
|
||
Voltages are sampled by a 12 bit ADC. Voltages in milivolts are 1.465 | ||
times the ADC value. | ||
|
||
Temperature Monitoring | ||
---------------------- | ||
|
||
Temperatures are sampled by a 12 bit ADC. Chip and battery temperatures | ||
are available. The chip temperature is calculated as: | ||
|
||
Degrees celsius = (512.18 - data) / 1.0983 | ||
|
||
while the battery temperature calculation will depend on the NTC | ||
thermistor component. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
Kernel driver wm8350-hwmon | ||
========================== | ||
|
||
Supported chips: | ||
* Wolfson Microelectronics WM835x PMICs | ||
Prefix: 'wm8350' | ||
Datasheet: | ||
http://www.wolfsonmicro.com/products/WM8350 | ||
http://www.wolfsonmicro.com/products/WM8351 | ||
http://www.wolfsonmicro.com/products/WM8352 | ||
|
||
Authors: Mark Brown <[email protected]> | ||
|
||
Description | ||
----------- | ||
|
||
The WM835x series of PMICs include an AUXADC which can be used to | ||
monitor a range of system operating parameters, including the voltages | ||
of the major supplies within the system. Currently the driver provides | ||
simple access to these major supplies. | ||
|
||
Voltage Monitoring | ||
------------------ | ||
|
||
Voltages are sampled by a 12 bit ADC. For the internal supplies the ADC | ||
is referenced to the system VRTC. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -1973,7 +1973,6 @@ F: fs/ext2/ | |
F: include/linux/ext2* | ||
|
||
EXT3 FILE SYSTEM | ||
M: Stephen Tweedie <[email protected]> | ||
M: Andrew Morton <[email protected]> | ||
M: Andreas Dilger <[email protected]> | ||
L: [email protected] | ||
|
@@ -2901,8 +2900,8 @@ F: fs/jffs2/ | |
F: include/linux/jffs2.h | ||
|
||
JOURNALLING LAYER FOR BLOCK DEVICES (JBD) | ||
M: Stephen Tweedie <[email protected]> | ||
M: Andrew Morton <[email protected]> | ||
M: Jan Kara <[email protected]> | ||
L: [email protected] | ||
S: Maintained | ||
F: fs/jbd*/ | ||
|
@@ -4455,6 +4454,14 @@ S: Maintained | |
F: kernel/sched* | ||
F: include/linux/sched.h | ||
|
||
SCORE ARCHITECTURE | ||
P: Chen Liqin | ||
M: [email protected] | ||
P: Lennox Wu | ||
M: [email protected] | ||
W: http://www.sunplusct.com | ||
S: Supported | ||
|
||
SCSI CDROM DRIVER | ||
M: Jens Axboe <[email protected]> | ||
L: [email protected] | ||
|
@@ -4654,6 +4661,12 @@ F: arch/arm/mach-s3c2410/ | |
F: drivers/*/*s3c2410* | ||
F: drivers/*/*/*s3c2410* | ||
|
||
TI DAVINCI MACHINE SUPPORT | ||
P: Kevin Hilman | ||
M: [email protected] | ||
S: Supported | ||
F: arch/arm/mach-davinci | ||
|
||
SIS 190 ETHERNET DRIVER | ||
M: Francois Romieu <[email protected]> | ||
L: [email protected] | ||
|
@@ -5678,6 +5691,26 @@ S: Supported | |
F: drivers/input/touchscreen/*wm97* | ||
F: include/linux/wm97xx.h | ||
|
||
WOLFSON MICROELECTRONICS PMIC DRIVERS | ||
P: Mark Brown | ||
M: [email protected] | ||
L: [email protected] | ||
T: git git://opensource.wolfsonmicro.com/linux-2.6-audioplus | ||
W: http://opensource.wolfsonmicro.com/node/8 | ||
S: Supported | ||
F: drivers/leds/leds-wm83*.c | ||
F: drivers/mfd/wm8*.c | ||
F: drivers/power/wm83*.c | ||
F: drivers/rtc/rtc-wm83*.c | ||
F: drivers/regulator/wm8*.c | ||
F: drivers/video/backlight/wm83*_bl.c | ||
F: drivers/watchdog/wm83*_wdt.c | ||
F: include/linux/mfd/wm831x/ | ||
F: include/linux/mfd/wm8350/ | ||
F: include/linux/mfd/wm8400/ | ||
F: sound/soc/codecs/wm8350.c | ||
F: sound/soc/codecs/wm8400.c | ||
|
||
X.25 NETWORK LAYER | ||
M: Henner Eisen <[email protected]> | ||
L: [email protected] | ||
|
Oops, something went wrong.