CoolStar has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/76159?usp=email )
Change subject: mb/google/link: rework TP/TS ACPI to add support for new Windows I2C driver ......................................................................
mb/google/link: rework TP/TS ACPI to add support for new Windows I2C driver
Change-Id: If7ee05d15bc17d335cf8c1a8e80bea62800de475 Signed-off-by: CoolStar coolstarorganization@gmail.com --- M src/mainboard/google/link/acpi/mainboard.asl M src/mainboard/google/link/dsdt.asl M src/mainboard/google/link/onboard.h 3 files changed, 113 insertions(+), 7 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/59/76159/1
diff --git a/src/mainboard/google/link/acpi/mainboard.asl b/src/mainboard/google/link/acpi/mainboard.asl index 3e751bb..fe0c8fc 100644 --- a/src/mainboard/google/link/acpi/mainboard.asl +++ b/src/mainboard/google/link/acpi/mainboard.asl @@ -11,9 +11,6 @@ // automatically enable it as a wake source Name(_HID, EisaId("PNP0C0E"))
- // Trackpad Wake is GPIO12 - Name(_PRW, Package() { BOARD_TRACKPAD_WAKE_GPIO, 0x03 } ) - Name(_CRS, ResourceTemplate() { // PIRQE -> GSI20 @@ -35,9 +32,6 @@ // automatically enable it as a wake source Name(_HID, EisaId("PNP0C0E"))
- // Touchscreen Wake is GPIO14 - Name(_PRW, Package(){0x1e, 0x03}) - Name(_CRS, ResourceTemplate() { // PIRQG -> GSI22 @@ -48,3 +42,111 @@ }) } } + + +Scope (_SB.PCI0.GFX0) +{ + Device (GMBS){ + Name (_HID, "LINK0000") + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0F) + } + + Method (MMIO, 0, Serialized) + { + Local0 = BAR0 & 0xFFFFFFFFFFFFFFF0 + Return (Local0) + } + + Device (LVGA){ + Name (_HID, "LINK0001") + Name (_UID, 0) + Name (_DSD, Package () { + ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"), + Package () { + Package (2) {"coolstar,bus-number", GMBUS_PIN_VGADDC} + } + }) + + Method (_STA) + { + Return (0xF) + } + + Device (ATPD) + { + Name (_HID, "ATML0000") + Name (_DDN, "Atmel Touchpad") + Name (_UID, 0) + Name (ISTP, 1) //Touchpad + + Name (_CRS, ResourceTemplate() + { + I2cSerialBus ( + BOARD_TRACKPAD_I2C_ADDR, // SlaveAddress + ControllerInitiated, // SlaveMode + 100000, // ConnectionSpeed + AddressingMode7Bit, // AddressingMode + "\_SB.PCI0.GFX0.GMBS.LVGA", // ResourceSource + ) + + Interrupt (ResourceConsumer, Level, ActiveLow) { BOARD_TRACKPAD_IRQ } + }) + + // Trackpad Wake is GPIO12 + Name(_PRW, Package() { BOARD_TRACKPAD_WAKE_GPIO, 0x03 } ) + + Method (_STA) + { + Return (0xF) + } + } + } + + Device (LPNL){ + Name (_HID, "LINK0001") + Name (_UID, 1) + Name (_DSD, Package () { + ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"), + Package () { + Package (2) {"coolstar,bus-number", GMBUS_PIN_PANEL} + } + }) + + Method (_STA) + { + Return (0xF) + } + + Device (ATSA) + { + Name (_HID, "ATML0001") + Name (_DDN, "Atmel TouchScreen") + Name (_UID, 0) + Name (ISTP, 0) //TouchScreen + + Name (_CRS, ResourceTemplate() + { + I2cSerialBus ( + BOARD_TOUCHSCREEN_I2C_ADDR, // SlaveAddress + ControllerInitiated, // SlaveMode + 100000, // ConnectionSpeed + AddressingMode7Bit, // AddressingMode + "\_SB.PCI0.GFX0.GMBS.LPNL", // ResourceSource + ) + + Interrupt (ResourceConsumer, Level, ActiveLow) { BOARD_TOUCHSCREEN_IRQ } + }) + + // Touchscreen Wake is GPIO14 + Name(_PRW, Package(){0x1e, 0x03}) + + Method (_STA) + { + Return (0xF) + } + } + } + } +} diff --git a/src/mainboard/google/link/dsdt.asl b/src/mainboard/google/link/dsdt.asl index 81e3074..dbb3413 100644 --- a/src/mainboard/google/link/dsdt.asl +++ b/src/mainboard/google/link/dsdt.asl @@ -14,7 +14,6 @@ #include <southbridge/intel/common/acpi/platform.asl>
#include "acpi/platform.asl" - #include "acpi/mainboard.asl"
// Thermal handler #include "acpi/thermal.asl" @@ -34,5 +33,7 @@ } }
+ #include "acpi/mainboard.asl" + #include <southbridge/intel/common/acpi/sleepstates.asl> } diff --git a/src/mainboard/google/link/onboard.h b/src/mainboard/google/link/onboard.h index efcda92..30cb7d1 100644 --- a/src/mainboard/google/link/onboard.h +++ b/src/mainboard/google/link/onboard.h @@ -20,4 +20,7 @@
#define GPIO_SPI_WP 57
+#define GMBUS_PIN_VGADDC 2 +#define GMBUS_PIN_PANEL 3 + #endif