[coreboot-gerrit] New patch to review for coreboot: google/reef: Enable trackpad for reef board.

Freddy Paul (freddy.paul@intel.com) gerrit at coreboot.org
Thu Jun 16 08:02:21 CEST 2016


Freddy Paul (freddy.paul at intel.com) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/15213

-gerrit

commit 8478be5627adc2b8a74b127f7b82b4c35d1b72af
Author: Freddy Paul <freddy.paul at intel.com>
Date:   Wed Jun 15 22:50:13 2016 -0700

    google/reef: Enable trackpad for reef board.
    
    This patch should enlist ELAN trackpad on I2C4 for reef board.
    
    BUG=None
    TEST=Build and boot to OS.
         Ensure ELAN trackpad is working with right driver.
    
    Change-Id: I788600f16dea9fac0e089cb82ccfc38a960157f9
    Signed-off-by: Freddy Paul <freddy.paul at intel.com>
---
 src/mainboard/google/reef/acpi/mainboard.asl | 45 ++++++++++++++++++++++++++++
 src/mainboard/google/reef/on_board.h         | 23 ++++++++++++++
 2 files changed, 68 insertions(+)

diff --git a/src/mainboard/google/reef/acpi/mainboard.asl b/src/mainboard/google/reef/acpi/mainboard.asl
index 06b2efc..c58290e 100644
--- a/src/mainboard/google/reef/acpi/mainboard.asl
+++ b/src/mainboard/google/reef/acpi/mainboard.asl
@@ -14,6 +14,7 @@
  */
 
 #include "acpi/superio.asl"
+#include <on_board.h>
 
 Scope (\_SB)
 {
@@ -32,6 +33,50 @@ 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
  */
diff --git a/src/mainboard/google/reef/on_board.h b/src/mainboard/google/reef/on_board.h
new file mode 100644
index 0000000..5b420ce
--- /dev/null
+++ b/src/mainboard/google/reef/on_board.h
@@ -0,0 +1,23 @@
+/*
+ * This file is part of the coreboot project.
+ *
+ * Copyright 2016 Google Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; version 2 of the License.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the
+ * GNU General Public License for more details.
+ */
+
+#ifndef _ON_BOARD_H_
+#define _ON_BOARD_H_
+
+#include <soc/gpio_defs.h>
+
+#define TOUCHPAD_INT		GPIO_18_IRQ
+
+#endif				/* _ON_BOARD_H_ */



More information about the coreboot-gerrit mailing list