linux/include/acpi
Rafael J. Wysocki 1e2380cd14 ACPI / dock: Dispatch dock notifications from the global notify handler
The ACPI dock station code carries out an extra namespace scan
before the main one in order to find and register all of the dock
device objects.  Then, it registers a notify handler for each of
them for handling dock events.

However, dock device objects need not be scanned for upfront.  They
very well can be enumerated and registered during the first phase
of the main namespace scan, before attaching scan handlers and ACPI
drivers to ACPI device objects.  Then, the dependent devices can be
added to the in the second phase.  That makes it possible to drop
the extra namespace scan, so do it.

Moreover, it is not necessary to register notify handlers for all
of the dock stations' namespace nodes, becuase notifications may
be dispatched from the global notify handler for them.  Do that and
drop two functions used for dock notify handling, acpi_dock_deferred_cb()
and dock_notify_handler(), that aren't necessary any more.

Finally, some dock station objects have _HID objects matching the
ACPI container scan handler which causes it to claim those objects
and try to handle their hotplug, but that is not a good idea,
because those objects have their own special hotplug handling anyway.
For this reason, the hotplug_notify flag should not be set for ACPI
device objects representing dock stations and the container scan
handler should be made ignore those objects, so make that happen.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2014-02-16 01:51:01 +01:00
..
platform ACPICA: Utilities: Cleanup declarations of the acpi_gbl_debug_file global. 2014-01-08 15:31:39 +01:00
acbuffer.h ACPICA: Update ACPICA copyrights to 2013 2013-01-25 13:30:47 +01:00
acconfig.h ACPICA: Tests: Add CHECKSUM_ABORT protection for test utilities. 2013-11-21 13:47:03 +01:00
acexcep.h ACPICA: Cleanup exception codes. 2013-09-24 01:46:25 +02:00
acnames.h ACPICA: Predefine name macros: Sort list. 2013-10-30 12:24:21 +01:00
acoutput.h ACPICA: Remove unused macros, no functional change 2013-06-01 21:54:31 +02:00
acpi_bus.h ACPI / dock: Dispatch dock notifications from the global notify handler 2014-02-16 01:51:01 +01:00
acpi_drivers.h ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
acpi_io.h ACPI / i915: Fix incorrect <acpi/acpi.h> inclusions via <linux/acpi_io.h> 2013-12-07 01:24:33 +01:00
acpi_numa.h ACPI: Store SRAT table revision 2012-01-17 04:19:04 -05:00
acpi.h ACPICA: Update ACPICA copyrights to 2013 2013-01-25 13:30:47 +01:00
acpiosxf.h ACPI / hotplug: Consolidate deferred execution of ACPI hotplug routines 2013-11-07 19:28:48 +01:00
acpixf.h ACPICA: Introduce acpi_get_data_full() and rework acpi_get_data() 2014-02-05 17:41:16 +01:00
acrestyp.h ACPICA: Update ACPICA copyrights to 2013 2013-01-25 13:30:47 +01:00
actbl1.h ACPICA: Add helper macros to extract bus/segment numbers from HEST table. 2014-01-08 15:31:37 +01:00
actbl2.h ACPICA: Tables: Add full support for the DBG2 table. 2014-01-08 15:31:36 +01:00
actbl3.h ACPICA: Tables: Add full support for the PCCT table, update table definition. 2014-01-08 15:31:37 +01:00
actbl.h ACPICA: Back port and refine validation of the XSDT root table. 2014-01-08 15:31:36 +01:00
actypes.h ACPICA: Remove unused ACPI_FREE_BUFFER macro. No functional change. 2014-01-08 15:31:36 +01:00
apei.h module_param: make bool parameters really bool (drivers & misc) 2012-01-13 09:32:20 +10:30
button.h
ghes.h ACPI, CPER: Update cper info 2013-10-21 15:12:00 -07:00
hed.h
pdc_intel.h
processor.h ACPI / processor: Do not request ACPI cpufreq module directly 2013-10-30 00:00:30 +01:00
reboot.h
video.h Revert "ACPI / video / i915: No ACPI backlight if firmware expects Windows 8" 2013-07-26 14:59:20 +02:00