diff options
author | Venki Pallipadi <venkatesh.pallipadi@intel.com> | 2007-07-31 12:04:31 -0700 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2007-08-07 15:25:31 -0400 |
commit | ed3110efb538d7acbf635095c1382118f7414f75 (patch) | |
tree | c6fa68e2b4f3b22a3face03288c30033ef13ae60 /drivers/acpi | |
parent | d4ac2477fad0f2680e84ec12e387ce67682c5c13 (diff) | |
download | talos-obmc-linux-ed3110efb538d7acbf635095c1382118f7414f75.tar.gz talos-obmc-linux-ed3110efb538d7acbf635095c1382118f7414f75.zip |
ACPI: fix "Time Problems with 2.6.23-rc1-gf695baf2"
Enable C3 without bm control only for CST based C3.
Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/acpi')
-rw-r--r-- | drivers/acpi/processor_idle.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c index a898991f77cb..a8634a0655fc 100644 --- a/drivers/acpi/processor_idle.c +++ b/drivers/acpi/processor_idle.c @@ -969,11 +969,17 @@ static void acpi_processor_power_verify_c3(struct acpi_processor *pr, } if (pr->flags.bm_check) { - /* bus mastering control is necessary */ if (!pr->flags.bm_control) { - /* In this case we enter C3 without bus mastering */ - ACPI_DEBUG_PRINT((ACPI_DB_INFO, - "C3 support without bus mastering control\n")); + if (pr->flags.has_cst != 1) { + /* bus mastering control is necessary */ + ACPI_DEBUG_PRINT((ACPI_DB_INFO, + "C3 support requires BM control\n")); + return; + } else { + /* Here we enter C3 without bus mastering */ + ACPI_DEBUG_PRINT((ACPI_DB_INFO, + "C3 support without BM control\n")); + } } } else { /* |