mb/google/reef: Use runtime detection for touchscreens
Now that power sequencing has been implemented, switch from using ACPI "probed" flag to "detect" flag for all i2c touchscreens. This removes non-present devices from the SSDT and relieves the OS of the burden of probing. BUG=b:121309055 TEST=build/boot Windows/linux on multiple reef variants, verify all touchscreens functional in OS, dump ACPI and verify only i2c devices actually present on the board have entries in the SSDT. Change-Id: I8c90074515b1c7d3ab742768d7bbd904fec256d4 Signed-off-by: Matt DeVillier <matt.devillier@gmail.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/71154 Reviewed-by: Angel Pons <th3fanbus@gmail.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
committed by
Martin L Roth
parent
48894ea620
commit
a0e32aafee
@@ -189,7 +189,7 @@ chip soc/intel/apollolake
|
||||
register "hid" = ""ELAN0001""
|
||||
register "desc" = ""ELAN Touchscreen""
|
||||
register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_21_IRQ)"
|
||||
register "probed" = "1"
|
||||
register "detect" = "1"
|
||||
register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_36)"
|
||||
register "reset_delay_ms" = "20"
|
||||
register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_152)"
|
||||
|
@@ -189,7 +189,7 @@ chip soc/intel/apollolake
|
||||
register "hid" = ""ELAN0001""
|
||||
register "desc" = ""ELAN Touchscreen""
|
||||
register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_21_IRQ)"
|
||||
register "probed" = "1"
|
||||
register "detect" = "1"
|
||||
register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_36)"
|
||||
register "reset_delay_ms" = "20"
|
||||
register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_152)"
|
||||
@@ -201,7 +201,7 @@ chip soc/intel/apollolake
|
||||
register "hid" = ""RAYD0001""
|
||||
register "desc" = ""Raydium Touchscreen""
|
||||
register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_21_IRQ)"
|
||||
register "probed" = "1"
|
||||
register "detect" = "1"
|
||||
register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_36)"
|
||||
register "reset_delay_ms" = "1"
|
||||
register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_152)"
|
||||
|
@@ -198,7 +198,7 @@ chip soc/intel/apollolake
|
||||
register "generic.hid" = ""WCOMNTN2""
|
||||
register "generic.desc" = ""WCOM Touchscreen""
|
||||
register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_21_IRQ)"
|
||||
register "generic.probed" = "1"
|
||||
register "generic.detect" = "1"
|
||||
register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_36)"
|
||||
register "generic.reset_delay_ms" = "20"
|
||||
register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_152)"
|
||||
@@ -212,7 +212,7 @@ chip soc/intel/apollolake
|
||||
register "hid" = ""ELAN0001""
|
||||
register "desc" = ""ELAN Touchscreen""
|
||||
register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_21_IRQ)"
|
||||
register "probed" = "1"
|
||||
register "detect" = "1"
|
||||
register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_36)"
|
||||
register "reset_delay_ms" = "20"
|
||||
register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_152)"
|
||||
|
@@ -185,7 +185,7 @@ chip soc/intel/apollolake
|
||||
register "hid" = ""RAYD0001""
|
||||
register "desc" = ""Raydium Touchscreen""
|
||||
register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_21_IRQ)"
|
||||
register "probed" = "1"
|
||||
register "detect" = "1"
|
||||
register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_36)"
|
||||
register "reset_delay_ms" = "20"
|
||||
register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_152)"
|
||||
|
@@ -194,7 +194,7 @@ chip soc/intel/apollolake
|
||||
register "hid" = ""ELAN0001""
|
||||
register "desc" = ""ELAN Touchscreen""
|
||||
register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_21_IRQ)"
|
||||
register "probed" = "1"
|
||||
register "detect" = "1"
|
||||
register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_36)"
|
||||
register "reset_delay_ms" = "20"
|
||||
register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_152)"
|
||||
@@ -206,7 +206,7 @@ chip soc/intel/apollolake
|
||||
register "hid" = ""MLFS0000""
|
||||
register "desc" = ""Melfas Touchscreen""
|
||||
register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_21_IRQ)"
|
||||
register "probed" = "1"
|
||||
register "detect" = "1"
|
||||
# Melfas TS IC doesn't have reset pin design, current FW also not
|
||||
# declare "ce-gpios" in ACPI _DSD to let Melfas TS driver to know
|
||||
# "enable gpio#152 (VTSP) but because of kernel bug & Melfas TS driver
|
||||
@@ -227,7 +227,7 @@ chip soc/intel/apollolake
|
||||
register "hid" = ""RAYD0001""
|
||||
register "desc" = ""Raydium Touchscreen""
|
||||
register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_21_IRQ)"
|
||||
register "probed" = "1"
|
||||
register "detect" = "1"
|
||||
register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_36)"
|
||||
register "reset_delay_ms" = "1"
|
||||
register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_152)"
|
||||
@@ -239,7 +239,7 @@ chip soc/intel/apollolake
|
||||
register "generic.hid" = ""WDHT0002""
|
||||
register "generic.desc" = ""WDT Touchscreen""
|
||||
register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_21_IRQ)"
|
||||
register "generic.probed" = "1"
|
||||
register "generic.detect" = "1"
|
||||
register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_36)"
|
||||
register "generic.reset_delay_ms" = "130"
|
||||
register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_152)"
|
||||
@@ -253,7 +253,7 @@ chip soc/intel/apollolake
|
||||
register "generic.hid" = ""GTCH7503""
|
||||
register "generic.desc" = ""G2TOUCH Touchscreen""
|
||||
register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_21_IRQ)"
|
||||
register "generic.probed" = "1"
|
||||
register "generic.detect" = "1"
|
||||
register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_36)"
|
||||
register "generic.reset_delay_ms" = "50"
|
||||
register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_152)"
|
||||
|
Reference in New Issue
Block a user