linux/Documentation/devicetree/bindings
Lorenzo Pieralisi 3f8161b260 Documentation: arm: define DT idle states bindings
ARM based platforms implement a variety of power management schemes that
allow processors to enter idle states at run-time.
The parameters defining these idle states vary on a per-platform basis forcing
the OS to hardcode the state parameters in platform specific static tables
whose size grows as the number of platforms supported in the kernel increases
and hampers device drivers standardization.

Therefore, this patch aims at standardizing idle state device tree bindings
for ARM platforms. Bindings define idle state parameters inclusive of entry
methods and state latencies, to allow operating systems to retrieve the
configuration entries from the device tree and initialize the related power
management drivers, paving the way for common code in the kernel to deal with
idle states and removing the need for static data in current and previous
kernel versions.

ARM64 platforms require the DT to define an entry-method property
for idle states.

On system implementing PSCI as an enable-method to enter low-power
states the PSCI CPU suspend method requires the power_state parameter to
be passed to the PSCI CPU suspend function.

This parameter is specific to a power state and platform specific,
therefore must be provided by firmware to the OS in order to enable
proper call sequence.

Thus, this patch also adds a property in the PSCI bindings that
describes how the PSCI CPU suspend power_state parameter should be
defined in DT in all device nodes that rely on PSCI CPU suspend method usage.

Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Acked-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Nicolas Pitre <nico@linaro.org>
Reviewed-by: Rob Herring <robh@kernel.org>
Reviewed-by: Sebastian Capella <sebcape@gmail.com>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
2014-09-12 10:48:55 +01:00
..
arc
arm Documentation: arm: define DT idle states bindings 2014-09-12 10:48:55 +01:00
ata Documentation: bindings: document the sub-nodes AHCI bindings 2014-07-30 15:39:47 -04:00
bus
c6x
clock ARM: SoC platform changes for 3.17 2014-08-08 11:14:29 -07:00
cpufreq cpufreq: cpu0: OPPs can be populated at runtime 2014-07-16 15:12:52 +02:00
crypto crypto: ccp - Base AXI DMA cache settings on device tree 2014-07-23 21:28:38 +08:00
dma dmaengine: add device tree binding documentation for the nbpfaxi driver 2014-08-04 13:27:35 +05:30
drm Merge branch 'tda998x-devel' of git://ftp.arm.linux.org.uk/~rmk/linux-cubox into drm-next 2014-08-05 09:26:09 +10:00
extcon dt-bindings: extcon: Add support for SM5502 MUIC device 2014-07-23 10:22:36 +09:00
fb
fuse soc/tegra: Add efuse and apbmisc bindings 2014-07-17 14:36:10 +02:00
gpio
gpu ARM: SoC device-tree changes for 3.17 2014-08-08 11:16:58 -07:00
hid
hsi
hwmon hwmon: Add pwm-fan driver 2014-08-04 07:01:38 -07:00
hwrng
i2c Merge branch 'i2c/for-3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux 2014-08-09 09:15:07 -07:00
iio staging:iio:hmc5843: Add support for i2c hmc5983 2014-07-23 21:48:20 +01:00
input Input: atmel_mxt_ts - improve description of gpio-keymap property 2014-08-19 12:00:31 -07:00
interrupt-controller of/irq: Fix lookup to use 'interrupts-extended' property first 2014-08-16 09:03:58 +01:00
iommu Merge branches 'x86/vt-d', 'x86/amd', 'arm/omap', 'ppc/pamu', 'arm/smmu', 'arm/exynos' and 'core' into next 2014-07-31 20:29:02 +02:00
leds Documentation: dts: tcs6507: Fix wrong statement about #gpio-cells 2014-07-22 16:26:43 -07:00
lpddr2
media [media] media: atmel-isi: add primary DT support 2014-07-30 19:48:36 -03:00
memory-controllers
metag
mfd mfd: tc3589x: Add device tree bindings 2014-08-28 15:57:54 +01:00
mipi
mips
misc soc/tegra: Add efuse and apbmisc bindings 2014-07-17 14:36:10 +02:00
mmc mmc: dw_mmc: modify the dt-binding for removing slot-node and supports-highspeed 2014-08-11 11:48:39 +02:00
mtd ARM: OMAP2+: GPMC: Support Software ECC scheme via DT 2014-08-25 16:15:33 -07:00
net net: fec: Support phys probed from devicetree and fixed-link 2014-08-11 14:41:06 -07:00
nvec
panel drm/panel: simple: Add AUO B133HTN01 panel support 2014-08-06 16:44:15 +02:00
pci PCI changes for v3.17 (part 3): 2014-08-19 09:45:31 -05:00
phy ARM: SoC driver changes for 3.17 2014-08-08 11:34:32 -07:00
pinctrl pinctrl: qcom: apq8064: Correct interrupts in example 2014-08-21 07:28:24 -05:00
power Documentation: DT: Document rx51-battery binding 2014-07-18 23:40:22 +02:00
power_supply
powerpc powerpc/85xx: Add binding for CPLD 2014-07-31 00:10:45 -05:00
pps
pwm pwm: rockchip: document RK3288 SoC compatible 2014-08-08 13:12:46 +02:00
regulator Merge remote-tracking branches 'regulator/fix/doc' and 'regulator/fix/tps65090' into regulator-linus 2014-09-05 10:53:18 +01:00
reserved-memory
reset
rng
rtc
serial ARM: SoC device-tree changes for 3.17 2014-08-08 11:16:58 -07:00
serio
soc/qcom
sound ASoC: axi: Fix ADI AXI SPDIF specification 2014-08-16 15:58:43 +01:00
spi ARM: SoC cleanups for 3.17 2014-08-08 11:00:26 -07:00
spmi
staging
thermal Merge branches 'exynos-fix', 'for-rc', 'int3403-fix', 'misc', 'rcar-thermal' and 'sti-thermal' of .git into next 2014-07-22 10:13:00 +08:00
timer clocksource: clps711x: Add DT bindings documentation 2014-07-23 12:02:36 +02:00
ufs
usb usb: ci_hdrc_imx doc: fsl,usbphy is required 2014-07-22 16:31:36 -07:00
video fbdev changes for 3.17 2014-08-08 18:09:33 -07:00
virtio
w1
watchdog watchdog: imx2_wdt: adds big endianness support. 2014-08-05 22:43:11 +02:00
x86
ABI.txt
eeprom.txt
graph.txt
marvell.txt
open-pic.txt
resource-names.txt
submitting-patches.txt
vendor-prefixes.txt Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2014-08-08 17:39:48 -07:00
xilinx.txt