For the files that Linux gets from ACPICA, this diff shows how Linux
has diverged from upstream.

acpica-unix-20060707.audit.diff:# 42 files changed, 211 insertions(+), 92 
deletions(-)
acpica-unix-20060623.audit.diff:# 37 files changed, 198 insertions(+), 78 
deletions(-)
acpica-unix-20060608.audit.diff:# 35 files changed, 190 insertions(+), 70 
deletions(-)
acpica-unix-20060526.audit.diff:# 34 files changed, 162 insertions(+), 53 
deletions(-)
acpica-unix-20060512.audit.diff:# 34 files changed, 163 insertions(+), 53 
deletions(-)

# 142 ACPICA files
# drivers/acpi/dispatcher/dswstate.c |    2 
# drivers/acpi/events/evxface.c      |   83 +++++++++++++----
# drivers/acpi/events/evxfevnt.c     |    2 
# drivers/acpi/executer/excreate.c   |    2 
# drivers/acpi/hardware/hwgpe.c      |    2 
# drivers/acpi/hardware/hwsleep.c    |   24 ----
# drivers/acpi/namespace/nsdump.c    |    6 -
# drivers/acpi/namespace/nsxfeval.c  |    4 
# drivers/acpi/parser/pstree.c       |    2 
# drivers/acpi/parser/psutils.c      |    4 
# drivers/acpi/resources/rsinfo.c    |    2 
# drivers/acpi/resources/rslist.c    |    2 
# drivers/acpi/resources/rsutils.c   |    2 
# drivers/acpi/resources/rsxface.c   |    4 
# drivers/acpi/tables/tbconvrt.c     |   11 +-
# drivers/acpi/tables/tbxface.c      |    2 
# drivers/acpi/utilities/utalloc.c   |    4 
# drivers/acpi/utilities/utcache.c   |    2 
# drivers/acpi/utilities/utdebug.c   |    4 
# drivers/acpi/utilities/utglobal.c  |   11 --
# drivers/acpi/utilities/utmisc.c    |    3 
# drivers/acpi/utilities/utmutex.c   |   15 +--
# drivers/acpi/utilities/utobject.c  |    1 
# drivers/acpi/utilities/utresrc.c   |    6 -
# drivers/acpi/utilities/utstate.c   |    1 
# drivers/acpi/utilities/utxface.c   |    2 
# include/acpi/acdebug.h             |    2 
# include/acpi/acdispat.h            |    2 
# include/acpi/acglobal.h            |    6 -
# include/acpi/achware.h             |    4 
# include/acpi/acinterp.h            |    2 
# include/acpi/aclocal.h             |    2 
# include/acpi/acmacros.h            |    2 
# include/acpi/acnamesp.h            |    4 
# include/acpi/acparser.h            |    4 
# include/acpi/acpiosxf.h            |   17 ++-
# include/acpi/acpixf.h              |   24 ++++
# include/acpi/acresrc.h             |    3 
# include/acpi/actbl.h               |    2 
# include/acpi/actbl1.h              |    2 
# include/acpi/acutils.h             |    8 +
# include/acpi/platform/aclinux.h    |   16 ++-
# 42 files changed, 211 insertions(+), 92 deletions(-)

diff -Nau acpica-unix-20060707/drivers/acpi/hardware/hwsleep.c 
linux-acpi-2.6/drivers/acpi/hardware/hwsleep.c
--- acpica-unix-20060707/drivers/acpi/hardware/hwsleep.c        2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/drivers/acpi/hardware/hwsleep.c      2006-06-15 
23:16:30.000000000 -0400
@@ -93,6 +93,7 @@
  * DESCRIPTION: Access function for the firmware_waking_vector field in FACS
  *
  
******************************************************************************/
+#ifdef ACPI_FUTURE_USAGE
 acpi_status
 acpi_get_firmware_waking_vector(acpi_physical_address * physical_address)
 {
@@ -119,6 +120,7 @@
 }
 
 ACPI_EXPORT_SYMBOL(acpi_get_firmware_waking_vector)
+#endif
 
 
/*******************************************************************************
  *
@@ -219,7 +221,7 @@
  *              THIS FUNCTION MUST BE CALLED WITH INTERRUPTS DISABLED
  *
  
******************************************************************************/
-acpi_status acpi_enter_sleep_state(u8 sleep_state)
+acpi_status asmlinkage acpi_enter_sleep_state(u8 sleep_state)
 {
        u32 PM1Acontrol;
        u32 PM1Bcontrol;
@@ -257,17 +259,6 @@
                return_ACPI_STATUS(status);
        }
 
-       if (sleep_state != ACPI_STATE_S5) {
-
-               /* Disable BM arbitration */
-
-               status = acpi_set_register(ACPI_BITREG_ARB_DISABLE,
-                                          1, ACPI_MTX_DO_NOT_LOCK);
-               if (ACPI_FAILURE(status)) {
-                       return_ACPI_STATUS(status);
-               }
-       }
-
        /*
         * 1) Disable/Clear all GPEs
         * 2) Enable all wakeup GPEs
@@ -403,7 +394,7 @@
  *              THIS FUNCTION MUST BE CALLED WITH INTERRUPTS DISABLED
  *
  
******************************************************************************/
-acpi_status acpi_enter_sleep_state_s4bios(void)
+acpi_status asmlinkage acpi_enter_sleep_state_s4bios(void)
 {
        u32 in_value;
        acpi_status status;
@@ -585,13 +576,6 @@
                              [ACPI_EVENT_POWER_BUTTON].status_register_id, 1,
                              ACPI_MTX_DO_NOT_LOCK);
 
-       /* Enable BM arbitration */
-
-       status = acpi_set_register(ACPI_BITREG_ARB_DISABLE, 0, ACPI_MTX_LOCK);
-       if (ACPI_FAILURE(status)) {
-               return_ACPI_STATUS(status);
-       }
-
        arg.integer.value = ACPI_SST_WORKING;
        status = acpi_evaluate_object(NULL, METHOD_NAME__SST, &arg_list, NULL);
        if (ACPI_FAILURE(status) && status != AE_NOT_FOUND) {
diff -Nau acpica-unix-20060707/drivers/acpi/hardware/hwgpe.c 
linux-acpi-2.6/drivers/acpi/hardware/hwgpe.c
--- acpica-unix-20060707/drivers/acpi/hardware/hwgpe.c  2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/drivers/acpi/hardware/hwgpe.c        2006-06-15 
23:16:30.000000000 -0400
@@ -132,6 +132,7 @@
  *
  
******************************************************************************/
 
+#ifdef ACPI_FUTURE_USAGE
 acpi_status
 acpi_hw_get_gpe_status(struct acpi_gpe_event_info * gpe_event_info,
                       acpi_event_status * event_status)
@@ -188,6 +189,7 @@
       unlock_and_exit:
        return (status);
 }
+#endif                         /*  ACPI_FUTURE_USAGE  */
 
 /******************************************************************************
  *
diff -Nau acpica-unix-20060707/drivers/acpi/events/evxfevnt.c 
linux-acpi-2.6/drivers/acpi/events/evxfevnt.c
--- acpica-unix-20060707/drivers/acpi/events/evxfevnt.c 2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/drivers/acpi/events/evxfevnt.c       2006-06-15 
23:16:30.000000000 -0400
@@ -476,6 +476,7 @@
 
 ACPI_EXPORT_SYMBOL(acpi_clear_gpe)
 
+#ifdef ACPI_FUTURE_USAGE
 
/*******************************************************************************
  *
  * FUNCTION:    acpi_get_event_status
@@ -569,6 +570,7 @@
 }
 
 ACPI_EXPORT_SYMBOL(acpi_get_gpe_status)
+#endif                         /*  ACPI_FUTURE_USAGE  */
 
 
/*******************************************************************************
  *
diff -Nau acpica-unix-20060707/drivers/acpi/events/evxface.c 
linux-acpi-2.6/drivers/acpi/events/evxface.c
--- acpica-unix-20060707/drivers/acpi/events/evxface.c  2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/drivers/acpi/events/evxface.c        2006-07-07 
20:46:57.000000000 -0400
@@ -61,6 +61,7 @@
  * DESCRIPTION: Saves the pointer to the handler function
  *
  
******************************************************************************/
+#ifdef ACPI_FUTURE_USAGE
 acpi_status acpi_install_exception_handler(acpi_exception_handler handler)
 {
        acpi_status status;
@@ -89,6 +90,7 @@
 }
 
 ACPI_EXPORT_SYMBOL(acpi_install_exception_handler)
