diff mbox

acpi: method: add check for _DEP

Message ID 1412664207-32297-2-git-send-email-alex.hung@canonical.com
State Accepted
Headers show

Commit Message

Alex Hung Oct. 7, 2014, 6:43 a.m. UTC
Signed-off-by: Alex Hung <alex.hung@canonical.com>
---
 src/acpi/method/method.c | 28 ++++++++++++++++++++++++++--
 1 file changed, 26 insertions(+), 2 deletions(-)

Comments

Colin Ian King Oct. 7, 2014, 7:15 a.m. UTC | #1
On 07/10/14 07:43, Alex Hung wrote:
> Signed-off-by: Alex Hung <alex.hung@canonical.com>
> ---
>  src/acpi/method/method.c | 28 ++++++++++++++++++++++++++--
>  1 file changed, 26 insertions(+), 2 deletions(-)
> 
> diff --git a/src/acpi/method/method.c b/src/acpi/method/method.c
> index 9ec3013..cb873cb 100644
> --- a/src/acpi/method/method.c
> +++ b/src/acpi/method/method.c
> @@ -74,7 +74,7 @@
>   * _DCS  B.6.6		Y
>   * _DDC  B.6.5		Y
>   * _DDN  6.1.4		Y
> - * _DEP  6.5.8		N
> + * _DEP  6.5.8		Y
>   * _DGS  B.6.7		Y
>   * _DIS  6.2.3		Y
>   * _DLM  5.7.5		N
> @@ -2257,6 +2257,30 @@ static int method_test_BDN(fwts_framework *fw)
>  		NULL, 0, method_test_integer_return, "_BDN");
>  }
>  
> +static void method_test_DEP_return(
> +	fwts_framework *fw,
> +	char *name,
> +	ACPI_BUFFER *buf,
> +	ACPI_OBJECT *obj,
> +	void *private)
> +{
> +	FWTS_UNUSED(private);
> +
> +	if (method_check_type(fw, name, buf, ACPI_TYPE_PACKAGE) != FWTS_OK)
> +		return;
> +
> +	if (method_package_elements_all_type(fw, name, "_DEP", obj, ACPI_TYPE_LOCAL_REFERENCE) != FWTS_OK)
> +		return;
> +
> +	method_passed_sane(fw, name, "package");
> +}
> +
> +static int method_test_DEP(fwts_framework *fw)
> +{
> +	return method_evaluate_method(fw, METHOD_OPTIONAL,
> +		"_DEP", NULL, 0, method_test_DEP_return, NULL);
> +}
> +
>  static int method_test_DCK(fwts_framework *fw)
>  {
>  	int i;
> @@ -5720,7 +5744,7 @@ static fwts_framework_minor_test method_tests[] = {
>  
>  	/* Section 6.5 Other Objects and Controls */
>  
> -	/* { method_test_DEP, "Test _DEP (Operational Region Dependencies)." }, */
> +	{ method_test_DEP, "Test _DEP (Operational Region Dependencies)." },
>  	{ method_test_BDN, "Test _BDN (BIOS Dock Name)." },
>  	{ method_test_BBN, "Test _BBN (Base Bus Number)." },
>  	{ method_test_DCK, "Test _DCK (Dock)." },
> 
Acked-by: Colin Ian King <colin.king@canonical.com>
Keng-Yu Lin Oct. 15, 2014, 7:26 a.m. UTC | #2
On Tue, Oct 7, 2014 at 2:43 PM, Alex Hung <alex.hung@canonical.com> wrote:
> Signed-off-by: Alex Hung <alex.hung@canonical.com>
> ---
>  src/acpi/method/method.c | 28 ++++++++++++++++++++++++++--
>  1 file changed, 26 insertions(+), 2 deletions(-)
>
> diff --git a/src/acpi/method/method.c b/src/acpi/method/method.c
> index 9ec3013..cb873cb 100644
> --- a/src/acpi/method/method.c
> +++ b/src/acpi/method/method.c
> @@ -74,7 +74,7 @@
>   * _DCS  B.6.6         Y
>   * _DDC  B.6.5         Y
>   * _DDN  6.1.4         Y
> - * _DEP  6.5.8         N
> + * _DEP  6.5.8         Y
>   * _DGS  B.6.7         Y
>   * _DIS  6.2.3         Y
>   * _DLM  5.7.5         N
> @@ -2257,6 +2257,30 @@ static int method_test_BDN(fwts_framework *fw)
>                 NULL, 0, method_test_integer_return, "_BDN");
>  }
>
> +static void method_test_DEP_return(
> +       fwts_framework *fw,
> +       char *name,
> +       ACPI_BUFFER *buf,
> +       ACPI_OBJECT *obj,
> +       void *private)
> +{
> +       FWTS_UNUSED(private);
> +
> +       if (method_check_type(fw, name, buf, ACPI_TYPE_PACKAGE) != FWTS_OK)
> +               return;
> +
> +       if (method_package_elements_all_type(fw, name, "_DEP", obj, ACPI_TYPE_LOCAL_REFERENCE) != FWTS_OK)
> +               return;
> +
> +       method_passed_sane(fw, name, "package");
> +}
> +
> +static int method_test_DEP(fwts_framework *fw)
> +{
> +       return method_evaluate_method(fw, METHOD_OPTIONAL,
> +               "_DEP", NULL, 0, method_test_DEP_return, NULL);
> +}
> +
>  static int method_test_DCK(fwts_framework *fw)
>  {
>         int i;
> @@ -5720,7 +5744,7 @@ static fwts_framework_minor_test method_tests[] = {
>
>         /* Section 6.5 Other Objects and Controls */
>
> -       /* { method_test_DEP, "Test _DEP (Operational Region Dependencies)." }, */
> +       { method_test_DEP, "Test _DEP (Operational Region Dependencies)." },
>         { method_test_BDN, "Test _BDN (BIOS Dock Name)." },
>         { method_test_BBN, "Test _BBN (Base Bus Number)." },
>         { method_test_DCK, "Test _DCK (Dock)." },
> --
> 1.9.1
>
>

Acked-by: Keng-Yu Lin <kengyu@canonical.com>
diff mbox

Patch

diff --git a/src/acpi/method/method.c b/src/acpi/method/method.c
index 9ec3013..cb873cb 100644
--- a/src/acpi/method/method.c
+++ b/src/acpi/method/method.c
@@ -74,7 +74,7 @@ 
  * _DCS  B.6.6		Y
  * _DDC  B.6.5		Y
  * _DDN  6.1.4		Y
- * _DEP  6.5.8		N
+ * _DEP  6.5.8		Y
  * _DGS  B.6.7		Y
  * _DIS  6.2.3		Y
  * _DLM  5.7.5		N
@@ -2257,6 +2257,30 @@  static int method_test_BDN(fwts_framework *fw)
 		NULL, 0, method_test_integer_return, "_BDN");
 }
 
