Linux Audio

Check our new training course

Loading...
v4.10.11
 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
14static 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
26static struct platform_device pmu_device = {
27	.name		= "xscale-pmu",
28	.id		= -1,
29	.resource	= &pmu_resource,
30	.num_resources	= 1,
31};
32
33static int __init iop3xx_pmu_init(void)
34{
35	platform_device_register(&pmu_device);
36	return 0;
37}
38
39arch_initcall(iop3xx_pmu_init);
v3.5.6
 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 <asm/pmu.h>
13#include <mach/irqs.h>
14
15static struct resource pmu_resource = {
16#ifdef CONFIG_ARCH_IOP32X
17	.start	= IRQ_IOP32X_CORE_PMU,
18	.end	= IRQ_IOP32X_CORE_PMU,
19#endif
20#ifdef CONFIG_ARCH_IOP33X
21	.start	= IRQ_IOP33X_CORE_PMU,
22	.end	= IRQ_IOP33X_CORE_PMU,
23#endif
24	.flags	= IORESOURCE_IRQ,
25};
26
27static struct platform_device pmu_device = {
28	.name		= "arm-pmu",
29	.id		= ARM_PMU_DEVICE_CPU,
30	.resource	= &pmu_resource,
31	.num_resources	= 1,
32};
33
34static int __init iop3xx_pmu_init(void)
35{
36	platform_device_register(&pmu_device);
37	return 0;
38}
39
40arch_initcall(iop3xx_pmu_init);