+#endif                         /*  ACPI_FUTURE_USAGE  */
 
 
/*******************************************************************************
  *
@@ -136,7 +138,9 @@
        acpi_gbl_fixed_event_handlers[event].handler = handler;
        acpi_gbl_fixed_event_handlers[event].context = context;
 
-       status = acpi_enable_event(event, 0);
+       status = acpi_clear_event(event);
+       if (ACPI_SUCCESS(status))
+               status = acpi_enable_event(event, 0);
        if (ACPI_FAILURE(status)) {
                ACPI_WARNING((AE_INFO, "Could not enable fixed event %X",
                              event));
@@ -410,12 +414,13 @@
 
        if ((!device) ||
            (!handler) || (handler_type > ACPI_MAX_NOTIFY_HANDLER_TYPE)) {
-               return_ACPI_STATUS(AE_BAD_PARAMETER);
+               status = AE_BAD_PARAMETER;
+               goto exit;
        }
 
        status = acpi_ut_acquire_mutex(ACPI_MTX_NAMESPACE);
        if (ACPI_FAILURE(status)) {
-               return_ACPI_STATUS(status);
+               goto exit;
        }
 
        /* Convert and validate the device handle */
@@ -423,7 +428,7 @@
        node = acpi_ns_map_handle_to_node(device);
        if (!node) {
                status = AE_BAD_PARAMETER;
-               goto unlock_and_exit;
+               goto unlock;
        }
 
        /* Root Object */
@@ -437,7 +442,16 @@
                    ((handler_type & ACPI_DEVICE_NOTIFY) &&
                     !acpi_gbl_device_notify.handler)) {
                        status = AE_NOT_EXIST;
-                       goto unlock_and_exit;
+                       goto unlock;
+               }
+
+               /* Make sure all deferred tasks are completed */
+
+               (void)acpi_ut_release_mutex(ACPI_MTX_NAMESPACE);
+               acpi_os_wait_events_complete(NULL);
+               status = acpi_ut_acquire_mutex(ACPI_MTX_NAMESPACE);
+               if (ACPI_FAILURE(status)) {
+                       goto exit;
                }
 
                if (handler_type & ACPI_SYSTEM_NOTIFY) {
@@ -460,7 +474,7 @@
 
                if (!acpi_ev_is_notify_object(node)) {
                        status = AE_TYPE;
-                       goto unlock_and_exit;
+                       goto unlock;
                }
 
                /* Check for an existing internal object */
@@ -468,7 +482,7 @@
                obj_desc = acpi_ns_get_attached_object(node);
                if (!obj_desc) {
                        status = AE_NOT_EXIST;
-                       goto unlock_and_exit;
+                       goto unlock;
                }
 
                /* Object exists - make sure there's an existing handler */
@@ -482,11 +496,18 @@
 
                        if (notify_obj->notify.handler != handler) {
                                status = AE_BAD_PARAMETER;
-                               goto unlock_and_exit;
+                               goto unlock;
                        }
+                       /* Make sure all deferred tasks are completed */
 
-                       /* Remove the handler */
+                       (void)acpi_ut_release_mutex(ACPI_MTX_NAMESPACE);
+                       acpi_os_wait_events_complete(NULL);
+                       status = acpi_ut_acquire_mutex(ACPI_MTX_NAMESPACE);
+                       if (ACPI_FAILURE(status)) {
+                               goto exit;
+                       }
 
+                       /* Remove the handler */
                        obj_desc->common_notify.system_notify = NULL;
                        acpi_ut_remove_reference(notify_obj);
                }
@@ -500,18 +521,28 @@
 
                        if (notify_obj->notify.handler != handler) {
                                status = AE_BAD_PARAMETER;
-                               goto unlock_and_exit;
+                               goto unlock;
                        }
+                       /* Make sure all deferred tasks are completed */
 
-                       /* Remove the handler */
+                       (void)acpi_ut_release_mutex(ACPI_MTX_NAMESPACE);
+                       acpi_os_wait_events_complete(NULL);
+                       status = acpi_ut_acquire_mutex(ACPI_MTX_NAMESPACE);
+                       if (ACPI_FAILURE(status)) {
+                               goto exit;
+                       }
 
+                       /* Remove the handler */
                        obj_desc->common_notify.device_notify = NULL;
                        acpi_ut_remove_reference(notify_obj);
                }
        }
 
-      unlock_and_exit:
+unlock:
        (void)acpi_ut_release_mutex(ACPI_MTX_NAMESPACE);
+exit:
+       if (ACPI_FAILURE(status))
+               ACPI_EXCEPTION((AE_INFO, status, "Removing notify handler"));
        return_ACPI_STATUS(status);
 }
 
@@ -549,12 +580,13 @@
        /* Parameter validation */
 
        if ((!address) || (type > ACPI_GPE_XRUPT_TYPE_MASK)) {
-               return_ACPI_STATUS(AE_BAD_PARAMETER);
+               status = AE_BAD_PARAMETER;
+               goto exit;
        }
 
        status = acpi_ut_acquire_mutex(ACPI_MTX_EVENTS);
        if (ACPI_FAILURE(status)) {
-               return_ACPI_STATUS(status);
+               goto exit;
        }
 
        /* Ensure that we have a valid GPE number */
@@ -562,7 +594,7 @@
        gpe_event_info = acpi_ev_get_gpe_event_info(gpe_device, gpe_number);
        if (!gpe_event_info) {
                status = AE_BAD_PARAMETER;
-               goto unlock_and_exit;
+               goto unlock;
        }
 
        /* Make sure that there isn't a handler there already */
@@ -570,7 +602,7 @@
        if ((gpe_event_info->flags & ACPI_GPE_DISPATCH_MASK) ==
            ACPI_GPE_DISPATCH_HANDLER) {
                status = AE_ALREADY_EXISTS;
-               goto unlock_and_exit;
+               goto unlock;
        }
 
        /* Allocate and init handler object */
@@ -578,7 +610,7 @@
        handler = ACPI_ALLOCATE_ZEROED(sizeof(struct acpi_handler_info));
        if (!handler) {
                status = AE_NO_MEMORY;
-               goto unlock_and_exit;
+               goto unlock;
        }
 
        handler->address = address;
@@ -589,7 +621,7 @@
 
        status = acpi_ev_disable_gpe(gpe_event_info);
        if (ACPI_FAILURE(status)) {
-               goto unlock_and_exit;
+               goto unlock;
        }
 
        /* Install the handler */
@@ -604,8 +636,12 @@
 
        acpi_os_release_lock(acpi_gbl_gpe_lock, flags);
 
-      unlock_and_exit:
+unlock:
        (void)acpi_ut_release_mutex(ACPI_MTX_EVENTS);
+exit:
+       if (ACPI_FAILURE(status))
+               ACPI_EXCEPTION((AE_INFO, status,
+                               "Installing notify handler failed"));
        return_ACPI_STATUS(status);
 }
 
