forked from luck/tmp_suning_uos_patched
ACPI: Add D3 cold state
_SxW returns an Integer containing the lowest D-state supported in state Sx. If OSPM has not indicated that it supports _PR3, then the value “3” corresponds to D3. If it has indicated _PR3 support, the value “3” represents D3hot and the value “4” represents D3cold. Linux does set _OSC._PR3, so we should fix it to expect that _SxW can return 4. Signed-off-by: Lin Ming <ming.m.lin@intel.com> Acked-by: Jesse Barnes <jbarnes@virtuousgeek.org> Signed-off-by: Len Brown <len.brown@intel.com>
This commit is contained in:
parent
61c4f2c81c
commit
28c2103dad
|
@ -227,7 +227,7 @@ static int __acpi_bus_set_power(struct acpi_device *device, int state)
|
||||||
acpi_status status = AE_OK;
|
acpi_status status = AE_OK;
|
||||||
char object_name[5] = { '_', 'P', 'S', '0' + state, '\0' };
|
char object_name[5] = { '_', 'P', 'S', '0' + state, '\0' };
|
||||||
|
|
||||||
if (!device || (state < ACPI_STATE_D0) || (state > ACPI_STATE_D3))
|
if (!device || (state < ACPI_STATE_D0) || (state > ACPI_STATE_D3_COLD))
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
/* Make sure this is a valid target state */
|
/* Make sure this is a valid target state */
|
||||||
|
|
|
@ -195,6 +195,8 @@ static pci_power_t acpi_pci_choose_state(struct pci_dev *pdev)
|
||||||
return PCI_D2;
|
return PCI_D2;
|
||||||
case ACPI_STATE_D3:
|
case ACPI_STATE_D3:
|
||||||
return PCI_D3hot;
|
return PCI_D3hot;
|
||||||
|
case ACPI_STATE_D3_COLD:
|
||||||
|
return PCI_D3cold;
|
||||||
}
|
}
|
||||||
return PCI_POWER_ERROR;
|
return PCI_POWER_ERROR;
|
||||||
}
|
}
|
||||||
|
|
|
@ -501,8 +501,9 @@ typedef u64 acpi_integer;
|
||||||
#define ACPI_STATE_D1 (u8) 1
|
#define ACPI_STATE_D1 (u8) 1
|
||||||
#define ACPI_STATE_D2 (u8) 2
|
#define ACPI_STATE_D2 (u8) 2
|
||||||
#define ACPI_STATE_D3 (u8) 3
|
#define ACPI_STATE_D3 (u8) 3
|
||||||
#define ACPI_D_STATES_MAX ACPI_STATE_D3
|
#define ACPI_STATE_D3_COLD (u8) 4
|
||||||
#define ACPI_D_STATE_COUNT 4
|
#define ACPI_D_STATES_MAX ACPI_STATE_D3_COLD
|
||||||
|
#define ACPI_D_STATE_COUNT 5
|
||||||
|
|
||||||
#define ACPI_STATE_C0 (u8) 0
|
#define ACPI_STATE_C0 (u8) 0
|
||||||
#define ACPI_STATE_C1 (u8) 1
|
#define ACPI_STATE_C1 (u8) 1
|
||||||
|
|
Loading…
Reference in New Issue
Block a user