mb/google/octopus: Use runtime detection for touchscreens/digitizers
Switch from using ACPI "probed" flag to "detect" flag for all i2c touchscreens and digitizers. This removes non-present devices from the SSDT and relieves the OS of the burden of probing. Test: build/boot Windows/Linux on various octopus variants, verify touchscreens/digitizers functional, dump ACPI tables and verify only i2c devices actually present on the board have entries in the SSDT. Change-Id: I67c5bbae42e96ae21d37309e382b635321e6ef01 Signed-off-by: Matt DeVillier <matt.devillier@gmail.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/63214 Reviewed-by: Raul Rangel <rrangel@chromium.org> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
committed by
Felix Held
parent
dc8074560c
commit
0c3806db69
@@ -79,6 +79,7 @@ chip soc/intel/apollolake
|
||||
register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_140)"
|
||||
register "generic.reset_delay_ms" = "20"
|
||||
register "generic.has_power_resource" = "1"
|
||||
register "generic.detect" = "1"
|
||||
register "hid_desc_reg_offset" = "0x1"
|
||||
device i2c 0x9 on end
|
||||
end
|
||||
@@ -113,7 +114,7 @@ chip soc/intel/apollolake
|
||||
register "hid" = ""ELAN0001""
|
||||
register "desc" = ""ELAN Touchscreen""
|
||||
register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "probed" = "1"
|
||||
register "detect" = "1"
|
||||
register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "reset_delay_ms" = "20"
|
||||
register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
|
||||
@@ -125,7 +126,7 @@ chip soc/intel/apollolake
|
||||
register "generic.hid" = ""GTCH7502""
|
||||
register "generic.desc" = ""G2TOUCH Touchscreen""
|
||||
register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "generic.probed" = "1"
|
||||
register "generic.detect" = "1"
|
||||
register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "generic.reset_delay_ms" = "70"
|
||||
register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
|
||||
|
@@ -129,7 +129,7 @@ chip soc/intel/apollolake
|
||||
register "hid" = ""ELAN0001""
|
||||
register "desc" = ""ELAN Touchscreen""
|
||||
register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "probed" = "1"
|
||||
register "detect" = "1"
|
||||
register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "reset_delay_ms" = "20"
|
||||
register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
|
||||
@@ -141,7 +141,7 @@ chip soc/intel/apollolake
|
||||
register "generic.hid" = ""GDIX0000""
|
||||
register "generic.desc" = ""Goodix Touchscreen""
|
||||
register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "generic.probed" = "1"
|
||||
register "generic.detect" = "1"
|
||||
register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "generic.reset_delay_ms" = "120"
|
||||
register "generic.reset_off_delay_ms" = "3"
|
||||
@@ -155,7 +155,7 @@ chip soc/intel/apollolake
|
||||
register "generic.hid" = ""GTCH7503""
|
||||
register "generic.desc" = ""G2TOUCH Touchscreen""
|
||||
register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "generic.probed" = "1"
|
||||
register "generic.detect" = "1"
|
||||
register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "generic.reset_delay_ms" = "50"
|
||||
register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
|
||||
|
@@ -100,6 +100,7 @@ chip soc/intel/apollolake
|
||||
register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_140)"
|
||||
register "generic.reset_delay_ms" = "20"
|
||||
register "generic.has_power_resource" = "1"
|
||||
register "generic.detect" = "1"
|
||||
register "hid_desc_reg_offset" = "0x1"
|
||||
device i2c 0x9 on end
|
||||
end
|
||||
@@ -188,7 +189,7 @@ chip soc/intel/apollolake
|
||||
register "hid" = ""ELAN0001""
|
||||
register "desc" = ""ELAN Touchscreen""
|
||||
register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "probed" = "1"
|
||||
register "detect" = "1"
|
||||
register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "reset_delay_ms" = "20"
|
||||
register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
|
||||
@@ -200,7 +201,7 @@ chip soc/intel/apollolake
|
||||
register "hid" = ""RAYD0001""
|
||||
register "desc" = ""Raydium Touchscreen""
|
||||
register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "probed" = "1"
|
||||
register "detect" = "1"
|
||||
register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "reset_delay_ms" = "1"
|
||||
register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
|
||||
@@ -212,7 +213,7 @@ chip soc/intel/apollolake
|
||||
register "generic.hid" = ""GTCH7502""
|
||||
register "generic.desc" = ""G2TOUCH Touchscreen""
|
||||
register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "generic.probed" = "1"
|
||||
register "generic.detect" = "1"
|
||||
register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "generic.reset_delay_ms" = "70"
|
||||
register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
|
||||
|
@@ -124,7 +124,7 @@ chip soc/intel/apollolake
|
||||
register "hid" = ""ELAN0001""
|
||||
register "desc" = ""ELAN Touchscreen""
|
||||
register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "probed" = "1"
|
||||
register "detect" = "1"
|
||||
register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "reset_delay_ms" = "20"
|
||||
register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
|
||||
@@ -136,7 +136,7 @@ chip soc/intel/apollolake
|
||||
register "hid" = ""RAYD0001""
|
||||
register "desc" = ""Raydium Touchscreen""
|
||||
register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "probed" = "1"
|
||||
register "detect" = "1"
|
||||
register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "reset_delay_ms" = "1"
|
||||
register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
|
||||
@@ -148,7 +148,7 @@ chip soc/intel/apollolake
|
||||
register "generic.hid" = ""GTCH7502""
|
||||
register "generic.desc" = ""G2TOUCH Touchscreen""
|
||||
register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "generic.probed" = "1"
|
||||
register "generic.detect" = "1"
|
||||
register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "generic.reset_delay_ms" = "50"
|
||||
register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
|
||||
|
@@ -98,7 +98,7 @@ chip soc/intel/apollolake
|
||||
"ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_140)"
|
||||
register "generic.reset_delay_ms" = "20"
|
||||
register "generic.has_power_resource" = "1"
|
||||
register "generic.probed" = "1"
|
||||
register "generic.detect" = "1"
|
||||
register "hid_desc_reg_offset" = "0x1"
|
||||
device i2c 0x9 on end
|
||||
end
|
||||
@@ -176,7 +176,7 @@ chip soc/intel/apollolake
|
||||
register "hid" = ""ELAN0001""
|
||||
register "desc" = ""ELAN Touchscreen""
|
||||
register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "probed" = "1"
|
||||
register "detect" = "1"
|
||||
register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "reset_delay_ms" = "20"
|
||||
register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
|
||||
@@ -188,7 +188,7 @@ chip soc/intel/apollolake
|
||||
register "generic.hid" = ""WDHT0002""
|
||||
register "generic.desc" = ""WDT Touchscreen""
|
||||
register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "generic.probed" = "1"
|
||||
register "generic.detect" = "1"
|
||||
register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "generic.reset_delay_ms" = "130"
|
||||
register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
|
||||
@@ -202,7 +202,7 @@ chip soc/intel/apollolake
|
||||
register "generic.hid" = ""GTCH7503""
|
||||
register "generic.desc" = ""G2TOUCH Touchscreen""
|
||||
register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "generic.probed" = "1"
|
||||
register "generic.detect" = "1"
|
||||
register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "generic.reset_delay_ms" = "50"
|
||||
register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
|
||||
|
@@ -138,7 +138,7 @@ chip soc/intel/apollolake
|
||||
register "generic.hid" = ""ELAN90FC""
|
||||
register "generic.desc" = ""ELAN Touchscreen""
|
||||
register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "generic.probed" = "1"
|
||||
register "generic.detect" = "1"
|
||||
register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
|
||||
register "generic.reset_delay_ms" = "20"
|
||||
@@ -151,7 +151,7 @@ chip soc/intel/apollolake
|
||||
register "generic.hid" = ""SYTS7817""
|
||||
register "generic.desc" = ""Synaptics Touchscreen""
|
||||
register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "generic.probed" = "1"
|
||||
register "generic.detect" = "1"
|
||||
register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
|
||||
register "generic.reset_delay_ms" = "45"
|
||||
|
@@ -166,7 +166,7 @@ chip soc/intel/apollolake
|
||||
register "hid" = ""ELAN0001""
|
||||
register "desc" = ""ELAN Touchscreen""
|
||||
register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "probed" = "1"
|
||||
register "detect" = "1"
|
||||
register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "reset_delay_ms" = "20"
|
||||
register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
|
||||
@@ -178,7 +178,7 @@ chip soc/intel/apollolake
|
||||
register "hid" = ""RAYD0001""
|
||||
register "desc" = ""Raydium Touchscreen""
|
||||
register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "probed" = "1"
|
||||
register "detect" = "1"
|
||||
register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "reset_delay_ms" = "1"
|
||||
register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
|
||||
@@ -190,7 +190,7 @@ chip soc/intel/apollolake
|
||||
register "generic.hid" = ""GTCH7503""
|
||||
register "generic.desc" = ""G2TOUCH Touchscreen""
|
||||
register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "generic.probed" = "1"
|
||||
register "generic.detect" = "1"
|
||||
register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "generic.reset_delay_ms" = "50"
|
||||
register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
|
||||
|
@@ -147,7 +147,7 @@ chip soc/intel/apollolake
|
||||
register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_140)"
|
||||
register "generic.reset_delay_ms" = "20"
|
||||
register "generic.has_power_resource" = "1"
|
||||
register "generic.probed" = "1"
|
||||
register "generic.detect" = "1"
|
||||
register "hid_desc_reg_offset" = "0x1"
|
||||
device i2c 0x9 on end
|
||||
end
|
||||
@@ -158,7 +158,7 @@ chip soc/intel/apollolake
|
||||
register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_140)"
|
||||
register "generic.reset_delay_ms" = "20"
|
||||
register "generic.has_power_resource" = "1"
|
||||
register "generic.probed" = "1"
|
||||
register "generic.detect" = "1"
|
||||
register "hid_desc_reg_offset" = "0x1"
|
||||
device i2c 0xa on end
|
||||
end
|
||||
@@ -210,7 +210,7 @@ chip soc/intel/apollolake
|
||||
register "hid" = ""ELAN0001""
|
||||
register "desc" = ""ELAN Touchscreen""
|
||||
register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "probed" = "1"
|
||||
register "detect" = "1"
|
||||
register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "reset_delay_ms" = "20"
|
||||
register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
|
||||
@@ -222,7 +222,7 @@ chip soc/intel/apollolake
|
||||
register "generic.hid" = ""WDHT0002""
|
||||
register "generic.desc" = ""WDT Touchscreen""
|
||||
register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "generic.probed" = "1"
|
||||
register "generic.detect" = "1"
|
||||
register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "generic.reset_delay_ms" = "130"
|
||||
register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
|
||||
@@ -236,7 +236,7 @@ chip soc/intel/apollolake
|
||||
register "generic.hid" = ""GTCH7503""
|
||||
register "generic.desc" = ""G2TOUCH Touchscreen""
|
||||
register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "generic.probed" = "1"
|
||||
register "generic.detect" = "1"
|
||||
register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "generic.reset_delay_ms" = "50"
|
||||
register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
|
||||
|
@@ -91,6 +91,7 @@ chip soc/intel/apollolake
|
||||
register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_140)"
|
||||
register "generic.reset_delay_ms" = "20"
|
||||
register "generic.has_power_resource" = "1"
|
||||
register "generic.detect" = "1"
|
||||
register "hid_desc_reg_offset" = "0x1"
|
||||
device i2c 0x9 on end
|
||||
end
|
||||
@@ -151,7 +152,7 @@ chip soc/intel/apollolake
|
||||
register "hid" = ""ELAN0001""
|
||||
register "desc" = ""ELAN Touchscreen""
|
||||
register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "probed" = "1"
|
||||
register "detect" = "1"
|
||||
register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "reset_delay_ms" = "20"
|
||||
register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
|
||||
@@ -163,7 +164,7 @@ chip soc/intel/apollolake
|
||||
register "generic.hid" = ""SYTS7817""
|
||||
register "generic.desc" = ""Synaptics Touchscreen""
|
||||
register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "generic.probed" = "1"
|
||||
register "generic.detect" = "1"
|
||||
register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
|
||||
register "generic.reset_delay_ms" = "45"
|
||||
@@ -176,7 +177,7 @@ chip soc/intel/apollolake
|
||||
register "hid" = ""RAYD0001""
|
||||
register "desc" = ""Raydium Touchscreen""
|
||||
register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "probed" = "1"
|
||||
register "detect" = "1"
|
||||
register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "reset_delay_ms" = "1"
|
||||
register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
|
||||
@@ -188,7 +189,7 @@ chip soc/intel/apollolake
|
||||
register "generic.hid" = ""GTCH7502""
|
||||
register "generic.desc" = ""G2TOUCH Touchscreen""
|
||||
register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "generic.probed" = "1"
|
||||
register "generic.detect" = "1"
|
||||
register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "generic.enable_delay_ms" = "1"
|
||||
register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
|
||||
|
@@ -88,7 +88,7 @@ chip soc/intel/apollolake
|
||||
register "hid" = ""ELAN0001""
|
||||
register "desc" = ""ELAN Touchscreen""
|
||||
register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
|
||||
register "probed" = "1"
|
||||
register "detect" = "1"
|
||||
register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
|
||||
register "reset_delay_ms" = "20"
|
||||
register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_213)"
|
||||
|
Reference in New Issue
Block a user