@@ -677,6 +713,15 @@
                goto unlock_and_exit;
        }
 
+       /* Make sure all deferred tasks are completed */
+
+       (void)acpi_ut_release_mutex(ACPI_MTX_EVENTS);
+       acpi_os_wait_events_complete(NULL);
+       status = acpi_ut_acquire_mutex(ACPI_MTX_EVENTS);
+       if (ACPI_FAILURE(status)) {
+               return_ACPI_STATUS(status);
+       }
+
        /* Remove the handler */
 
        flags = acpi_os_acquire_lock(acpi_gbl_gpe_lock);
diff -Nau acpica-unix-20060707/drivers/acpi/parser/pstree.c 
linux-acpi-2.6/drivers/acpi/parser/pstree.c
--- acpica-unix-20060707/drivers/acpi/parser/pstree.c   2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/drivers/acpi/parser/pstree.c 2006-06-15 23:16:30.000000000 
-0400
@@ -174,6 +174,7 @@
        }
 }
 
+#ifdef ACPI_FUTURE_USAGE
 
/*******************************************************************************
  *
  * FUNCTION:    acpi_ps_get_depth_next
@@ -305,3 +306,4 @@
        return (child);
 }
 #endif
+#endif                         /*  ACPI_FUTURE_USAGE  */
diff -Nau acpica-unix-20060707/drivers/acpi/parser/psutils.c 
linux-acpi-2.6/drivers/acpi/parser/psutils.c
--- acpica-unix-20060707/drivers/acpi/parser/psutils.c  2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/drivers/acpi/parser/psutils.c        2006-06-15 
23:16:30.000000000 -0400
@@ -139,10 +139,12 @@
                /* The generic op (default) is by far the most common (16 to 1) 
*/
 
                op = acpi_os_acquire_object(acpi_gbl_ps_node_cache);
+               memset(op, 0, sizeof(struct acpi_parse_obj_common));
        } else {
                /* Extended parseop */
 
                op = acpi_os_acquire_object(acpi_gbl_ps_node_ext_cache);
+               memset(op, 0, sizeof(struct acpi_parse_obj_named));
        }
 
        /* Initialize the Op */
@@ -211,6 +213,7 @@
 /*
  * Get op's name (4-byte name segment) or 0 if unnamed
  */
+#ifdef ACPI_FUTURE_USAGE
 u32 acpi_ps_get_name(union acpi_parse_object * op)
 {
 
@@ -224,6 +227,7 @@
 
        return (op->named.name);
 }
+#endif                         /*  ACPI_FUTURE_USAGE  */
 
 /*
  * Set op's name
diff -Nau acpica-unix-20060707/drivers/acpi/tables/tbconvrt.c 
linux-acpi-2.6/drivers/acpi/tables/tbconvrt.c
--- acpica-unix-20060707/drivers/acpi/tables/tbconvrt.c 2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/drivers/acpi/tables/tbconvrt.c       2006-06-15 
23:16:30.000000000 -0400
@@ -61,6 +61,9 @@
 acpi_tb_convert_fadt2(struct fadt_descriptor *local_fadt,
                      struct fadt_descriptor *original_fadt);
 
+u8 acpi_fadt_is_v1;
+ACPI_EXPORT_SYMBOL(acpi_fadt_is_v1)
+
 
/*******************************************************************************
  *
  * FUNCTION:    acpi_tb_get_table_count
@@ -221,6 +224,7 @@
 
        /* ACPI 1.0 FACS */
        /* The BIOS stored FADT should agree with Revision 1.0 */
+       acpi_fadt_is_v1 = 1;
 
        /*
         * Copy the table header and the common part of the tables.
@@ -252,9 +256,12 @@
        /*
         * Processor Performance State Control. This is the value OSPM writes to
         * the SMI_CMD register to assume processor performance state control
-        * responsibility. There isn't any equivalence in 1.0, leave it zeroed.
+        * responsibility. There isn't any equivalence in 1.0, but as many 1.x
+        * ACPI tables contain _PCT and _PSS we also keep this value, unless
+        * acpi_strict is set.
         */
-       local_fadt->pstate_cnt = 0;
+       if (acpi_strict)
+               local_fadt->pstate_cnt = 0;
 
        /*
         * Support for the _CST object and C States change notification.
diff -Nau acpica-unix-20060707/drivers/acpi/tables/tbxface.c 
linux-acpi-2.6/drivers/acpi/tables/tbxface.c
--- acpica-unix-20060707/drivers/acpi/tables/tbxface.c  2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/drivers/acpi/tables/tbxface.c        2006-07-07 
20:46:57.000000000 -0400
@@ -123,6 +123,7 @@
 
 ACPI_EXPORT_SYMBOL(acpi_load_tables)
 
+#ifdef ACPI_FUTURE_USAGE
 
/*******************************************************************************
  *
  * FUNCTION:    acpi_load_table
@@ -332,6 +333,7 @@
 }
 
 ACPI_EXPORT_SYMBOL(acpi_get_table_header)
+#endif                         /*  ACPI_FUTURE_USAGE  */
 
 
/*******************************************************************************
  *
diff -Nau acpica-unix-20060707/drivers/acpi/dispatcher/dswstate.c 
linux-acpi-2.6/drivers/acpi/dispatcher/dswstate.c
--- acpica-unix-20060707/drivers/acpi/dispatcher/dswstate.c     2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/drivers/acpi/dispatcher/dswstate.c   2006-06-15 
23:16:30.000000000 -0400
@@ -65,6 +65,7 @@
                                  struct acpi_walk_state *walk_state);
 #endif
 
+#ifdef ACPI_FUTURE_USAGE
 
/*******************************************************************************
  *
  * FUNCTION:    acpi_ds_result_remove
@@ -126,6 +127,7 @@
 
        return (AE_OK);
 }
+#endif                         /*  ACPI_FUTURE_USAGE  */
 
 
/*******************************************************************************
  *
diff -Nau acpica-unix-20060707/drivers/acpi/resources/rsinfo.c 
linux-acpi-2.6/drivers/acpi/resources/rsinfo.c
--- acpica-unix-20060707/drivers/acpi/resources/rsinfo.c        2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/drivers/acpi/resources/rsinfo.c      2006-06-15 
23:16:30.000000000 -0400
@@ -116,6 +116,7 @@
        acpi_rs_convert_ext_address64   /* 0x0B, 
ACPI_RESOURCE_NAME_EXTENDED_ADDRESS64 */
 };
 
+#ifdef ACPI_FUTURE_USAGE
 #if defined(ACPI_DEBUG_OUTPUT) || defined(ACPI_DEBUGGER)
 
 /* Dispatch table for resource dump functions */
@@ -141,6 +142,7 @@
 };
 #endif
 
+#endif /* ACPI_FUTURE_USAGE */
 /*
  * Base sizes for external AML resource descriptors, indexed by internal type.
  * Includes size of the descriptor header (1 byte for small descriptors,
diff -Nau acpica-unix-20060707/drivers/acpi/resources/rslist.c 
linux-acpi-2.6/drivers/acpi/resources/rslist.c
--- acpica-unix-20060707/drivers/acpi/resources/rslist.c        2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/drivers/acpi/resources/rslist.c      2006-06-15 
23:16:30.000000000 -0400
@@ -64,7 +64,7 @@
 acpi_status
 acpi_rs_convert_aml_to_resources(u8 * aml,
                                 u32 length,
-                                u32 offset, u8 resource_index, void *context)
+                                u32 offset, u8 resource_index, void **context)
 {
        struct acpi_resource **resource_ptr =
            ACPI_CAST_INDIRECT_PTR(struct acpi_resource, context);
diff -Nau acpica-unix-20060707/drivers/acpi/resources/rsutils.c 
linux-acpi-2.6/drivers/acpi/resources/rsutils.c
--- acpica-unix-20060707/drivers/acpi/resources/rsutils.c       2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/drivers/acpi/resources/rsutils.c     2006-06-30 
02:58:48.000000000 -0400
@@ -555,6 +555,7 @@
  *
  
******************************************************************************/
 
