[v3] ACPI: EC: Make more Asus laptops use ECDT _GPE

Message ID 20210520030949.2471-1-jhp@endlessos.org
State New
Headers show
Series
  • [v3] ACPI: EC: Make more Asus laptops use ECDT _GPE
Related show

Commit Message

Jian-Hong Pan May 20, 2021, 3:09 a.m.
From: Chris Chiu <chris.chiu@canonical.com>

More ASUS laptops have the _GPE define in the DSDT table with a
different value than the _GPE number in the ECDT.

This is causing media keys not working on ASUS X505BA/BP, X542BA/BP

Add model info to the quirks list.

Signed-off-by: Chris Chiu <chris.chiu@canonical.com>
Signed-off-by: Jian-Hong Pan <jhp@endlessos.org>
---
v2: Edit the author information with valid email address

v3: Edit Chris' S-o-b with current valid email address

 drivers/acpi/ec.c | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

Comments

Rafael J. Wysocki May 21, 2021, 5:18 p.m. | #1
On Thu, May 20, 2021 at 5:13 AM Jian-Hong Pan <jhp@endlessos.org> wrote:
>

> From: Chris Chiu <chris.chiu@canonical.com>

>

> More ASUS laptops have the _GPE define in the DSDT table with a

> different value than the _GPE number in the ECDT.

>

> This is causing media keys not working on ASUS X505BA/BP, X542BA/BP

>

> Add model info to the quirks list.

>

> Signed-off-by: Chris Chiu <chris.chiu@canonical.com>

> Signed-off-by: Jian-Hong Pan <jhp@endlessos.org>

> ---

> v2: Edit the author information with valid email address

>

> v3: Edit Chris' S-o-b with current valid email address

>

>  drivers/acpi/ec.c | 16 ++++++++++++++++

>  1 file changed, 16 insertions(+)

>

> diff --git a/drivers/acpi/ec.c b/drivers/acpi/ec.c

> index 13565629ce0a..e8c5da2b964a 100644

> --- a/drivers/acpi/ec.c

> +++ b/drivers/acpi/ec.c

> @@ -1846,6 +1846,22 @@ static const struct dmi_system_id ec_dmi_table[] __initconst = {

>         DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),

>         DMI_MATCH(DMI_PRODUCT_NAME, "GL702VMK"),}, NULL},

>         {

> +       ec_honor_ecdt_gpe, "ASUSTeK COMPUTER INC. X505BA", {

> +       DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),

> +       DMI_MATCH(DMI_PRODUCT_NAME, "X505BA"),}, NULL},

> +       {

> +       ec_honor_ecdt_gpe, "ASUSTeK COMPUTER INC. X505BP", {

> +       DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),

> +       DMI_MATCH(DMI_PRODUCT_NAME, "X505BP"),}, NULL},

> +       {

> +       ec_honor_ecdt_gpe, "ASUSTeK COMPUTER INC. X542BA", {

> +       DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),

> +       DMI_MATCH(DMI_PRODUCT_NAME, "X542BA"),}, NULL},

> +       {

> +       ec_honor_ecdt_gpe, "ASUSTeK COMPUTER INC. X542BP", {

> +       DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),

> +       DMI_MATCH(DMI_PRODUCT_NAME, "X542BP"),}, NULL},

> +       {

>         ec_honor_ecdt_gpe, "ASUS X550VXK", {

>         DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),

>         DMI_MATCH(DMI_PRODUCT_NAME, "X550VXK"),}, NULL},

> --


Applied as 5.14 material, thanks!

Patch

diff --git a/drivers/acpi/ec.c b/drivers/acpi/ec.c
index 13565629ce0a..e8c5da2b964a 100644
--- a/drivers/acpi/ec.c
+++ b/drivers/acpi/ec.c
@@ -1846,6 +1846,22 @@  static const struct dmi_system_id ec_dmi_table[] __initconst = {
 	DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),
 	DMI_MATCH(DMI_PRODUCT_NAME, "GL702VMK"),}, NULL},
 	{
+	ec_honor_ecdt_gpe, "ASUSTeK COMPUTER INC. X505BA", {
+	DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),
+	DMI_MATCH(DMI_PRODUCT_NAME, "X505BA"),}, NULL},
+	{
+	ec_honor_ecdt_gpe, "ASUSTeK COMPUTER INC. X505BP", {
+	DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),
+	DMI_MATCH(DMI_PRODUCT_NAME, "X505BP"),}, NULL},
+	{
+	ec_honor_ecdt_gpe, "ASUSTeK COMPUTER INC. X542BA", {
+	DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),
+	DMI_MATCH(DMI_PRODUCT_NAME, "X542BA"),}, NULL},
+	{
+	ec_honor_ecdt_gpe, "ASUSTeK COMPUTER INC. X542BP", {
+	DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),
+	DMI_MATCH(DMI_PRODUCT_NAME, "X542BP"),}, NULL},
+	{
 	ec_honor_ecdt_gpe, "ASUS X550VXK", {
 	DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),
 	DMI_MATCH(DMI_PRODUCT_NAME, "X550VXK"),}, NULL},