#define ACPI_MAX_TABLES 128
-static char *mps_inti_flags_polarity[] = { "dfl", "high", "res", "low" };
-static char *mps_inti_flags_trigger[] = { "dfl", "edge", "res", "level" };
+static const char *__initdata
+mps_inti_flags_polarity[] = { "dfl", "high", "res", "low" };
+static const char *__initdata
+mps_inti_flags_trigger[] = { "dfl", "edge", "res", "level" };
static struct acpi_table_desc initial_tables[ACPI_MAX_TABLES] __initdata;
static int acpi_apic_instance __initdata;
-void acpi_table_print_madt_entry(struct acpi_subtable_header *header)
+void __init acpi_table_print_madt_entry(struct acpi_subtable_header *header)
{
if (!header)
return;
#define ACPI_FADT_REQUIRED 1
#define ACPI_FADT_SEPARATE_LENGTH 2
-static struct acpi_fadt_info fadt_info_table[] = {
+static struct acpi_fadt_info __initdata fadt_info_table[] = {
{"Pm1aEventBlock", ACPI_FADT_OFFSET(xpm1a_event_block),
ACPI_FADT_OFFSET(pm1a_event_block),
ACPI_FADT_OFFSET(pm1_event_length), ACPI_FADT_REQUIRED},
*
******************************************************************************/
-void acpi_tb_parse_fadt(acpi_native_uint table_index, u8 flags)
+void __init acpi_tb_parse_fadt(acpi_native_uint table_index, u8 flags)
{
u32 length;
struct acpi_table_header *table;
*
******************************************************************************/
-void acpi_tb_create_local_fadt(struct acpi_table_header *table, u32 length)
+void __init acpi_tb_create_local_fadt(struct acpi_table_header *table, u32 length)
{
/*
*
******************************************************************************/
-static void acpi_tb_convert_fadt(void)
+static void __init acpi_tb_convert_fadt(void)
{
u8 pm1_register_length;
struct acpi_generic_address *target;
*
******************************************************************************/
-static void acpi_tb_validate_fadt(void)
+static void __init acpi_tb_validate_fadt(void)
{
u32 *address32;
struct acpi_generic_address *address64;
* POSSIBILITY OF SUCH DAMAGES.
*/
+#include <xen/init.h>
#include <acpi/acpi.h>
#include <acpi/acnamesp.h>
#include <acpi/actables.h>
*
******************************************************************************/
-acpi_status acpi_tb_resize_root_table_list(void)
+acpi_status __init acpi_tb_resize_root_table_list(void)
{
struct acpi_table_desc *tables;
*
******************************************************************************/
-void
+void __init
acpi_tb_print_table_header(acpi_physical_address address,
struct acpi_table_header *header)
{
*
******************************************************************************/
-void
+void __init
acpi_tb_install_table(acpi_physical_address address,
u8 flags, char *signature, acpi_native_uint table_index)
{
*
******************************************************************************/
-acpi_status acpi_allocate_root_table(u32 initial_table_count)
+acpi_status __init acpi_allocate_root_table(u32 initial_table_count)
{
acpi_gbl_root_table_list.size = initial_table_count;
return_ACPI_STATUS(status);
}
-/*******************************************************************************
- *
- * FUNCTION: acpi_reallocate_root_table
- *
- * PARAMETERS: None
- *
- * RETURN: Status
- *
- * DESCRIPTION: Reallocate Root Table List into dynamic memory. Copies the
- * root list from the previously provided scratch area. Should
- * be called once dynamic memory allocation is available in the
- * kernel
- *
- ******************************************************************************/
-acpi_status acpi_reallocate_root_table(void)
-{
- struct acpi_table_desc *tables;
- acpi_size new_size;
-
- ACPI_FUNCTION_TRACE(acpi_reallocate_root_table);
-
- /*
- * Only reallocate the root table if the host provided a static buffer
- * for the table array in the call to acpi_initialize_tables.
- */
- if (acpi_gbl_root_table_list.flags & ACPI_ROOT_ORIGIN_ALLOCATED) {
- return_ACPI_STATUS(AE_SUPPORT);
- }
-
- new_size =
- (acpi_gbl_root_table_list.count +
- ACPI_ROOT_TABLE_SIZE_INCREMENT) * sizeof(struct acpi_table_desc);
-
- /* Create new array and copy the old array */
-
- tables = ACPI_ALLOCATE_ZEROED(new_size);
- if (!tables) {
- return_ACPI_STATUS(AE_NO_MEMORY);
- }
-
- ACPI_MEMCPY(tables, acpi_gbl_root_table_list.tables, new_size);
-
- acpi_gbl_root_table_list.size = acpi_gbl_root_table_list.count;
- acpi_gbl_root_table_list.tables = tables;
- acpi_gbl_root_table_list.flags =
- ACPI_ROOT_ORIGIN_ALLOCATED | ACPI_ROOT_ALLOW_RESIZE;
-
- return_ACPI_STATUS(AE_OK);
-}
-
/*******************************************************************************
*
* FUNCTION: acpi_get_table
*
******************************************************************************/
-acpi_status acpi_find_root_pointer(acpi_native_uint * table_address)
+acpi_status __init acpi_find_root_pointer(acpi_native_uint * table_address)
{
u8 *table_ptr;
u8 *mem_rover;
* DESCRIPTION: Search a block of memory for the RSDP signature
*
******************************************************************************/
-static u8 *acpi_tb_scan_memory_for_rsdp(u8 * start_address, u32 length)
+static u8 *__init acpi_tb_scan_memory_for_rsdp(u8 * start_address, u32 length)
{
acpi_status status;
u8 *mem_rover;