+#ifdef ACPI_FUTURE_USAGE
 acpi_status
 acpi_rs_get_prs_method_data(struct acpi_namespace_node *node,
                            struct acpi_buffer *ret_buffer)
@@ -586,6 +587,7 @@
        acpi_ut_remove_reference(obj_desc);
        return_ACPI_STATUS(status);
 }
+#endif                         /*  ACPI_FUTURE_USAGE  */
 
 
/*******************************************************************************
  *
diff -Nau acpica-unix-20060707/drivers/acpi/resources/rsxface.c 
linux-acpi-2.6/drivers/acpi/resources/rsxface.c
--- acpica-unix-20060707/drivers/acpi/resources/rsxface.c       2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/drivers/acpi/resources/rsxface.c     2006-06-15 
23:16:30.000000000 -0400
@@ -218,6 +218,7 @@
 
 ACPI_EXPORT_SYMBOL(acpi_get_current_resources)
 
+#ifdef ACPI_FUTURE_USAGE
 
/*******************************************************************************
  *
  * FUNCTION:    acpi_get_possible_resources
@@ -259,6 +260,7 @@
 }
 
 ACPI_EXPORT_SYMBOL(acpi_get_possible_resources)
+#endif                         /*  ACPI_FUTURE_USAGE  */
 
 
/*******************************************************************************
  *
@@ -474,6 +476,8 @@
        return (AE_CTRL_TERMINATE);
 }
 
+ACPI_EXPORT_SYMBOL(acpi_rs_match_vendor_resource)
+
 
/*******************************************************************************
  *
  * FUNCTION:    acpi_walk_resources
diff -Nau acpica-unix-20060707/drivers/acpi/executer/excreate.c 
linux-acpi-2.6/drivers/acpi/executer/excreate.c
--- acpica-unix-20060707/drivers/acpi/executer/excreate.c       2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/drivers/acpi/executer/excreate.c     2006-06-30 
14:28:00.000000000 -0400
@@ -63,7 +63,7 @@
  * DESCRIPTION: Create a new named alias
  *
  
******************************************************************************/
-acpi_status acpi_ex_create_alias(struct acpi_walk_state * walk_state)
+acpi_status acpi_ex_create_alias(struct acpi_walk_state *walk_state)
 {
        struct acpi_namespace_node *target_node;
        struct acpi_namespace_node *alias_node;
diff -Nau acpica-unix-20060707/drivers/acpi/namespace/nsdump.c 
linux-acpi-2.6/drivers/acpi/namespace/nsdump.c
--- acpica-unix-20060707/drivers/acpi/namespace/nsdump.c        2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/drivers/acpi/namespace/nsdump.c      2006-06-15 
23:16:30.000000000 -0400
@@ -588,6 +588,7 @@
        return (AE_OK);
 }
 
+#ifdef ACPI_FUTURE_USAGE
 
/*******************************************************************************
  *
  * FUNCTION:    acpi_ns_dump_objects
@@ -626,6 +627,7 @@
                                     acpi_ns_dump_one_object, (void *)&info,
                                     NULL);
 }
+#endif                         /* ACPI_FUTURE_USAGE */
 
 
/*******************************************************************************
  *
@@ -697,5 +699,5 @@
                             ACPI_OWNER_ID_MAX, search_handle);
        return_VOID;
 }
-#endif
-#endif
+#endif                         /* _ACPI_ASL_COMPILER */
+#endif                         /* defined(ACPI_DEBUG_OUTPUT) || 
defined(ACPI_DEBUGGER) */
diff -Nau acpica-unix-20060707/drivers/acpi/namespace/nsxfeval.c 
linux-acpi-2.6/drivers/acpi/namespace/nsxfeval.c
--- acpica-unix-20060707/drivers/acpi/namespace/nsxfeval.c      2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/drivers/acpi/namespace/nsxfeval.c    2006-07-01 
17:18:26.000000000 -0400
@@ -49,6 +49,7 @@
 #define _COMPONENT          ACPI_NAMESPACE
 ACPI_MODULE_NAME("nsxfeval")
 
+#ifdef ACPI_FUTURE_USAGE
 
/*******************************************************************************
  *
  * FUNCTION:    acpi_evaluate_object_typed
@@ -132,7 +133,7 @@
 
                /* Caller used ACPI_ALLOCATE_BUFFER, free the return buffer */
 
-               acpi_os_free(return_buffer->pointer);
+               ACPI_FREE(return_buffer->pointer);
                return_buffer->pointer = NULL;
        }
 
@@ -141,6 +142,7 @@
 }
 
 ACPI_EXPORT_SYMBOL(acpi_evaluate_object_typed)
+#endif                         /*  ACPI_FUTURE_USAGE  */
 
 
/*******************************************************************************
  *
diff -Nau acpica-unix-20060707/drivers/acpi/utilities/utmisc.c 
linux-acpi-2.6/drivers/acpi/utilities/utmisc.c
--- acpica-unix-20060707/drivers/acpi/utilities/utmisc.c        2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/drivers/acpi/utilities/utmisc.c      2006-07-07 
20:46:57.000000000 -0400
@@ -41,6 +41,8 @@
  * POSSIBILITY OF SUCH DAMAGES.
  */
 
+#include <linux/module.h>
+
 #include <acpi/acpi.h>
 #include <acpi/acnamesp.h>
 
@@ -975,6 +977,7 @@
        acpi_os_vprintf(format, args);
        acpi_os_printf(" [%X]\n", ACPI_CA_VERSION);
 }
+EXPORT_SYMBOL(acpi_ut_exception);
 
 void ACPI_INTERNAL_VAR_XFACE
 acpi_ut_warning(char *module_name, u32 line_number, char *format, ...)
diff -Nau acpica-unix-20060707/drivers/acpi/utilities/utxface.c 
linux-acpi-2.6/drivers/acpi/utilities/utxface.c
--- acpica-unix-20060707/drivers/acpi/utilities/utxface.c       2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/drivers/acpi/utilities/utxface.c     2006-06-30 
03:04:26.000000000 -0400
@@ -351,6 +351,7 @@
 
 ACPI_EXPORT_SYMBOL(acpi_terminate)
 
+#ifdef ACPI_FUTURE_USAGE
 
