NetBSD/sys/dev/acpi
riastradh 8769a2203d thinkpad(4): Don't detach on shutdown.
There's no important state that needs to be recorded, or resources
that need to be relinquished, so detach-on-shutdown isn't necessary.

At the moment, detach-on-shutdown is actually harmful here: if
shutdown is triggered by a sysmon power switch event, then
config_detach will be called from the sysmon taskqueue, but
thinkpad_detach has to wait for ACPI notifiers to finish running
which means waiting for the sysmon taskqueue -> deadlock or crash.

We should maybe arrange to do config_detach from a thread other than
the sysmon taskqueue thread to avoid this class of problems -- but
for now, thinkpad(4) has no reason to detach on shutdown anyway, so
let's take the easy path.

Note: There are many drivers that set DVF_DETACH_SHUTDOWN which
probably shouldn't; the flag means the kernel _will_ detach on
shutdown, not that it _may_.  Even those that do need to record state
or relinquish resources might be better served by pmf shutdown hooks
which can skip freeing software resources for faster shutdown.
2022-08-12 16:21:41 +00:00
..
acpica allow ACPI to compile without PCI support. fixes ia64 build. 2022-05-31 20:28:57 +00:00
wmi fix various typos in comments. 2021-12-12 22:20:52 +00:00
Makefile.acpidevs
TODO
acpi.c allow ACPI to compile without PCI support. fixes ia64 build. 2022-05-31 20:28:57 +00:00
acpi_acad.c Use acpi_compatible_match(). 2021-01-29 15:20:13 +00:00
acpi_apm.c
acpi_bat.c acpibat(4): Fix race in detach with AcpiOsExecute deferred call. 2022-01-07 01:10:57 +00:00
acpi_button.c Use acpi_compatible_match() / acpi_compatible_lookup(). 2021-01-29 15:24:00 +00:00
acpi_cppc.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
acpi_cpu.c acpicpu: Add support for ACPI P-states and T-states on Arm. 2020-12-07 10:57:41 +00:00
acpi_cpu.h acpicpu: Add support for ACPI P-states and T-states on Arm. 2020-12-07 10:57:41 +00:00
acpi_cpu_cstate.c acpicpu: Add support for ACPI P-states and T-states on Arm. 2020-12-07 10:57:41 +00:00
acpi_cpu_pstate.c acpicpu: Add support for ACPI P-states and T-states on Arm. 2020-12-07 10:57:41 +00:00
acpi_cpu_tstate.c acpicpu: Add support for ACPI P-states and T-states on Arm. 2020-12-07 10:57:41 +00:00
acpi_debug.c Update for proplib API changes. 2020-07-08 13:41:53 +00:00
acpi_dev.c acpi: /dev/acpi: fix bounds check when reading tables 2021-07-24 11:36:41 +00:00
acpi_display.c acpivga(4): Provide hooks for ACPI display notifications. 2022-02-27 21:21:51 +00:00
acpi_display.h acpivga(4): Provide hooks for ACPI display notifications. 2022-02-27 21:21:51 +00:00
acpi_ec.c acpiec(4): Make sure to fully initialize an ACPI_INTEGER on read. 2021-12-31 17:22:25 +00:00
acpi_ecvar.h
acpi_event.c acpi: ged: Mask interrupts before dispatching handler 2022-01-11 10:53:08 +00:00
acpi_event.h acpi: ged: Mask interrupts before dispatching handler 2022-01-11 10:53:08 +00:00
acpi_fan.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
acpi_ged.c acpi: ged: Mask interrupts before dispatching handler 2022-01-11 10:53:08 +00:00
acpi_i2c.c - Handle dtlink in acpi_pack_compat_list(). 2022-07-23 03:08:17 +00:00
acpi_i2c.h Fix CVS eff-up. 2021-08-09 04:06:21 +00:00
acpi_intr.h Add acpi_intr_establish_irq, which is like acpi_intr_establish except 2020-10-23 10:59:37 +00:00
acpi_lid.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
acpi_mcfg.c acpi: Nix conditional pci_get_segment use. 2022-02-27 14:19:07 +00:00
acpi_mcfg.h acpi: expose acpimcfg_configure_bus_cb 2021-08-07 21:19:15 +00:00
acpi_osd.h
acpi_pcc.c acpi: Add support for ACPI Platform Communications Channel (PCC). 2020-12-13 20:27:53 +00:00
acpi_pcc.h acpi: Add support for ACPI Platform Communications Channel (PCC). 2020-12-13 20:27:53 +00:00
acpi_pcd.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
acpi_pci.c acpi: Nix conditional pci_get_segment use. 2022-02-27 14:19:07 +00:00
acpi_pci.h expose acpi_pcidev_pciroot_bus 2020-05-08 14:42:38 +00:00
acpi_pci_link.c KNF. Same binary before and after. 2021-12-20 12:01:01 +00:00
acpi_pmtr.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
acpi_power.c allow ACPI to compile without PCI support. fixes ia64 build. 2022-05-31 20:28:57 +00:00
acpi_power.h
acpi_quirks.c acpi: remove unused acpi_quirks_osi_* functions 2020-12-06 11:38:28 +00:00
acpi_resource.c acpi: Add acpi_resource_parse_any(). 2021-08-07 18:39:40 +00:00
acpi_slit.c
acpi_slit.h
acpi_srat.c Redo the page allocator to perform better, especially on multi-core and 2019-12-27 12:51:56 +00:00
acpi_srat.h Redo the page allocator to perform better, especially on multi-core and 2019-12-27 12:51:56 +00:00
acpi_timer.c acpi_timer: use ACPI-Fast if WAET timer one read flag is set 2021-07-25 01:43:08 +00:00
acpi_timer.h
acpi_tz.c fix various small typos, mainly in comments. 2022-05-22 11:27:33 +00:00
acpi_usb.c Use acpi_dsm() in acpi_usb_post_reset(). 2021-01-14 14:38:22 +00:00
acpi_usb.h
acpi_util.c - Handle dtlink in acpi_pack_compat_list(). 2022-07-23 03:08:17 +00:00
acpi_util.h - Handle dtlink in acpi_pack_compat_list(). 2022-07-23 03:08:17 +00:00
acpi_verbose.c Localize one more variable to NPCI > 0 block. Fix ia64 build. 2022-06-02 00:12:20 +00:00
acpi_wakedev.c allow ACPI to compile without PCI support. fixes ia64 build. 2022-05-31 20:28:57 +00:00
acpi_wakedev.h
acpi_wdrt.c
acpica.h fix typos in comments, mainly s/extention/extension/ and s/sufficent/sufficient/ 2021-09-03 21:54:58 +00:00
acpidevs
acpidevs_data.h
acpireg.h
acpivar.h acpi: Support DT link device ID 2021-12-26 14:34:39 +00:00
ahcisata_acpi.c Fix 32-bit build. 2020-12-07 10:02:51 +00:00
aibs_acpi.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
amdccp_acpi.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
apple_smc_acpi.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
asus_acpi.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
atppc_acpi.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
attimer_acpi.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
com_acpi.c Poll only if we don't have an IRQ resource. 2021-10-23 17:46:26 +00:00
dalb_acpi.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
devlist2h.awk
dwcmmc_acpi.c acpi: dwcmmc: Honour broken-cd and non-removable DSD properties 2022-02-06 15:48:12 +00:00
dwiic_acpi.c Merge thorpej-cfargs2. 2021-08-07 16:18:40 +00:00
ehci_acpi.c acpi: ehci: Don't assume that a transaction translator is available. 2021-12-24 00:27:22 +00:00
eqos_acpi.c Add driver for DesignWare Ethernet Quality-of-Service controller. 2022-01-03 17:19:41 +00:00
fdc_acpi.c Convert some debug messages to aprint_debug 2021-10-15 19:21:45 +00:00
fdc_acpireg.h
files.acpi only link acpi_pci*.c if acpi & pci, not just acpi. 2022-05-26 02:16:44 +00:00
fujbp_acpi.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
fujhk_acpi.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
genet_acpi.c genet(4): Add support for rnd(9). 2021-05-03 10:28:26 +00:00
hpacel_acpi.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
hpet_acpi.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
hpqlb_acpi.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
igpio_acpi.c Add initial support for Intel GPIO chips 2022-03-24 02:24:24 +00:00
ipmi_acpi.c Merge thorpej-cfargs2. 2021-08-07 16:18:40 +00:00
joy_acpi.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
lpt_acpi.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
mpu_acpi.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
nxpiic_acpi.c Normalize how motoi2c controllers are attached. 2022-07-22 23:43:23 +00:00
ohci_acpi.c acpi: ohci: Match "generic-ohci" compatible string 2021-12-26 14:35:03 +00:00
pckbc_acpi.c Use acpi_compatible_match() / acpi_compatible_lookup(). 2021-01-29 15:24:00 +00:00
pcppi_acpi.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
plgpio_acpi.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
qemufwcfg_acpi.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
sdhc_acpi.c sdhc: Retire SDHC_FLAG_USE_ADMA2 flag. 2022-02-06 15:52:20 +00:00
smbus_acpi.c Merge thorpej-cfargs2. 2021-08-07 16:18:40 +00:00
sony_acpi.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
spic_acpi.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
thinkpad_acpi.c thinkpad(4): Don't detach on shutdown. 2022-08-12 16:21:41 +00:00
tpm_acpi.c tpm@acpi: Require only one locality's worth of register space. 2021-11-14 21:18:30 +00:00
ug_acpi.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
vald_acpi.c fix various typos, mainly in comments. 2021-12-07 21:37:36 +00:00
valz_acpi.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
virtio_acpi.c rename "setup_interrupts" to "alloc_interrupts" 2021-10-22 02:57:23 +00:00
vmbus_acpi.c Use acpi_compatible_match(). 2021-01-29 15:49:55 +00:00
wb_acpi.c Fix 32-bit build. 2020-12-07 10:02:51 +00:00
wss_acpi.c Also print the device name with aprint_naive, like wss@pnpbios does. 2021-10-07 00:11:08 +00:00
xhci_acpi.c Merge thorpej-cfargs2. 2021-08-07 16:18:40 +00:00
ym_acpi.c