From a0e32aafee09013a6b627963ca3d71ba167aa520 Mon Sep 17 00:00:00 2001 From: Matt DeVillier Date: Tue, 20 Dec 2022 16:33:12 -0600 Subject: 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 Reviewed-on: https://review.coreboot.org/c/coreboot/+/71154 Reviewed-by: Angel Pons Tested-by: build bot (Jenkins) --- src/mainboard/google/reef/variants/baseboard/devicetree.cb | 2 +- src/mainboard/google/reef/variants/coral/devicetree.cb | 4 ++-- src/mainboard/google/reef/variants/pyro/devicetree.cb | 4 ++-- src/mainboard/google/reef/variants/sand/devicetree.cb | 2 +- src/mainboard/google/reef/variants/snappy/devicetree.cb | 10 +++++----- 5 files changed, 11 insertions(+), 11 deletions(-) (limited to 'src') diff --git a/src/mainboard/google/reef/variants/baseboard/devicetree.cb b/src/mainboard/google/reef/variants/baseboard/devicetree.cb index d529c7582bee..ddb78a54fd2b 100644 --- a/src/mainboard/google/reef/variants/baseboard/devicetree.cb +++ b/src/mainboard/google/reef/variants/baseboard/devicetree.cb @@ -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)" diff --git a/src/mainboard/google/reef/variants/coral/devicetree.cb b/src/mainboard/google/reef/variants/coral/devicetree.cb index 2f4ecac6d273..efccbf03e6d8 100644 --- a/src/mainboard/google/reef/variants/coral/devicetree.cb +++ b/src/mainboard/google/reef/variants/coral/devicetree.cb @@ -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)" diff --git a/src/mainboard/google/reef/variants/pyro/devicetree.cb b/src/mainboard/google/reef/variants/pyro/devicetree.cb index b4ff375d7b7b..42adab7ed1db 100644 --- a/src/mainboard/google/reef/variants/pyro/devicetree.cb +++ b/src/mainboard/google/reef/variants/pyro/devicetree.cb @@ -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)" diff --git a/src/mainboard/google/reef/variants/sand/devicetree.cb b/src/mainboard/google/reef/variants/sand/devicetree.cb index 514a069c9df0..de2e920f4af1 100644 --- a/src/mainboard/google/reef/variants/sand/devicetree.cb +++ b/src/mainboard/google/reef/variants/sand/devicetree.cb @@ -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)" diff --git a/src/mainboard/google/reef/variants/snappy/devicetree.cb b/src/mainboard/google/reef/variants/snappy/devicetree.cb index 0d9f2c8a8a28..f63c80812675 100644 --- a/src/mainboard/google/reef/variants/snappy/devicetree.cb +++ b/src/mainboard/google/reef/variants/snappy/devicetree.cb @@ -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)" -- cgit v1.2.3