/*******************************************************************************
  *
  * FUNCTION:    acpi_subsystem_status
@@ -491,6 +492,7 @@
 }
 
 ACPI_EXPORT_SYMBOL(acpi_install_initialization_handler)
+#endif                         /*  ACPI_FUTURE_USAGE  */
 
 /*****************************************************************************
  *
diff -Nau acpica-unix-20060707/drivers/acpi/utilities/utdebug.c 
linux-acpi-2.6/drivers/acpi/utilities/utdebug.c
--- acpica-unix-20060707/drivers/acpi/utilities/utdebug.c       2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/drivers/acpi/utilities/utdebug.c     2006-07-07 
20:46:53.000000000 -0400
@@ -47,7 +47,7 @@
 ACPI_MODULE_NAME("utdebug")
 
 #ifdef ACPI_DEBUG_OUTPUT
-static u32 acpi_gbl_prev_thread_id = 0xFFFFFFFF;
+static acpi_thread_id acpi_gbl_prev_thread_id;
 static char *acpi_gbl_fn_entry_str = "----Entry";
 static char *acpi_gbl_fn_exit_str = "----Exit-";
 
@@ -181,7 +181,7 @@
                if (ACPI_LV_THREADS & acpi_dbg_level) {
                        acpi_os_printf
                            ("\n**** Context Switch from TID %X to TID %X 
****\n\n",
-                            acpi_gbl_prev_thread_id, thread_id);
+                            (u32) acpi_gbl_prev_thread_id, (u32) thread_id);
                }
 
                acpi_gbl_prev_thread_id = thread_id;
diff -Nau acpica-unix-20060707/drivers/acpi/utilities/utresrc.c 
linux-acpi-2.6/drivers/acpi/utilities/utresrc.c
--- acpica-unix-20060707/drivers/acpi/utilities/utresrc.c       2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/drivers/acpi/utilities/utresrc.c     2006-06-30 
03:04:26.000000000 -0400
@@ -258,7 +258,7 @@
 acpi_status
 acpi_ut_walk_aml_resources(u8 * aml,
                           acpi_size aml_length,
-                          acpi_walk_aml_callback user_function, void *context)
+                          acpi_walk_aml_callback user_function, void **context)
 {
        acpi_status status;
        u8 *end_aml;
@@ -319,7 +319,7 @@
                        /* Return the pointer to the end_tag if requested */
 
                        if (!user_function) {
-                               *(void **)context = aml;
+                               *context = aml;
                        }
 
                        /* Normal exit */
@@ -610,7 +610,7 @@
 
        status = acpi_ut_walk_aml_resources(obj_desc->buffer.pointer,
                                            obj_desc->buffer.length, NULL,
-                                           end_tag);
+                                           (void **)end_tag);
 
        return_ACPI_STATUS(status);
 }
diff -Nau acpica-unix-20060707/drivers/acpi/utilities/utstate.c 
linux-acpi-2.6/drivers/acpi/utilities/utstate.c
--- acpica-unix-20060707/drivers/acpi/utilities/utstate.c       2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/drivers/acpi/utilities/utstate.c     2006-07-07 
20:46:57.000000000 -0400
@@ -161,6 +161,7 @@
        if (state) {
 
                /* Initialize */
+               memset(state, 0, sizeof(union acpi_generic_state));
                state->common.descriptor_type = ACPI_DESC_TYPE_STATE;
        }
 
diff -Nau acpica-unix-20060707/drivers/acpi/utilities/utglobal.c 
linux-acpi-2.6/drivers/acpi/utilities/utglobal.c
--- acpica-unix-20060707/drivers/acpi/utilities/utglobal.c      2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/drivers/acpi/utilities/utglobal.c    2006-06-30 
14:28:00.000000000 -0400
@@ -142,16 +142,11 @@
  */
 
 /* Debug switch - level and trace mask */
-
-#ifdef ACPI_DEBUG_OUTPUT
 u32 acpi_dbg_level = ACPI_DEBUG_DEFAULT;
-#else
-u32 acpi_dbg_level = ACPI_NORMAL_DEFAULT;
-#endif
 
 /* Debug switch - layer (component) mask */
 
-u32 acpi_dbg_layer = ACPI_COMPONENT_DEFAULT;
+u32 acpi_dbg_layer = ACPI_COMPONENT_DEFAULT | ACPI_ALL_DRIVERS;
 u32 acpi_gbl_nesting_level = 0;
 
 /* Debugger globals */
@@ -845,7 +840,5 @@
        return_VOID;
 }
 
-/* Public globals */
-
 ACPI_EXPORT_SYMBOL(acpi_dbg_level)
-    ACPI_EXPORT_SYMBOL(acpi_dbg_layer)
+ACPI_EXPORT_SYMBOL(acpi_dbg_layer)
diff -Nau acpica-unix-20060707/drivers/acpi/utilities/utmutex.c 
linux-acpi-2.6/drivers/acpi/utilities/utmutex.c
--- acpica-unix-20060707/drivers/acpi/utilities/utmutex.c       2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/drivers/acpi/utilities/utmutex.c     2006-07-07 
20:46:53.000000000 -0400
@@ -82,12 +82,9 @@
 
        /* Create the spinlocks for use at interrupt level */
 
-       status = acpi_os_create_lock(&acpi_gbl_gpe_lock);
-       if (ACPI_FAILURE(status)) {
-               return_ACPI_STATUS(status);
-       }
+       spin_lock_init(acpi_gbl_gpe_lock);
+       spin_lock_init(acpi_gbl_hardware_lock);
 
-       status = acpi_os_create_lock(&acpi_gbl_hardware_lock);
        return_ACPI_STATUS(status);
 }
 
@@ -247,14 +244,14 @@
 
        ACPI_DEBUG_PRINT((ACPI_DB_MUTEX,
                          "Thread %X attempting to acquire Mutex [%s]\n",
-                         this_thread_id, acpi_ut_get_mutex_name(mutex_id)));
+                         (u32) this_thread_id, 
acpi_ut_get_mutex_name(mutex_id)));
 
        status = acpi_os_acquire_mutex(acpi_gbl_mutex_info[mutex_id].mutex,
                                       ACPI_WAIT_FOREVER);
        if (ACPI_SUCCESS(status)) {
                ACPI_DEBUG_PRINT((ACPI_DB_MUTEX,
                                  "Thread %X acquired Mutex [%s]\n",
-                                 this_thread_id,
+                                 (u32) this_thread_id,
                                  acpi_ut_get_mutex_name(mutex_id)));
 
                acpi_gbl_mutex_info[mutex_id].use_count++;
@@ -262,7 +259,7 @@
        } else {
                ACPI_EXCEPTION((AE_INFO, status,
                                "Thread %X could not acquire Mutex [%X]",
-                               this_thread_id, mutex_id));
+                               (u32) this_thread_id, mutex_id));
        }
 
        return (status);
