From patchwork Tue Jul 31 16:38:52 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: acpi: method: remove _GTS and _BFS tests Date: Tue, 31 Jul 2012 06:38:52 -0000 From: Colin King X-Patchwork-Id: 174284 Message-Id: <1343752732-23515-1-git-send-email-colin.king@canonical.com> To: fwts-devel@lists.ubuntu.com From: Colin Ian King Just seen _GTS and _BFS support being removed from Linux and according to Len Brown: "_GTS and _BFS were added to the suspend/resume flow in the ACPI 2.0 specification. Linux dutifully implemented _GTS and _BFS. We discovered that it was rarely seen in systems in the field. Further, some of those systems had AML so bogus that it could never work -- proof that no other operating system supports _GTS and _BFS. So we made _GTS and _BFS optional via modparam, and disabled them by default. But we've had to complicate some code to keep this support in the kernel, as these methods are defined to be evaluated very close to sleep entry and exit. Indeed, no other AML is ever evaluated with interrupts off. We have submitted a proposal for _GTS and _BFS to be officially removed from the ACPI specification on the next revision. Here we remove it from Linux." So, these are not worth testing and should be deprecated from the method test. Signed-off-by: Colin Ian King Acked-by: Alex Hung Acked-by: Ivan Hu --- src/acpi/method/method.c | 55 ++-------------------------------------------- 1 file changed, 2 insertions(+), 53 deletions(-) diff --git a/src/acpi/method/method.c b/src/acpi/method/method.c index a1bf873..032f42e 100644 --- a/src/acpi/method/method.c +++ b/src/acpi/method/method.c @@ -48,7 +48,7 @@ * _BCM B.6.3 Y * _BCT 10.2.29 N * _BDN 6.5.3 N - * _BFS 7.3.1 Y + * _BFS 7.3.1 deprecated * _BIF 10.2.2.1 Y * _BIX 10.2.2.2 Y * _BLT 9.1.3 N @@ -109,7 +109,7 @@ * _GSB 6.2.6 N * _GTF 9.8.1.1 N * _GTM 9.8.2.1.1 N - * _GTS 7.3.3 Y + * _GTS 7.3.3 deprecated * _GWS 9.18.5 N * _HID 6.1.5 N * _HOT 11.4.6 Y @@ -925,30 +925,6 @@ static int method_test_BMC(fwts_framework *fw) /* Section 15, Waking and Sleeping */ -static int method_test_BFS(fwts_framework *fw) -{ - int i; - - if (fwts_method_exists("_BFS") != NULL) { - for (i=1; i<6; i++) { - ACPI_OBJECT arg[1]; - - arg[0].Type = ACPI_TYPE_INTEGER; - arg[0].Integer.Value = i; - - if (method_evaluate_method(fw, METHOD_OPTIONAL, "_BFS", arg, 1, - method_test_NULL_return, NULL) == FWTS_NOT_EXIST) - break; - fwts_log_nl(fw); - } - } - else { - fwts_skipped(fw, "Optional control method _BFS does not exist."); - } - - return FWTS_OK; -} - static int method_test_PTS(fwts_framework *fw) { int i; @@ -975,31 +951,6 @@ static int method_test_PTS(fwts_framework *fw) return FWTS_OK; } -static int method_test_GTS(fwts_framework *fw) -{ - int i; - - if (fwts_method_exists("_GTS") != NULL) { - for (i=1; i<6; i++) { - ACPI_OBJECT arg[1]; - - arg[0].Type = ACPI_TYPE_INTEGER; - arg[0].Integer.Value = i; - - fwts_log_info(fw, "Test _GTS(%d) (Going To Sleep, State S%d.", i, i); - - if (method_evaluate_method(fw, METHOD_OPTIONAL, "_GTS", arg, 1, - method_test_NULL_return, NULL) == FWTS_NOT_EXIST) - break; - fwts_log_nl(fw); - } - } - else { - fwts_skipped(fw, "Optional control method _GTS does not exist."); - } - return FWTS_OK; -} - static int method_test_TTS(fwts_framework *fw) { int i; @@ -2202,9 +2153,7 @@ static fwts_framework_minor_test method_tests[] = { { method_test_BBN, "Check _BBN (Base Bus Number)." }, /* Section 15, Waking and Sleeping */ - { method_test_BFS, "Check _BFS (Back from Sleep)." }, { method_test_PTS, "Check _PTS (Prepare to Sleep)." }, - { method_test_GTS, "Check _GTS (Going to Sleep)." }, { method_test_TTS, "Check _TTS (Transition to State)." }, { method_test_S0, "Check _S0 (System S0 State) Object." }, { method_test_S1, "Check _S1 (System S1 State) Object." },