[coreboot-gerrit] Patch set updated for coreboot: google/reef: ACPI: Move touchpad to SSDT and remove TPM

Duncan Laurie (dlaurie@chromium.org) gerrit at coreboot.org
Fri Jul 1 19:43:46 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 c369f6d97b9881cd398e8028f11ac877ccba89ba
Author: Duncan Laurie <dlaurie at chromium.org>
Date:   Mon Jun 27 11:05:16 2016 -0700

    google/reef: ACPI: Move touchpad 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 ded75bb..194a6ba 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