@@ -288,7 +285,7 @@
 
        this_thread_id = acpi_os_get_thread_id();
        ACPI_DEBUG_PRINT((ACPI_DB_MUTEX,
-                         "Thread %X releasing Mutex [%s]\n", this_thread_id,
+                         "Thread %X releasing Mutex [%s]\n", (u32) 
this_thread_id,
                          acpi_ut_get_mutex_name(mutex_id)));
 
        if (mutex_id > ACPI_MAX_MUTEX) {
diff -Nau acpica-unix-20060707/drivers/acpi/utilities/utalloc.c 
linux-acpi-2.6/drivers/acpi/utilities/utalloc.c
--- acpica-unix-20060707/drivers/acpi/utilities/utalloc.c       2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/drivers/acpi/utilities/utalloc.c     2006-07-01 
17:18:26.000000000 -0400
@@ -166,10 +166,10 @@
 
        /* Free memory lists */
 
-       acpi_os_free(acpi_gbl_global_list);
+       ACPI_FREE(acpi_gbl_global_list);
        acpi_gbl_global_list = NULL;
 
-       acpi_os_free(acpi_gbl_ns_node_list);
+       ACPI_FREE(acpi_gbl_ns_node_list);
        acpi_gbl_ns_node_list = NULL;
 #endif
 
diff -Nau acpica-unix-20060707/drivers/acpi/utilities/utobject.c 
linux-acpi-2.6/drivers/acpi/utilities/utobject.c
--- acpica-unix-20060707/drivers/acpi/utilities/utobject.c      2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/drivers/acpi/utilities/utobject.c    2006-06-30 
03:04:26.000000000 -0400
@@ -321,6 +321,7 @@
 
        /* Mark the descriptor type */
 
+       memset(object, 0, sizeof(union acpi_operand_object));
        ACPI_SET_DESCRIPTOR_TYPE(object, ACPI_DESC_TYPE_OPERAND);
 
        ACPI_DEBUG_PRINT((ACPI_DB_ALLOCATIONS, "%p Size %X\n",
diff -Nau acpica-unix-20060707/drivers/acpi/utilities/utcache.c 
linux-acpi-2.6/drivers/acpi/utilities/utcache.c
--- acpica-unix-20060707/drivers/acpi/utilities/utcache.c       2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/drivers/acpi/utilities/utcache.c     2006-07-01 
17:18:26.000000000 -0400
@@ -162,7 +162,7 @@
 
        /* Now we can delete the cache object */
 
-       acpi_os_free(cache);
+       ACPI_FREE(cache);
        return (AE_OK);
 }
 
diff -Nau acpica-unix-20060707/include/acpi/acutils.h 
linux-acpi-2.6/include/acpi/acutils.h
--- acpica-unix-20060707/include/acpi/acutils.h 2006-07-07 20:33:32.000000000 
-0400
+++ linux-acpi-2.6/include/acpi/acutils.h       2006-06-30 21:38:56.000000000 
-0400
@@ -81,7 +81,7 @@
 acpi_status(*acpi_walk_aml_callback) (u8 * aml,
                                      u32 length,
                                      u32 offset,
-                                     u8 resource_index, void *context);
+                                     u8 resource_index, void **context);
 
 typedef
 acpi_status(*acpi_pkg_callback) (u8 object_type,
@@ -425,11 +425,13 @@
                                     u16 action,
                                     union acpi_generic_state **state_list);
 
+#ifdef ACPI_FUTURE_USAGE
 acpi_status
 acpi_ut_create_pkg_state_and_push(void *internal_object,
                                  void *external_object,
                                  u16 index,
                                  union acpi_generic_state **state_list);
+#endif                         /* ACPI_FUTURE_USAGE */
 
 union acpi_generic_state *acpi_ut_create_control_state(void);
 
@@ -496,7 +498,7 @@
 acpi_status
 acpi_ut_walk_aml_resources(u8 * aml,
                           acpi_size aml_length,
-                          acpi_walk_aml_callback user_function, void *context);
+                          acpi_walk_aml_callback user_function, void 
**context);
 
 acpi_status acpi_ut_validate_resource(void *aml, u8 * return_index);
 
@@ -551,7 +553,9 @@
 void
 acpi_ut_free_and_track(void *address, u32 component, char *module, u32 line);
 
+#ifdef ACPI_FUTURE_USAGE
 void acpi_ut_dump_allocation_info(void);
+#endif                         /* ACPI_FUTURE_USAGE */
 
 void acpi_ut_dump_allocations(u32 component, char *module);
 
diff -Nau acpica-unix-20060707/include/acpi/achware.h 
linux-acpi-2.6/include/acpi/achware.h
--- acpica-unix-20060707/include/acpi/achware.h 2006-07-07 20:33:32.000000000 
-0400
+++ linux-acpi-2.6/include/acpi/achware.h       2006-03-31 00:46:34.000000000 
-0500
@@ -102,9 +102,11 @@
 acpi_hw_clear_gpe_block(struct acpi_gpe_xrupt_info *gpe_xrupt_info,
                        struct acpi_gpe_block_info *gpe_block);
 
+#ifdef ACPI_FUTURE_USAGE
 acpi_status
 acpi_hw_get_gpe_status(struct acpi_gpe_event_info *gpe_event_info,
                       acpi_event_status * event_status);
+#endif                         /* ACPI_FUTURE_USAGE */
 
 acpi_status acpi_hw_disable_all_gpes(void);
 
@@ -116,6 +118,7 @@
 acpi_hw_enable_runtime_gpe_block(struct acpi_gpe_xrupt_info *gpe_xrupt_info,
                                 struct acpi_gpe_block_info *gpe_block);
 
+#ifdef ACPI_FUTURE_USAGE
 /*
  * hwtimer - ACPI Timer prototypes
  */
@@ -125,5 +128,6 @@
 
 acpi_status
 acpi_get_timer_duration(u32 start_ticks, u32 end_ticks, u32 * time_elapsed);
+#endif                         /* ACPI_FUTURE_USAGE */
 
 #endif                         /* __ACHWARE_H__ */
diff -Nau acpica-unix-20060707/include/acpi/acinterp.h 
linux-acpi-2.6/include/acpi/acinterp.h
--- acpica-unix-20060707/include/acpi/acinterp.h        2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/include/acpi/acinterp.h      2006-07-07 20:46:57.000000000 
-0400
@@ -372,10 +372,12 @@
                      u32 num_levels,
                      char *note, char *module_name, u32 line_number);
 
+#ifdef ACPI_FUTURE_USAGE
 void
 acpi_ex_dump_object_descriptor(union acpi_operand_object *object, u32 flags);
 
 void acpi_ex_dump_namespace_node(struct acpi_namespace_node *node, u32 flags);
+#endif                         /* ACPI_FUTURE_USAGE */
 
 /*
  * exnames - AML namestring support
diff -Nau acpica-unix-20060707/include/acpi/acnamesp.h 
linux-acpi-2.6/include/acpi/acnamesp.h
--- acpica-unix-20060707/include/acpi/acnamesp.h        2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/include/acpi/acnamesp.h      2006-06-15 23:16:34.000000000 
-0400
@@ -147,7 +147,9 @@
 /*
  * nsdump - Namespace dump/print utilities
  */
+#ifdef ACPI_FUTURE_USAGE
 void acpi_ns_dump_tables(acpi_handle search_base, u32 max_depth);
+#endif                         /* ACPI_FUTURE_USAGE */
 
 void acpi_ns_dump_entry(acpi_handle handle, u32 debug_level);
 
@@ -160,11 +162,13 @@
 acpi_ns_dump_one_object(acpi_handle obj_handle,
                        u32 level, void *context, void **return_value);
 
+#ifdef ACPI_FUTURE_USAGE
 void
 acpi_ns_dump_objects(acpi_object_type type,
                     u8 display_type,
                     u32 max_depth,
                     acpi_owner_id owner_id, acpi_handle start_handle);
+#endif                         /* ACPI_FUTURE_USAGE */
 
 /*
  * nseval - Namespace evaluation functions
diff -Nau acpica-unix-20060707/include/acpi/acdebug.h 
linux-acpi-2.6/include/acpi/acdebug.h
--- acpica-unix-20060707/include/acpi/acdebug.h 2006-07-07 20:33:32.000000000 
-0400
+++ linux-acpi-2.6/include/acpi/acdebug.h       2006-03-31 00:46:34.000000000 
-0500
@@ -196,8 +196,6 @@
 
 void ACPI_SYSTEM_XFACE acpi_db_execute_thread(void *context);
 
-acpi_status acpi_db_user_commands(char prompt, union acpi_parse_object *op);
-
 /*
  * dbstats - Generation and display of ACPI table statistics
  */
diff -Nau acpica-unix-20060707/include/acpi/acresrc.h 
linux-acpi-2.6/include/acpi/acresrc.h
--- acpica-unix-20060707/include/acpi/acresrc.h 2006-07-07 20:33:32.000000000 
-0400
+++ linux-acpi-2.6/include/acpi/acresrc.h       2006-07-07 20:46:57.000000000 
-0400
@@ -168,6 +168,7 @@
 /*
  * rsutils
  */
+
 acpi_status
 acpi_rs_get_prt_method_data(struct acpi_namespace_node *node,
                            struct acpi_buffer *ret_buffer);
