APPLIED: [PATCH 2/2] acpi: method: add check for _PUR

Keng-Yu Lin keng-yu.lin at canonical.com
Thu Sep 11 08:59:09 UTC 2014


On Thu, Sep 11, 2014 at 3:42 PM, Alex Hung <alex.hung at canonical.com> wrote:
> Signed-off-by: Alex Hung <alex.hung at canonical.com>
> ---
>  src/acpi/method/method.c | 49 ++++++++++++++++++++++++++++++++++++++++++++++--
>  1 file changed, 47 insertions(+), 2 deletions(-)
>
> diff --git a/src/acpi/method/method.c b/src/acpi/method/method.c
> index 6f8d11f..4458b0f 100644
> --- a/src/acpi/method/method.c
> +++ b/src/acpi/method/method.c
> @@ -174,7 +174,7 @@
>   * _PTC  8.4.3.1       N
>   * _PTP  10.4.2                n/a
>   * _PTS  7.3.2         Y
> - * _PUR  8.5.11                N
> + * _PUR  8.5.11                Y
>   * _PXM  6.2.13        Y
>   * _Qxx  5.6.4.1       n/a
>   * _REG  6.5.4         n/a
> @@ -3344,6 +3344,51 @@ static int method_test_TSS(fwts_framework *fw)
>                 "_TSS", NULL, 0, method_test_TSS_return, NULL);
>  }
>
> +/*
> + * Section 8.5 Processor Aggregator Device
> + */
> +
> +static void method_test_PUR_return(
> +       fwts_framework *fw,
> +       char *name,
> +       ACPI_BUFFER *buf,
> +       ACPI_OBJECT *obj,
> +       void *private)
> +{
> +       static fwts_package_element elements[] = {
> +               { ACPI_TYPE_INTEGER,    "RevisionID" },
> +               { ACPI_TYPE_INTEGER,    "NumProcessors" },
> +       };
> +
> +       FWTS_UNUSED(private);
> +
> +       if (method_check_type(fw, name, buf, ACPI_TYPE_PACKAGE) != FWTS_OK)
> +               return;
> +
> +       if (method_package_count_equal(fw, name, "_PUR", obj, 2) != FWTS_OK)
> +               return;
> +
> +       if (method_package_elements_type(fw, name, "_PUR", obj, elements, 2) != FWTS_OK)
> +               return;
> +
> +       /* RevisionID */
> +       if (obj->Package.Elements[0].Integer.Value != 1) {
> +               fwts_failed(fw, LOG_LEVEL_MEDIUM,
> +                       "Method_PURBadID",
> +                       "%s: Expected RevisionID to be 1, "
> +                       "got 0x%8.8" PRIx64 ".", name,
> +                       (uint64_t)obj->Package.Elements[0].Integer.Value);
> +               return;
> +       }
> +
> +       method_passed_sane(fw, name, "package");
> +}
> +
> +static int method_test_PUR(fwts_framework *fw)
> +{
> +       return method_evaluate_method(fw, METHOD_OPTIONAL,
> +               "_PUR", NULL, 0, method_test_PUR_return, NULL);
> +}
>
>  /*
>   * Section 9.1 System Indicators
> @@ -5233,7 +5278,7 @@ static fwts_framework_minor_test method_tests[] = {
>         { method_test_TSS, "Test _TSS (Throttling Supported States)." },
>
>         /* Section 8.5 Processor Aggregator Device */
> -       /* { method_test_PUR, "Test _PUR (Processor Utilization Request)." }, */
> +       { method_test_PUR, "Test _PUR (Processor Utilization Request)." },
>
>         /* Section 9.1 System Indicators */
>         { method_test_MSG, "Test _MSG (Message)." },
> --
> 1.9.1
>
>
> --
> fwts-devel mailing list
> fwts-devel at lists.ubuntu.com
> Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/fwts-devel



More information about the fwts-devel mailing list