+static void method_test_DEP_return(
+	fwts_framework *fw,
+	char *name,
+	ACPI_BUFFER *buf,
+	ACPI_OBJECT *obj,
+	void *private)
+{
+	FWTS_UNUSED(private);
+
+	if (method_check_type(fw, name, buf, ACPI_TYPE_PACKAGE) != FWTS_OK)
+		return;
+
+	if (method_package_elements_all_type(fw, name, "_DEP", obj, ACPI_TYPE_LOCAL_REFERENCE) != FWTS_OK)
+		return;
+
+	method_passed_sane(fw, name, "package");
+}
+
+static int method_test_DEP(fwts_framework *fw)
+{
+	return method_evaluate_method(fw, METHOD_OPTIONAL,
+		"_DEP", NULL, 0, method_test_DEP_return, NULL);
+}
+
 static int method_test_DCK(fwts_framework *fw)
 {
 	int i;
@@ -5720,7 +5744,7 @@  static fwts_framework_minor_test method_tests[] = {
 
 	/* Section 6.5 Other Objects and Controls */
 
-	/* { method_test_DEP, "Test _DEP (Operational Region Dependencies)." }, */
+	{ method_test_DEP, "Test _DEP (Operational Region Dependencies)." },
 	{ method_test_BDN, "Test _BDN (BIOS Dock Name)." },
 	{ method_test_BBN, "Test _BBN (Base Bus Number)." },
 	{ method_test_DCK, "Test _DCK (Dock)." },