@@ -206,7 +207,7 @@
 acpi_status
 acpi_rs_convert_aml_to_resources(u8 * aml,
                                 u32 length,
-                                u32 offset, u8 resource_index, void *context);
+                                u32 offset, u8 resource_index, void **context);
 
 acpi_status
 acpi_rs_convert_resources_to_aml(struct acpi_resource *resource,
diff -Nau acpica-unix-20060707/include/acpi/acpixf.h 
linux-acpi-2.6/include/acpi/acpixf.h
--- acpica-unix-20060707/include/acpi/acpixf.h  2006-07-07 20:33:32.000000000 
-0400
+++ linux-acpi-2.6/include/acpi/acpixf.h        2006-06-15 23:16:34.000000000 
-0400
@@ -59,20 +59,26 @@
 
 acpi_status acpi_terminate(void);
 
+#ifdef ACPI_FUTURE_USAGE
 acpi_status acpi_subsystem_status(void);
+#endif
 
 acpi_status acpi_enable(void);
 
 acpi_status acpi_disable(void);
 
+#ifdef ACPI_FUTURE_USAGE
 acpi_status acpi_get_system_info(struct acpi_buffer *ret_buffer);
+#endif
 
 const char *acpi_format_exception(acpi_status exception);
 
 acpi_status acpi_purge_cached_objects(void);
 
+#ifdef ACPI_FUTURE_USAGE
 acpi_status
 acpi_install_initialization_handler(acpi_init_handler handler, u32 function);
+#endif
 
 /*
  * ACPI Memory managment
@@ -91,6 +97,7 @@
 
 acpi_status acpi_load_tables(void);
 
+#ifdef ACPI_FUTURE_USAGE
 acpi_status acpi_load_table(struct acpi_table_header *table_ptr);
 
 acpi_status acpi_unload_table(acpi_table_type table_type);
@@ -98,6 +105,7 @@
 acpi_status
 acpi_get_table_header(acpi_table_type table_type,
                      u32 instance, struct acpi_table_header *out_table_header);
+#endif                         /*  ACPI_FUTURE_USAGE  */
 
 acpi_status
 acpi_get_table(acpi_table_type table_type,
@@ -153,12 +161,14 @@
                     struct acpi_object_list *parameter_objects,
                     struct acpi_buffer *return_object_buffer);
 
+#ifdef ACPI_FUTURE_USAGE
 acpi_status
 acpi_evaluate_object_typed(acpi_handle object,
                           acpi_string pathname,
                           struct acpi_object_list *external_params,
                           struct acpi_buffer *return_buffer,
                           acpi_object_type return_type);
+#endif
 
 acpi_status
 acpi_get_object_info(acpi_handle handle, struct acpi_buffer *return_buffer);
@@ -207,7 +217,9 @@
                         u32 gpe_number,
                         u32 type, acpi_event_handler address, void *context);
 
+#ifdef ACPI_FUTURE_USAGE
 acpi_status acpi_install_exception_handler(acpi_exception_handler handler);
+#endif
 
 /*
  * Event interfaces
@@ -226,7 +238,9 @@
 
 acpi_status acpi_clear_event(u32 event);
 
+#ifdef ACPI_FUTURE_USAGE
 acpi_status acpi_get_event_status(u32 event, acpi_event_status * event_status);
+#endif                         /*  ACPI_FUTURE_USAGE  */
 
 acpi_status acpi_set_gpe_type(acpi_handle gpe_device, u32 gpe_number, u8 type);
 
@@ -236,10 +250,12 @@
 
 acpi_status acpi_clear_gpe(acpi_handle gpe_device, u32 gpe_number, u32 flags);
 
+#ifdef ACPI_FUTURE_USAGE
 acpi_status
 acpi_get_gpe_status(acpi_handle gpe_device,
                    u32 gpe_number,
                    u32 flags, acpi_event_status * event_status);
+#endif                         /*  ACPI_FUTURE_USAGE  */
 
 acpi_status
 acpi_install_gpe_block(acpi_handle gpe_device,
@@ -265,9 +281,11 @@
 acpi_get_current_resources(acpi_handle device_handle,
                           struct acpi_buffer *ret_buffer);
 
+#ifdef ACPI_FUTURE_USAGE
 acpi_status
 acpi_get_possible_resources(acpi_handle device_handle,
                            struct acpi_buffer *ret_buffer);
+#endif
 
 acpi_status
 acpi_walk_resources(acpi_handle device_handle,
@@ -296,17 +314,19 @@
 acpi_status
 acpi_set_firmware_waking_vector(acpi_physical_address physical_address);
 
+#ifdef ACPI_FUTURE_USAGE
 acpi_status
 acpi_get_firmware_waking_vector(acpi_physical_address * physical_address);
+#endif
 
 acpi_status
 acpi_get_sleep_type_data(u8 sleep_state, u8 * slp_typ_a, u8 * slp_typ_b);
 
 acpi_status acpi_enter_sleep_state_prep(u8 sleep_state);
 
-acpi_status acpi_enter_sleep_state(u8 sleep_state);
+acpi_status asmlinkage acpi_enter_sleep_state(u8 sleep_state);
 
-acpi_status acpi_enter_sleep_state_s4bios(void);
+acpi_status asmlinkage acpi_enter_sleep_state_s4bios(void);
 
 acpi_status acpi_leave_sleep_state(u8 sleep_state);
 
diff -Nau acpica-unix-20060707/include/acpi/actbl.h 
linux-acpi-2.6/include/acpi/actbl.h
--- acpica-unix-20060707/include/acpi/actbl.h   2006-07-07 20:33:32.000000000 
-0400
+++ linux-acpi-2.6/include/acpi/actbl.h 2006-06-15 23:16:34.000000000 -0400
@@ -354,6 +354,8 @@
        u8 flags;
 };
 
+extern u8 acpi_fadt_is_v1;     /* is set to 1 if FADT is revision 1,
+                                * needed for certain workarounds */
 /* Macros used to generate offsets to specific table fields */
 
 #define ACPI_FACS_OFFSET(f)             (u8) ACPI_OFFSET (struct 
facs_descriptor,f)
diff -Nau acpica-unix-20060707/include/acpi/actbl1.h 
linux-acpi-2.6/include/acpi/actbl1.h
--- acpica-unix-20060707/include/acpi/actbl1.h  2006-07-07 20:33:32.000000000 
-0400
+++ linux-acpi-2.6/include/acpi/actbl1.h        2006-06-15 23:16:34.000000000 
-0400
@@ -398,6 +398,7 @@
        u32 flags;              /* Interrupt Source Flags */
 };
 
+#ifdef DUPLICATE_DEFINITION_WITH_LINUX_ACPI_H
 
/*******************************************************************************
  *
  * MCFG - PCI Memory Mapped Configuration table and sub-table
@@ -415,6 +416,7 @@
        u8 end_bus_number;      /* Final PCI Bus number */
        u32 reserved;
 };
