2 * This file is part of the coreboot project.
4 * Copyright (C) 2014 Google Inc.
5 * Copyright (C) 2015 Intel Corporation.
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; version 2 of the License.
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
19 #define BOARD_TOUCHPAD_I2C_ADDR 0x15
20 #define BOARD_TOUCHPAD_IRQ TOUCHPAD_INT_L
22 #define BOARD_TOUCHSCREEN_I2C_ADDR 0x10
23 #define BOARD_TOUCHSCREEN_IRQ TOUCHSCREEN_INT_L
25 #define BOARD_HP_MIC_CODEC_I2C_ADDR 0x1a
26 #define BOARD_HP_MIC_CODEC_IRQ MIC_INT_L
27 #define BOARD_LEFT_SPEAKER_AMP_I2C_ADDR 0x34
28 #define BOARD_RIGHT_SPEAKER_AMP_I2C_ADDR 0x35
34 Name (_HID, EisaId ("PNP0C0D"))
37 Return (\_SB.PCI0.LPCB.EC0.LIDS)
40 Name (_PRW, Package () { GPE_EC_WAKE, 5 })
45 Name (_HID, EisaId ("PNP0C0C"))
50 * LPC Trusted Platform Module
52 Scope (\_SB.PCI0.LPCB)
54 #include <drivers/pc80/tpm/acpi/tpm.asl>
58 * WLAN connected to Root Port 1
60 Scope (\_SB.PCI0.RP01)
64 Name (_ADR, 0x00000000)
65 Name (_DDN, "Wireless LAN")
66 Name (_PRW, Package () { GPE_WLAN_WAKE, 3 })
70 Scope (\_SB.PCI0.I2C0)
75 Name (_HID, "ELAN0001")
76 Name (_DDN, "Elan Touchscreen")
80 Name (_CRS, ResourceTemplate ()
83 BOARD_TOUCHSCREEN_I2C_ADDR,
89 Interrupt (ResourceConsumer, Edge, ActiveLow)
102 Scope (\_SB.PCI0.I2C1)
107 Name (_HID, "ELAN0000")
108 Name (_DDN, "Elan Touchpad")
112 Name (_CRS, ResourceTemplate ()
115 BOARD_TOUCHPAD_I2C_ADDR,
121 Interrupt (ResourceConsumer, Edge, ActiveLow)
134 Scope (\_SB.PCI0.I2C4)
136 /* Headphone Codec */
139 Name (_HID, "10508825")
140 Name (_DDN, "NAU88L25 Codec")
142 Name (_DSD, Package () {
143 ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
145 /* Enable jack detection via JKDET pin */
146 Package () { "nuvoton,jkdet-enable", 1 },
148 * JKDET pin is pulled up by R389 on board.
149 * JKDET pin polarity = active low
151 Package () { "nuvoton,jkdet-pull-enable", 1 },
152 Package () { "nuvoton,jkdet-pull-up", 1 },
153 Package () { "nuvoton,jkdet-polarity", 1 },
154 /* VDDA(1.8) * 1.53 = 2.754 */
155 Package () { "nuvoton,micbias-voltage", 6 },
156 /* VREF Impedance = 125 kOhm */
157 Package () { "nuvoton,vref-impedance", 2 },
159 * Setup 4 buttons impedance according to
160 * Android specification
162 Package () { "nuvoton,sar-threshold-num", 4 },
163 Package () { "nuvoton,sar-threshold",
164 Package() { 0x0a, 0x14, 0x26, 0x73 } },
166 * Coeff 0-15 used to adjust threshold level
167 * 0 for low resist range
169 Package () { "nuvoton,sar-hysteresis", 0 },
170 /* SAR tracking gain based on 2.754 micbias-voltage */
171 Package () { "nuvoton,sar-voltage", 6 },
172 /* 100ms short key press debounce */
173 Package () { "nuvoton,short-key-debounce", 3 },
174 /* 2^(7+2) = 512 ms insert/eject debounce */
175 Package () { "nuvoton,jack-insert-debounce", 7 },
176 /* debounce not needed for eject normally */
177 Package () { "nuvoton,jack-eject-debounce", 0 },
181 Name (_CRS, ResourceTemplate()
184 BOARD_HP_MIC_CODEC_I2C_ADDR,
190 Interrupt (ResourceConsumer, Level, ActiveLow)
192 BOARD_HP_MIC_CODEC_IRQ
202 /* Left Speaker Amp */
205 Name (_HID, "INT343B")
206 Name (_DDN, "SSM4567 Speaker Amp")
209 Name (_CRS, ResourceTemplate()
212 BOARD_LEFT_SPEAKER_AMP_I2C_ADDR,
226 /* Right Speaker Amp */
229 Name (_HID, "INT343B")
230 Name (_DDN, "SSM4567 Speaker Amp")
233 Name (_CRS, ResourceTemplate()
236 BOARD_RIGHT_SPEAKER_AMP_I2C_ADDR,