aboutsummaryrefslogtreecommitdiffstats
path: root/xen/drivers/acpi
diff options
context:
space:
mode:
authorKeir Fraser <keir@xen.org>2010-12-24 10:14:58 +0000
committerKeir Fraser <keir@xen.org>2010-12-24 10:14:58 +0000
commit500483a2156e2311c974ef6e4f7f04f5b94b3c88 (patch)
tree2913a63c3f18969e00b0fce306c3dc3b65302950 /xen/drivers/acpi
parent746a4c7dd813590b86edc9b7989f5274bdf6cef2 (diff)
downloadxen-500483a2156e2311c974ef6e4f7f04f5b94b3c88.tar.gz
xen-500483a2156e2311c974ef6e4f7f04f5b94b3c88.tar.bz2
xen-500483a2156e2311c974ef6e4f7f04f5b94b3c88.zip
ACPI: __init-annotate APEI code
Signed-off-by: Jan Beulich <jbeulich@novell.com>
Diffstat (limited to 'xen/drivers/acpi')
-rw-r--r--xen/drivers/acpi/apei/apei-base.c25
-rw-r--r--xen/drivers/acpi/apei/apei-io.c10
-rw-r--r--xen/drivers/acpi/apei/erst.c4
3 files changed, 20 insertions, 19 deletions
diff --git a/xen/drivers/acpi/apei/apei-base.c b/xen/drivers/acpi/apei/apei-base.c
index e9420f05e7..0a365b7197 100644
--- a/xen/drivers/acpi/apei/apei-base.c
+++ b/xen/drivers/acpi/apei/apei-base.c
@@ -37,6 +37,7 @@
#include <xen/string.h>
#include <xen/types.h>
#include <xen/spinlock.h>
+#include <xen/init.h>
#include <xen/cper.h>
#include <asm/io.h>
#include <acpi/acpi.h>
@@ -201,10 +202,10 @@ typedef int (*apei_exec_entry_func_t)(struct apei_exec_context *ctx,
struct acpi_whea_header *entry,
void *data);
-static int apei_exec_for_each_entry(struct apei_exec_context *ctx,
- apei_exec_entry_func_t func,
- void *data,
- int *end)
+static int __init apei_exec_for_each_entry(struct apei_exec_context *ctx,
+ apei_exec_entry_func_t func,
+ void *data,
+ int *end)
{
u8 ins;
int i, rc;
@@ -229,9 +230,9 @@ static int apei_exec_for_each_entry(struct apei_exec_context *ctx,
return 0;
}
-static int pre_map_gar_callback(struct apei_exec_context *ctx,
- struct acpi_whea_header *entry,
- void *data)
+static int __init pre_map_gar_callback(struct apei_exec_context *ctx,
+ struct acpi_whea_header *entry,
+ void *data)
{
u8 ins = entry->instruction;
@@ -242,7 +243,7 @@ static int pre_map_gar_callback(struct apei_exec_context *ctx,
}
/* Pre-map all GARs in action table. */
-int apei_exec_pre_map_gars(struct apei_exec_context *ctx)
+int __init apei_exec_pre_map_gars(struct apei_exec_context *ctx)
{
int rc, end;
@@ -258,9 +259,9 @@ int apei_exec_pre_map_gars(struct apei_exec_context *ctx)
return rc;
}
-static int post_unmap_gar_callback(struct apei_exec_context *ctx,
- struct acpi_whea_header *entry,
- void *data)
+static int __init post_unmap_gar_callback(struct apei_exec_context *ctx,
+ struct acpi_whea_header *entry,
+ void *data)
{
u8 ins = entry->instruction;
@@ -271,7 +272,7 @@ static int post_unmap_gar_callback(struct apei_exec_context *ctx,
}
/* Post-unmap all GAR in action table. */
-int apei_exec_post_unmap_gars(struct apei_exec_context *ctx)
+int __init apei_exec_post_unmap_gars(struct apei_exec_context *ctx)
{
return apei_exec_for_each_entry(ctx, post_unmap_gar_callback,
NULL, NULL);
diff --git a/xen/drivers/acpi/apei/apei-io.c b/xen/drivers/acpi/apei/apei-io.c
index 543c5d45b7..d57035bb5d 100644
--- a/xen/drivers/acpi/apei/apei-io.c
+++ b/xen/drivers/acpi/apei/apei-io.c
@@ -75,7 +75,7 @@ static void __iomem *__apei_ioremap_fast(paddr_t paddr,
static int apei_range_nr;
-static void __iomem *apei_range_map(paddr_t paddr, unsigned long size)
+static void __iomem *__init apei_range_map(paddr_t paddr, unsigned long size)
{
int i, pg;
int start_nr, cur_nr;
@@ -101,7 +101,7 @@ static void __iomem *apei_range_map(paddr_t paddr, unsigned long size)
* whether the area is already pre-mapped, if it is, return; otherwise,
* do the real map, and add the mapping into apei_iomaps list.
*/
-void __iomem *apei_pre_map(paddr_t paddr, unsigned long size)
+void __iomem *__init apei_pre_map(paddr_t paddr, unsigned long size)
{
void __iomem *vaddr;
struct apei_iomap *map;
@@ -139,7 +139,7 @@ void __iomem *apei_pre_map(paddr_t paddr, unsigned long size)
/*
* Used to post-unmap the specified IO memory area.
*/
-static void apei_post_unmap(paddr_t paddr, unsigned long size)
+static void __init apei_post_unmap(paddr_t paddr, unsigned long size)
{
struct apei_iomap *map;
unsigned long flags;
@@ -191,7 +191,7 @@ static int apei_check_gar(struct acpi_generic_address *reg,
}
/* Pre-map, working on GAR */
-int apei_pre_map_gar(struct acpi_generic_address *reg)
+int __init apei_pre_map_gar(struct acpi_generic_address *reg)
{
u64 paddr;
void __iomem *vaddr;
@@ -212,7 +212,7 @@ int apei_pre_map_gar(struct acpi_generic_address *reg)
}
/* Post-unmap, working on GAR */
-int apei_post_unmap_gar(struct acpi_generic_address *reg)
+int __init apei_post_unmap_gar(struct acpi_generic_address *reg)
{
u64 paddr;
int rc;
diff --git a/xen/drivers/acpi/apei/erst.c b/xen/drivers/acpi/apei/erst.c
index f41322328d..eb666a6fca 100644
--- a/xen/drivers/acpi/apei/erst.c
+++ b/xen/drivers/acpi/apei/erst.c
@@ -713,7 +713,7 @@ int erst_clear(u64 record_id)
return rc;
}
-static int erst_check_table(struct acpi_table_erst *erst_tab)
+static int __init erst_check_table(struct acpi_table_erst *erst_tab)
{
if (erst_tab->header_length != sizeof(struct acpi_table_erst))
return -EINVAL;
@@ -727,7 +727,7 @@ static int erst_check_table(struct acpi_table_erst *erst_tab)
return 0;
}
-int erst_init(void)
+int __init erst_init(void)
{
int rc = 0;
acpi_status status;