+#endif
 
 
/*******************************************************************************
  *
diff -Nau acpica-unix-20060707/include/acpi/acdispat.h 
linux-acpi-2.6/include/acpi/acdispat.h
--- acpica-unix-20060707/include/acpi/acdispat.h        2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/include/acpi/acdispat.h      2006-06-30 14:28:05.000000000 
-0400
@@ -328,9 +328,11 @@
 struct acpi_walk_state *acpi_ds_get_current_walk_state(struct acpi_thread_state
                                                       *thread);
 
+#ifdef ACPI_FUTURE_USAGE
 acpi_status
 acpi_ds_result_remove(union acpi_operand_object **object,
                      u32 index, struct acpi_walk_state *walk_state);
+#endif
 
 acpi_status
 acpi_ds_result_pop(union acpi_operand_object **object,
diff -Nau acpica-unix-20060707/include/acpi/acmacros.h 
linux-acpi-2.6/include/acpi/acmacros.h
--- acpica-unix-20060707/include/acpi/acmacros.h        2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/include/acpi/acmacros.h      2006-07-01 17:18:26.000000000 
-0400
@@ -726,7 +726,7 @@
 
 #define ACPI_ALLOCATE(a)            
acpi_ut_allocate((acpi_size)(a),_COMPONENT,_acpi_module_name,__LINE__)
 #define ACPI_ALLOCATE_ZEROED(a)     acpi_ut_allocate_zeroed((acpi_size)(a), 
_COMPONENT,_acpi_module_name,__LINE__)
-#define ACPI_FREE(a)                acpi_os_free(a)
+#define ACPI_FREE(a)                kfree(a)
 #define ACPI_MEM_TRACKING(a)
 
 #else
diff -Nau acpica-unix-20060707/include/acpi/aclocal.h 
linux-acpi-2.6/include/acpi/aclocal.h
--- acpica-unix-20060707/include/acpi/aclocal.h 2006-07-07 20:33:32.000000000 
-0400
+++ linux-acpi-2.6/include/acpi/aclocal.h       2006-07-07 20:46:58.000000000 
-0400
@@ -127,7 +127,7 @@
 
 /* This Thread ID means that the mutex is not in use (unlocked) */
 
-#define ACPI_MUTEX_NOT_ACQUIRED         (u32) -1
+#define ACPI_MUTEX_NOT_ACQUIRED         (acpi_thread_id) 0
 
 /* Table for the global mutexes */
 
diff -Nau acpica-unix-20060707/include/acpi/platform/aclinux.h 
linux-acpi-2.6/include/acpi/platform/aclinux.h
--- acpica-unix-20060707/include/acpi/platform/aclinux.h        2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/include/acpi/platform/aclinux.h      2006-07-07 
20:46:54.000000000 -0400
@@ -49,23 +49,29 @@
 
 #ifdef __KERNEL__
 
-#include <linux/config.h>
 #include <linux/string.h>
 #include <linux/kernel.h>
+#include <linux/module.h>
 #include <linux/ctype.h>
 #include <asm/system.h>
 #include <asm/atomic.h>
 #include <asm/div64.h>
 #include <asm/acpi.h>
+#include <linux/slab.h>
+#include <linux/spinlock_types.h>
+#include <asm/current.h>
 
 /* Host-dependent types and defines */
 
 #define ACPI_MACHINE_WIDTH          BITS_PER_LONG
 #define acpi_cache_t                        kmem_cache_t
-#define acpi_spinlock                       spinlock_t
+#define acpi_spinlock                   spinlock_t *
 #define ACPI_EXPORT_SYMBOL(symbol)  EXPORT_SYMBOL(symbol);
 #define strtoul                     simple_strtoul
 
+/* Full namespace pathname length limit - arbitrary */
+#define ACPI_PATHNAME_MAX              256
+
 #else                          /* !__KERNEL__ */
 
 #include <stdarg.h>
@@ -93,4 +99,10 @@
 
 #include "acgcc.h"
 
+#define acpi_cpu_flags unsigned long
+
+#define acpi_thread_id struct task_struct *
+
+static inline acpi_thread_id acpi_os_get_thread_id(void) { return current; }
+
 #endif                         /* __ACLINUX_H__ */
diff -Nau acpica-unix-20060707/include/acpi/acparser.h 
linux-acpi-2.6/include/acpi/acparser.h
--- acpica-unix-20060707/include/acpi/acparser.h        2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/include/acpi/acparser.h      2006-06-15 23:16:34.000000000 
-0400
@@ -167,8 +167,10 @@
 
 union acpi_parse_object *acpi_ps_get_arg(union acpi_parse_object *op, u32 
argn);
 
+#ifdef ACPI_FUTURE_USAGE
 union acpi_parse_object *acpi_ps_get_depth_next(union acpi_parse_object 
*origin,
                                                union acpi_parse_object *op);
+#endif                         /* ACPI_FUTURE_USAGE */
 
 /*
  * pswalk - parse tree walk routines
@@ -208,7 +210,9 @@
 
 u8 acpi_ps_is_prefix_char(u32 c);
 
+#ifdef ACPI_FUTURE_USAGE
 u32 acpi_ps_get_name(union acpi_parse_object *op);
+#endif                         /* ACPI_FUTURE_USAGE */
 
 void acpi_ps_set_name(union acpi_parse_object *op, u32 name);
 
diff -Nau acpica-unix-20060707/include/acpi/acglobal.h 
linux-acpi-2.6/include/acpi/acglobal.h
--- acpica-unix-20060707/include/acpi/acglobal.h        2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/include/acpi/acglobal.h      2006-06-30 14:28:05.000000000 
-0400
@@ -203,8 +203,10 @@
  * Spinlocks are used for interfaces that can be possibly called at
  * interrupt level
  */
-ACPI_EXTERN acpi_spinlock acpi_gbl_gpe_lock;   /* For GPE data structs and 
registers */
-ACPI_EXTERN acpi_spinlock acpi_gbl_hardware_lock;      /* For ACPI H/W except 
GPE registers */
+ACPI_EXTERN spinlock_t _acpi_gbl_gpe_lock;     /* For GPE data structs and 
registers */
+ACPI_EXTERN spinlock_t _acpi_gbl_hardware_lock;        /* For ACPI H/W except 
GPE registers */
+#define acpi_gbl_gpe_lock      &_acpi_gbl_gpe_lock
+#define acpi_gbl_hardware_lock &_acpi_gbl_hardware_lock
 
 /*****************************************************************************
  *
diff -Nau acpica-unix-20060707/include/acpi/acpiosxf.h 
linux-acpi-2.6/include/acpi/acpiosxf.h
--- acpica-unix-20060707/include/acpi/acpiosxf.h        2006-07-07 
20:33:32.000000000 -0400
+++ linux-acpi-2.6/include/acpi/acpiosxf.h      2006-07-07 19:19:30.000000000 
-0400
@@ -143,17 +143,17 @@
  */
 void *acpi_os_allocate(acpi_size size);
 
-void acpi_os_free(void *memory);
-
 acpi_status
 acpi_os_map_memory(acpi_physical_address physical_address,
-                  acpi_size size, void **logical_address);
+                  acpi_size size, void __iomem ** logical_address);
 
-void acpi_os_unmap_memory(void *logical_address, acpi_size size);
+void acpi_os_unmap_memory(void __iomem * logical_address, acpi_size size);
 
+#ifdef ACPI_FUTURE_USAGE
 acpi_status
 acpi_os_get_physical_address(void *logical_address,
                             acpi_physical_address * physical_address);
+#endif
 
 /*
  * Memory/Object Cache
@@ -175,13 +175,12 @@
  * Interrupt handlers
  */
 acpi_status
-acpi_os_install_interrupt_handler(u32 interrupt_number,
+acpi_os_install_interrupt_handler(u32 gsi,
                                  acpi_osd_handler service_routine,
                                  void *context);
 
 acpi_status
-acpi_os_remove_interrupt_handler(u32 interrupt_number,
-                                acpi_osd_handler service_routine);
+acpi_os_remove_interrupt_handler(u32 gsi, acpi_osd_handler service_routine);
 
 /*
  * Threads and Scheduling
@@ -245,7 +244,9 @@
 
 u8 acpi_os_readable(void *pointer, acpi_size length);
 
+#ifdef ACPI_FUTURE_USAGE
 u8 acpi_os_writable(void *pointer, acpi_size length);
+#endif
 
 u64 acpi_os_get_timer(void);
 
@@ -260,10 +261,12 @@
 
 void acpi_os_redirect_output(void *destination);
 
+#ifdef ACPI_FUTURE_USAGE
 /*
  * Debug input
  */
 u32 acpi_os_get_line(char *buffer);
+#endif
 
 /*
  * Directory manipulation
-
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to