From 94bf83c0d5b7dcfe0395510f5a64c0df973f9f62 Mon Sep 17 00:00:00 2001 From: Prabal Saha Date: Thu, 14 Jul 2016 12:34:33 -0700 Subject: [PATCH] UPSTREAM: sb/intel/lynxpoint: add missing I2C ACPI SSCN/FMCN methods The SSCN and FMCN methods provide the optimal HCNT/LCNT timing values to the driver, and are necessary when using I2C devices (eg, trackpad and touchscreen) in ACPI (vs PCI) mode. Add these methods using the timing values from Broadwell, which work for Haswell/Lynxpoint as well. TEST: build google/peppy with trackpad/touchscreen devices in ACPI mode, observe proper operation under Windows [8.1/10] and Linux [Mint 18] BUG=None BRANCH=None TEST=None Signed-off-by: Matt DeVillier Reviewed-on: https://review.coreboot.org/17620 Tested-by: build bot (Jenkins) Reviewed-by: Martin Roth Reviewed-by: Paul Menzel Reviewed-by: Prabal Saha Change-Id: I25f07ac474b041358315530e5f391bb33d9c4d04 Reviewed-on: https://chromium-review.googlesource.com/415646 Commit-Ready: Furquan Shaikh Tested-by: Furquan Shaikh Reviewed-by: Aaron Durbin --- src/southbridge/intel/lynxpoint/acpi/serialio.asl | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/southbridge/intel/lynxpoint/acpi/serialio.asl b/src/southbridge/intel/lynxpoint/acpi/serialio.asl index 930a8eea27..e8e81c3f03 100644 --- a/src/southbridge/intel/lynxpoint/acpi/serialio.asl +++ b/src/southbridge/intel/lynxpoint/acpi/serialio.asl @@ -165,6 +165,9 @@ Device (I2C0) Name (_UID, 1) Name (_ADR, 0x00150001) + Name (SSCN, Package () { 432, 507, 30 }) + Name (FMCN, Package () { 72, 160, 30 }) + // BAR0 is assigned during PCI enumeration and saved into NVS Name (RBUF, ResourceTemplate () { @@ -244,6 +247,9 @@ Device (I2C1) Name (_UID, 1) Name (_ADR, 0x00150002) + Name (SSCN, Package () { 432, 507, 30 }) + Name (FMCN, Package () { 72, 160, 30 }) + // BAR0 is assigned during PCI enumeration and saved into NVS Name (RBUF, ResourceTemplate () {