linux/arch/arm/mach-mvebu
Russell King 44e259ac90 ARM: dove: create a proper PMU driver for power domains, PMU IRQs and resets
The PMU device contains an interrupt controller, power control and
resets.  The interrupt controller is a little sub-standard in that
there is no race free way to clear down pending interrupts, so we try
to avoid problems by reducing the window as much as possible, and
clearing as infrequently as possible.

The interrupt support is implemented using an IRQ domain, and the
parent interrupt referenced in the standard DT way.

The power domains and reset support is closely related - there is a
defined sequence for powering down a domain which is tightly coupled
with asserting the reset.  Hence, it makes sense to group these two
together, and in order to avoid any locking contention disrupting this
sequence, we avoid the use of syscon or regmap.

This patch adds the core PMU driver: power domains must be defined in
the DT file in order to make use of them.  The reset controller can
be referenced in the standard way for reset controllers.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2015-08-05 18:36:49 +02:00
..
include/mach ARM: mvebu: Simplify headers and make local 2014-02-22 21:19:59 +00:00
armada-370-xp.h ARM: mvebu: Clean-up the Armada XP support 2014-11-22 02:13:24 +00:00
board-v7.c ARM: SoC platform updates for v4.1 2015-04-22 09:08:39 -07:00
board.h ARM: Kirkwood: Add setup file for netxbig LEDs 2014-06-20 23:47:27 +00:00
coherency.c ARM: mvebu: prepare set_cpu_coherent() for future extension 2015-07-25 17:16:41 +02:00
coherency.h ARM: mvebu: Remove the unused argument of set_cpu_coherent() 2014-05-08 16:18:52 +00:00
coherency_ll.S ARM: mvebu: make the coherency_ll.S functions work with no coherency fabric 2014-11-22 01:49:27 +00:00
common.h ARM: mvebu: Add standby support 2015-07-25 17:17:05 +02:00
cpu-reset.c ARM: mvebu: Clean-up the Armada XP support 2014-11-22 02:13:24 +00:00
dove.c ARM: dove: create a proper PMU driver for power domains, PMU IRQs and resets 2015-08-05 18:36:49 +02:00
headsmp-a9.S Remove __cpuinit macros and users. 2015-07-02 09:54:14 -07:00
headsmp.S ARM: mvebu: Split low level functions to manipulate HW coherency 2014-05-08 16:18:54 +00:00
Kconfig ARM: dove: create a proper PMU driver for power domains, PMU IRQs and resets 2015-08-05 18:36:49 +02:00
kirkwood-pm.c ARM: mvebu: Simplify headers and make local 2014-02-22 21:19:59 +00:00
kirkwood-pm.h ARM: mvebu: Move kirkwood DT boards into mach-mvebu 2014-02-22 21:19:55 +00:00
kirkwood.c ARM: mvebu: add __initconst specifiers on DT_MACHINE_START dt_compat tables 2015-03-04 14:56:21 +01:00
kirkwood.h ARM: mvebu: Simplify headers and make local 2014-02-22 21:19:59 +00:00
Makefile ARM: mvebu: Armada XP GP specific suspend/resume code 2014-11-30 16:40:14 +00:00
mvebu-soc-id.c ARM: mvebu: Use system controller to get the soc id when possible 2014-06-30 17:40:59 +00:00
mvebu-soc-id.h ARM: mvebu: Update the SoC ID and revision definitions 2015-01-09 09:22:53 -06:00
netxbig.c ARM: Kirkwood: Add setup file for netxbig LEDs 2014-06-20 23:47:27 +00:00
platsmp-a9.c arm/mach-mvebu: remove legacy __cpuinit sections that crept in 2015-06-16 14:12:21 -04:00
platsmp.c mvebu SoC suspend changes for v3.19 2014-12-04 16:46:43 +01:00
pm-board.c ARM: mvebu: Add standby support 2015-07-25 17:17:05 +02:00
pm.c ARM: mvebu: Warn about the wake-up sources not taken into account in suspend 2015-07-28 11:40:47 +02:00
pmsu.c ARM: mvebu: Disable CPU Idle on Armada 38x 2015-03-31 18:47:33 +02:00
pmsu.h mvebu SoC suspend changes for v3.19 2014-12-04 16:46:43 +01:00
pmsu_ll.S mvebu SoC suspend changes for v3.19 2014-12-04 16:46:43 +01:00
system-controller.c ARM: mvebu: build armada375-smp code conditionally 2015-02-18 12:20:29 +01:00