This patch separates `ACPI_STATE_D3` into `ACPI_STATE_D3_HOT` and `ACPI_STATE_D3_COLD`. The previous `ACPI_STATE_D3` is now defined as `ACPI_STATE_D3_COLD`. The same distinction has been made between `PCI_POWERSTATE_HOT` and `PCI_POWERSTATE_COLD`, as they're defined by ACPI (and are asserted to be the same). D3cold is essentially the same as D3hot except the power resources are turned off. Support for D3cold has been added to `acpi_pwr_switch_consumer`.
Currently I am awaiting information on whether or not `ACPI_STATE_D3` should actually be D3cold or D3hot instead, at which point these macros will be upstreamed and I'll update this revision. See https://github.com/acpica/acpica/pull/993.
`acpi_d_state_to_str` replaces the `printf("D%d", d_state)` pattern, allowing for "D3hot" and "D3cold" strings to be printed instead.
This was split out from D48294.
Sponsored by: The FreeBSD Foundation