50 #define _COMPONENT ACPI_EVENTS
58 static
void acpi_ev_orphan_ec_reg_method(
void);
66 u32 level,
void *context,
void **return_value);
70 #define ACPI_NUM_DEFAULT_SPACES 4
124 acpi_gbl_default_address_spaces
140 goto unlock_and_exit;
174 handler_obj = obj_desc->
device.handler;
178 while (handler_obj) {
227 acpi_gbl_default_address_spaces
231 acpi_gbl_default_address_spaces
270 if (region_obj2->
extra.method_REG ==
NULL) {
357 void *region_context =
NULL;
369 handler_desc = region_obj->
region.handler;
372 "No handler for Region [%4.4s] (%p) [%s]",
397 "No init routine for region(%p) [%s]",
412 context, ®ion_context);
422 "During region initialization: [%s]",
434 if (region_obj2->
extra.region_context) {
444 region_obj2->
extra.region_context =
455 "Handler %p (@%p) Address %8.8X%8.8X [%s]\n",
456 ®ion_obj->
region.handler->address_space, handler,
472 context && field_obj) {
477 context->
length = field_obj->
field.resource_length;
493 status = handler(
function,
494 (region_obj->
region.address + region_offset),
495 bit_width, value, context,
496 region_obj2->
extra.region_context);
532 u8 acpi_ns_is_locked)
538 void **region_context;
548 region_context = ®ion_obj2->
extra.region_context;
552 handler_obj = region_obj->
region.handler;
569 if (obj_desc == region_obj) {
571 "Removing Region %p from address handler %p\n",
572 region_obj, handler_obj));
576 *last_obj_ptr = obj_desc->
region.next;
579 if (acpi_ns_is_locked) {
594 "from region _REG, [%s]",
596 (region_obj->
region.space_id)));
599 if (acpi_ns_is_locked) {
614 region_setup(region_obj,
617 context, region_context);
623 "from region handler - deactivate, [%s]",
629 region_obj->
region.flags &=
650 last_obj_ptr = &obj_desc->
region.next;
651 obj_desc = obj_desc->
region.next;
657 "Cannot remove region %p from address handler %p\n",
658 region_obj, handler_obj));
681 u8 acpi_ns_is_locked)
687 "Adding Region [%4.4s] %p to address handler %p [%s]\n",
689 region_obj, handler_obj,
700 if (region_obj->
region.handler) {
704 region_obj->
region.handler = handler_obj;
729 u32 level,
void *context,
void **return_value)
779 next_handler_obj = obj_desc->
device.handler;
780 while (next_handler_obj) {
787 "Found handler for region [%s] in device %p(%p) "
878 goto unlock_and_exit;
917 goto unlock_and_exit;
935 handler_obj = obj_desc->
device.handler;
939 while (handler_obj) {
952 goto unlock_and_exit;
958 goto unlock_and_exit;
967 "Creating object on Device %p while installing handler\n",
981 goto unlock_and_exit;
997 goto unlock_and_exit;
1002 "Installing address handler for region %s(%X) on Device %4.4s %p(%p)\n",
1016 goto unlock_and_exit;
1037 obj_desc->
device.handler = handler_obj;
1053 acpi_ev_install_handler,
NULL,
1095 acpi_ev_orphan_ec_reg_method();
1113 u32 level,
void *context,
void **return_value)
1149 if (obj_desc->
region.space_id != space_id) {
1183 static void acpi_ev_orphan_ec_reg_method(
void)
1206 if (!(*table->
id)) {
1252 args.pointer = objects;