[coreboot-gerrit] New patch to review for coreboot: google/reef: ACPI: Move trackpad to SSDT and remove TPM

Duncan Laurie (dlaurie@chromium.org) gerrit at coreboot.org
Tue Jun 28 20:35:54 CEST 2016


Duncan Laurie (dlaurie at chromium.org) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/15481

-gerrit

commit 10582027bace752c7943f62c2d258e9fc4fcc725
Author: Duncan Laurie <dlaurie at chromium.org>
Date:   Mon Jun 27 11:05:16 2016 -0700

    google/reef: ACPI: Move trackpad to SSDT and remove TPM
    
    Instantiate the touchpad using the drivers/i2c/generic device driver
    to generate the ACPI object in the SSDT.
    
    There is not currently a separate wake pin for this device, this will
    be added in EVT hardware.
    
    This was tested on the reef board by ensuring that the touchpad device
    continues to work in the OS.
    
    Also remove the LPC TPM from the DSDT as it is not present.
    
    Change-Id: I3151a28f628e66f63033398d6fab9fd8f5dfc37b
    Signed-off-by: Duncan Laurie <dlaurie at chromium.org>
---
 src/mainboard/google/reef/Kconfig            |  3 ++
 src/mainboard/google/reef/acpi/mainboard.asl | 48 +---------------------------
 src/mainboard/google/reef/devicetree.cb      |  9 +++++-
 3 files changed, 12 insertions(+), 48 deletions(-)

diff --git a/src/mainboard/google/reef/Kconfig b/src/mainboard/google/reef/Kconfig
index d64598d..c271f78 100644
--- a/src/mainboard/google/reef/Kconfig
+++ b/src/mainboard/google/reef/Kconfig
@@ -25,6 +25,9 @@ config CHROMEOS
 	select VBOOT_OPROM_MATTERS
 	select VIRTUAL_DEV_SWITCH
 
+config DRIVERS_I2C_GENERIC
+	default y
+
 config MAINBOARD_DIR
 	string
 	default google/reef
diff --git a/src/mainboard/google/reef/acpi/mainboard.asl b/src/mainboard/google/reef/acpi/mainboard.asl
index 5471488..5b6e976 100644
--- a/src/mainboard/google/reef/acpi/mainboard.asl
+++ b/src/mainboard/google/reef/acpi/mainboard.asl
@@ -33,54 +33,8 @@ Scope (\_SB)
 	}
 }
 
-Scope (\_SB.PCI0.I2C4)
-{
-	/* Standard Mode: HCNT, LCNT, SDA Hold Register */
-	/* SDA Hold register value of 40 indicates
-	 * sda hold time of 0.3us for ic_clk of 133MHz
-	 */
-	Name (SSCN, Package () { 0, 0, 40 })
-
-	/* Fast Mode: HCNT, LCNT, SDA Hold Register */
-	/* SDA Hold register value of 40 indicates
-	 * sda hold time of 0.3us for ic_clk of 133MHz
-	 */
-	Name (FMCN, Package () { 0, 0, 40 })
-
-	Device (ETPA)
-	{
-		Name (_HID, "ELAN0000")
-		Name (_DDN, "Elan Touchpad")
-		Name (_UID, 1)
-		Name (ISTP, 1) /* Touchpad */
-
-		Name (_CRS, ResourceTemplate()
-		{
-			I2cSerialBus (
-				0x15,                     // SlaveAddress
-				ControllerInitiated,      // SlaveMode
-				400000,                   // ConnectionSpeed
-				AddressingMode7Bit,       // AddressingMode
-				"\\_SB.PCI0.I2C4",        // ResourceSource
-			)
-			Interrupt (ResourceConsumer, Edge, ActiveLow)
-			{
-				TOUCHPAD_INT
-			}
-		})
-
-		Method (_STA)
-		{
-			Return (0xF)
-		}
-	}
-}
-
-/*
- * LPC Trusted Platform Module
- */
 Scope (\_SB.PCI0.LPCB)
 {
-	#include <drivers/pc80/tpm/acpi/tpm.asl>
+	/* Chrome OS Embedded Controller */
 	#include "ec.asl"
 }
diff --git a/src/mainboard/google/reef/devicetree.cb b/src/mainboard/google/reef/devicetree.cb
index d2b295f..e0831f4 100644
--- a/src/mainboard/google/reef/devicetree.cb
+++ b/src/mainboard/google/reef/devicetree.cb
@@ -61,7 +61,14 @@ chip soc/intel/apollolake
 		device pci 16.1 on  end	# - I2C 1
 		device pci 16.2 on  end	# - I2C 2
 		device pci 16.3 on  end	# - I2C 3
-		device pci 17.0 on  end	# - I2C 4
+		device pci 17.0 on
+			chip drivers/i2c/generic
+				register "hid" = ""ELAN0000""
+				register "desc" = ""ELAN Touchpad""
+				register "irq" = "IRQ_EDGE_LOW(GPIO_18_IRQ)"
+				device i2c 15 on end
+			end
+		end # - I2C 4
 		device pci 17.1 on  end	# - I2C 5
 		device pci 17.2 on  end	# - I2C 6
 		device pci 17.3 on  end	# - I2C 7



More information about the coreboot-gerrit mailing list