Merge tag 'mfd-for-linus-3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd
[pandora-kernel.git] / arch / arm / plat-iop / pmu.c
1 /*
2  * PMU IRQ registration for the iop3xx xscale PMU families.
3  * Copyright (C) 2010 Will Deacon, ARM Ltd.
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License version 2 as
7  * published by the Free Software Foundation.
8  *
9  */
10
11 #include <linux/platform_device.h>
12 #include <mach/irqs.h>
13
14 static struct resource pmu_resource = {
15 #ifdef CONFIG_ARCH_IOP32X
16         .start  = IRQ_IOP32X_CORE_PMU,
17         .end    = IRQ_IOP32X_CORE_PMU,
18 #endif
19 #ifdef CONFIG_ARCH_IOP33X
20         .start  = IRQ_IOP33X_CORE_PMU,
21         .end    = IRQ_IOP33X_CORE_PMU,
22 #endif
23         .flags  = IORESOURCE_IRQ,
24 };
25
26 static struct platform_device pmu_device = {
27         .name           = "xscale-pmu",
28         .id             = -1,
29         .resource       = &pmu_resource,
30         .num_resources  = 1,
31 };
32
33 static int __init iop3xx_pmu_init(void)
34 {
35         platform_device_register(&pmu_device);
36         return 0;
37 }
38
39 arch_initcall(iop3xx_pmu_init);