aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/acpi.h8
-rw-r--r--include/linux/acpi_irq.h10
-rw-r--r--include/linux/clocksource.h6
-rw-r--r--include/linux/irqchip/arm-gic-acpi.h31
4 files changed, 54 insertions, 1 deletions
diff --git a/include/linux/acpi.h b/include/linux/acpi.h
index dd12127f171c..e4da5e35e29c 100644
--- a/include/linux/acpi.h
+++ b/include/linux/acpi.h
@@ -79,6 +79,7 @@ enum acpi_irq_model_id {
79 ACPI_IRQ_MODEL_IOAPIC, 79 ACPI_IRQ_MODEL_IOAPIC,
80 ACPI_IRQ_MODEL_IOSAPIC, 80 ACPI_IRQ_MODEL_IOSAPIC,
81 ACPI_IRQ_MODEL_PLATFORM, 81 ACPI_IRQ_MODEL_PLATFORM,
82 ACPI_IRQ_MODEL_GIC,
82 ACPI_IRQ_MODEL_COUNT 83 ACPI_IRQ_MODEL_COUNT
83}; 84};
84 85
@@ -152,9 +153,14 @@ void acpi_numa_x2apic_affinity_init(struct acpi_srat_x2apic_cpu_affinity *pa);
152int acpi_numa_memory_affinity_init (struct acpi_srat_mem_affinity *ma); 153int acpi_numa_memory_affinity_init (struct acpi_srat_mem_affinity *ma);
153void acpi_numa_arch_fixup(void); 154void acpi_numa_arch_fixup(void);
154 155
156#ifndef PHYS_CPUID_INVALID
157typedef u32 phys_cpuid_t;
158#define PHYS_CPUID_INVALID (phys_cpuid_t)(-1)
159#endif
160
155#ifdef CONFIG_ACPI_HOTPLUG_CPU 161#ifdef CONFIG_ACPI_HOTPLUG_CPU
156/* Arch dependent functions for cpu hotplug support */ 162/* Arch dependent functions for cpu hotplug support */
157int acpi_map_cpu(acpi_handle handle, int physid, int *pcpu); 163int acpi_map_cpu(acpi_handle handle, phys_cpuid_t physid, int *pcpu);
158int acpi_unmap_cpu(int cpu); 164int acpi_unmap_cpu(int cpu);
159#endif /* CONFIG_ACPI_HOTPLUG_CPU */ 165#endif /* CONFIG_ACPI_HOTPLUG_CPU */
160 166
diff --git a/include/linux/acpi_irq.h b/include/linux/acpi_irq.h
new file mode 100644
index 000000000000..f10c87265855
--- /dev/null
+++ b/include/linux/acpi_irq.h
@@ -0,0 +1,10 @@
1#ifndef _LINUX_ACPI_IRQ_H
2#define _LINUX_ACPI_IRQ_H
3
4#include <linux/irq.h>
5
6#ifndef acpi_irq_init
7static inline void acpi_irq_init(void) { }
8#endif
9
10#endif /* _LINUX_ACPI_IRQ_H */
diff --git a/include/linux/clocksource.h b/include/linux/clocksource.h
index 135509821c39..d27d0152271f 100644
--- a/include/linux/clocksource.h
+++ b/include/linux/clocksource.h
@@ -253,4 +253,10 @@ extern void clocksource_of_init(void);
253static inline void clocksource_of_init(void) {} 253static inline void clocksource_of_init(void) {}
254#endif 254#endif
255 255
256#ifdef CONFIG_ACPI
257void acpi_generic_timer_init(void);
258#else
259static inline void acpi_generic_timer_init(void) { }
260#endif
261
256#endif /* _LINUX_CLOCKSOURCE_H */ 262#endif /* _LINUX_CLOCKSOURCE_H */
diff --git a/include/linux/irqchip/arm-gic-acpi.h b/include/linux/irqchip/arm-gic-acpi.h
new file mode 100644
index 000000000000..de3419ed3937
--- /dev/null
+++ b/include/linux/irqchip/arm-gic-acpi.h
@@ -0,0 +1,31 @@
1/*
2 * Copyright (C) 2014, Linaro Ltd.
3 * Author: Tomasz Nowicki <tomasz.nowicki@linaro.org>
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#ifndef ARM_GIC_ACPI_H_
11#define ARM_GIC_ACPI_H_
12
13#ifdef CONFIG_ACPI
14
15/*
16 * Hard code here, we can not get memory size from MADT (but FDT does),
17 * Actually no need to do that, because this size can be inferred
18 * from GIC spec.
19 */
20#define ACPI_GICV2_DIST_MEM_SIZE (SZ_4K)
21#define ACPI_GIC_CPU_IF_MEM_SIZE (SZ_8K)
22
23struct acpi_table_header;
24
25int gic_v2_acpi_init(struct acpi_table_header *table);
26void acpi_gic_init(void);
27#else
28static inline void acpi_gic_init(void) { }
29#endif
30
31#endif /* ARM_GIC_ACPI_H_ */