drivers: mfd: vexpress: add Serial Power Controller (SPC) support
authorLorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Thu, 6 Jun 2013 09:59:23 +0000 (10:59 +0100)
committerJon Medhurst <tixy@linaro.org>
Mon, 1 Jul 2013 10:04:57 +0000 (11:04 +0100)
commitaf17603909e9e54771741e30bfacf2a718d901ca
tree095c628d454db16bf7986d4238c6dc0859db7f02
parent854f623384031939e66b1b838e7c332a9da2aac5
drivers: mfd: vexpress: add Serial Power Controller (SPC) support

The TC2 versatile express core tile integrates a logic block that provides the
interface between the dual cluster test-chip and the M3 microcontroller that
carries out power management. The logic block, called Serial Power Controller
(SPC), contains several memory mapped registers to control among other things
low-power states, operating points and reset control.

This patch provides a driver that enables run-time control of features
implemented by the SPC control logic.

The driver also provides a bridge interface through the vexpress config
infrastructure. Operations allowing to read/write operating points are
made to go via the same interface as configuration transactions so that
all requests to M3 are serialized.

Device tree bindings documentation for the SPC component is provided with
the patchset.

Cc: Samuel Ortiz <sameo@linux.intel.com>
Cc: Pawel Moll <pawel.moll@arm.com>
Cc: Nicolas Pitre <nicolas.pitre@linaro.org>
Cc: Amit Kucheria <amit.kucheria@linaro.org>
Cc: Jon Medhurst <tixy@linaro.org>
Signed-off-by: Achin Gupta <achin.gupta@arm.com>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Signed-off-by: Sudeep KarkadaNagesha <Sudeep.KarkadaNagesha@arm.com>
Reviewed-by: Nicolas Pitre <nico@linaro.org>
Documentation/devicetree/bindings/mfd/vexpress-spc.txt [new file with mode: 0644]
drivers/mfd/Kconfig
drivers/mfd/Makefile
drivers/mfd/vexpress-spc.c [new file with mode: 0644]
include/linux/vexpress.h