Maccraft123 has uploaded this change for review.

View Change

mb/lenovo/{t410,x201}: Make X201 a variant board of T410

T410 and X201 boards are similar enough to be variants
in the same mainboard tree. So I did it.

Change-Id: Icfa1818812347ceb4e2de5cc4a3130537a4e13e7
Signed-off-by: Maciej Matuszczyj <maccraft123mc@gmail.com>
---
A .tmpconfig.lintiC3nbS
M src/mainboard/lenovo/t410/Kconfig
M src/mainboard/lenovo/t410/Kconfig.name
M src/mainboard/lenovo/t410/Makefile.inc
M src/mainboard/lenovo/t410/dock.c
M src/mainboard/lenovo/t410/hda_verb.c
M src/mainboard/lenovo/t410/mainboard.c
M src/mainboard/lenovo/t410/romstage.c
C src/mainboard/lenovo/t410/variants/t410/board_info.txt
R src/mainboard/lenovo/t410/variants/t410/data.vbt
R src/mainboard/lenovo/t410/variants/t410/devicetree.cb
R src/mainboard/lenovo/t410/variants/t410/gpio.c
R src/mainboard/lenovo/t410/variants/x201/board_info.txt
R src/mainboard/lenovo/t410/variants/x201/data.vbt
R src/mainboard/lenovo/t410/variants/x201/devicetree.cb
R src/mainboard/lenovo/t410/variants/x201/gpio.c
D src/mainboard/lenovo/x201/Kconfig
D src/mainboard/lenovo/x201/Kconfig.name
D src/mainboard/lenovo/x201/Makefile.inc
D src/mainboard/lenovo/x201/acpi/dock.asl
D src/mainboard/lenovo/x201/acpi/ec.asl
D src/mainboard/lenovo/x201/acpi/gpe.asl
D src/mainboard/lenovo/x201/acpi/platform.asl
D src/mainboard/lenovo/x201/acpi/superio.asl
D src/mainboard/lenovo/x201/acpi_tables.c
D src/mainboard/lenovo/x201/cmos.default
D src/mainboard/lenovo/x201/cmos.layout
D src/mainboard/lenovo/x201/dock.c
D src/mainboard/lenovo/x201/dock.h
D src/mainboard/lenovo/x201/dsdt.asl
D src/mainboard/lenovo/x201/early_init.c
D src/mainboard/lenovo/x201/gma-mainboard.ads
D src/mainboard/lenovo/x201/hda_verb.c
D src/mainboard/lenovo/x201/mainboard.c
D src/mainboard/lenovo/x201/romstage.c
D src/mainboard/lenovo/x201/smihandler.c
D src/mainboard/lenovo/x201/thermal.h
D src/mainboard/lenovo/x201/vboot-rwa.fmd
38 files changed, 106 insertions(+), 1,132 deletions(-)

git pull ssh://review.coreboot.org:29418/coreboot refs/changes/71/36871/1
diff --git a/.tmpconfig.lintiC3nbS b/.tmpconfig.lintiC3nbS
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/.tmpconfig.lintiC3nbS
diff --git a/src/mainboard/lenovo/t410/Kconfig b/src/mainboard/lenovo/t410/Kconfig
index 329d08d..3b21f1b 100644
--- a/src/mainboard/lenovo/t410/Kconfig
+++ b/src/mainboard/lenovo/t410/Kconfig
@@ -1,4 +1,4 @@
-if BOARD_LENOVO_T410
+if BOARD_LENOVO_T410 || BOARD_LENOVO_X201

config BOARD_SPECIFIC_OPTIONS
def_bool y
@@ -14,6 +14,7 @@
select HAVE_ACPI_TABLES
select INTEL_INT15
select HAVE_ACPI_RESUME
+ select SUPERIO_NSC_PC87382 if BOARD_LENOVO_X201
select DRIVERS_LENOVO_WACOM
select MAINBOARD_HAS_LPC_TPM
select MAINBOARD_HAS_TPM1
@@ -38,6 +39,10 @@
hex
default 0x2a

+config DEVICETREE
+ string
+ default "variants/$(CONFIG_VARIANT_DIR)/devicetree.cb"
+
config FMDFILE
string
default "src/mainboard/$(CONFIG_MAINBOARD_DIR)/vboot-rwa.fmd" if VBOOT
@@ -48,7 +53,8 @@

config MAINBOARD_PART_NUMBER
string
- default "ThinkPad T410"
+ default "ThinkPad T410" if BOARD_LENOVO_T410
+ default "ThinkPad X201" if BOARD_LENOVO_X201

config USBDEBUG_HCD_INDEX
int
@@ -66,4 +72,10 @@
int
default 10

+# Without the Intel ME's EFFS partition some PCIe devices (like the USB and SATA
+# controllers) don't work as expected
+config ME_CLEANER_ARGS
+ string
+ default "-S -w EFFS"
+
endif
diff --git a/src/mainboard/lenovo/t410/Kconfig.name b/src/mainboard/lenovo/t410/Kconfig.name
index d79cf39..531f21f 100644
--- a/src/mainboard/lenovo/t410/Kconfig.name
+++ b/src/mainboard/lenovo/t410/Kconfig.name
@@ -1,2 +1,5 @@
config BOARD_LENOVO_T410
bool "ThinkPad T410"
+
+config BOARD_LENOVO_X201
+ bool "ThinkPad X201"
diff --git a/src/mainboard/lenovo/t410/Makefile.inc b/src/mainboard/lenovo/t410/Makefile.inc
index 518d91a..9ff4abe 100644
--- a/src/mainboard/lenovo/t410/Makefile.inc
+++ b/src/mainboard/lenovo/t410/Makefile.inc
@@ -21,4 +21,5 @@

romstage-y += dock.c
ramstage-y += dock.c
-romstage-y += gpio.c
+romstage-$(CONFIG_MAINBOARD_LENOVO_X201) += variants/x201/gpio.c
+romstage-$(CONFIG_MAINBOARD_LENOVO_T410) += variants/t410/gpio.c
diff --git a/src/mainboard/lenovo/t410/dock.c b/src/mainboard/lenovo/t410/dock.c
index 1575aa1..5c5f731 100644
--- a/src/mainboard/lenovo/t410/dock.c
+++ b/src/mainboard/lenovo/t410/dock.c
@@ -3,6 +3,7 @@
*
* Copyright (C) 2011 Sven Schnelle <svens@stackframe.org>
* Copyright (C) 2013 Vladimir Serbinenko <phcoder@gmail.com>
+ * Copyright (C) 2019 Maciej Matuszczyk
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
@@ -37,6 +38,9 @@
ec_set_bit(0x02, 0);
ec_set_bit(0x1a, 0);
ec_set_bit(0xfe, 4);
+ #if CONFIG(BOARD_LENOVO_X201)
+ set_gpio(28, GPIO_LEVEL_HICH); // Might also work ok t410,
+ #endif
}

void dock_disconnect(void)
@@ -45,6 +49,9 @@
ec_clr_bit(0x02, 0);
ec_clr_bit(0x1a, 0);
ec_clr_bit(0xfe, 4);
+ #if CONFIG(BOARD_LENOVO_X201)
+ set_gpio(28, GPIO_LEVEL_LOW);
+ #endif
}

int dock_present(void)
diff --git a/src/mainboard/lenovo/t410/hda_verb.c b/src/mainboard/lenovo/t410/hda_verb.c
index 752e5da..c12e8b4 100644
--- a/src/mainboard/lenovo/t410/hda_verb.c
+++ b/src/mainboard/lenovo/t410/hda_verb.c
@@ -19,15 +19,27 @@
const u32 cim_verb_data[] = {
/* coreboot specific header */
0x14F15069, /* Codec Vendor / Device ID: Conexant CX20585 */
+ #if CONFIG(BOARD_LENOVO_T410)
0x17AA214C, /* Subsystem ID */
+ #elif CONFIG(BOARD_LENOVO_X201)
+ 0x17AA2155, /* Subsystem ID */
+ #endif
0x0000000B, /* Number of 4 dword sets */

+ #if CONFIG(BOARD_LENOVO_T410)
AZALIA_SUBVENDOR(0x0, 0x17AA214C),
+ #elif CONFIG(BOARD_LENOVO_X201)
+ AZALIA_SUBVENDOR(0x0, 0x17AA2155),
+ #endif
AZALIA_PIN_CFG(0x0, 0x19, 0x042110F0),
AZALIA_PIN_CFG(0x0, 0x1A, 0x61A190F0),
AZALIA_PIN_CFG(0x0, 0x1B, 0x04A110F0),
AZALIA_PIN_CFG(0x0, 0x1C, 0x612140F0),
+ #if CONFIG(BOARD_LENOVO_T410)
AZALIA_PIN_CFG(0x0, 0x1D, 0x40F001F0),
+ #elif CONFIG(BOARD_LENOVO_X201)
+ AZALIA_PIN_CFG(0x0, 0x1D, 0x601700F0),
+ #endif
AZALIA_PIN_CFG(0x0, 0x1E, 0x40F001F0),
AZALIA_PIN_CFG(0x0, 0x1F, 0x901701F0),
AZALIA_PIN_CFG(0x0, 0x20, 0x40F001F0),
@@ -35,7 +47,11 @@
AZALIA_PIN_CFG(0x0, 0x23, 0x90A601F0),

0x80862804, /* Codec Vendor / Device ID: Intel Ibexpeak HDMI. */
+ #if CONFIG(BOARD_LENOVO_T410)
0x17AA21B5, /* Subsystem ID */
+ #elif CONFIG(BOARD_LENOVO_X201)
+ 0x17aa21b5, /* Subsystem ID */
+ #endif
0x00000004, /* Number of 4 dword sets */

AZALIA_SUBVENDOR(0x3, 0x17AA21B5),
diff --git a/src/mainboard/lenovo/t410/mainboard.c b/src/mainboard/lenovo/t410/mainboard.c
index 8b6a737..d961db1 100644
--- a/src/mainboard/lenovo/t410/mainboard.c
+++ b/src/mainboard/lenovo/t410/mainboard.c
@@ -4,6 +4,7 @@
* Copyright (C) 2007-2009 coresystems GmbH
* Copyright (C) 2011 Sven Schnelle <svens@stackframe.org>
* Copyright (C) 2013 Vladimir Serbinenko <phcoder@gmail.com>
+ * Copyright (C) 2019 Maciej Matuszczyk
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
@@ -17,12 +18,28 @@
*/

#include <device/device.h>
-#include <arch/acpi.h>
-#include <drivers/intel/gma/int15.h>
+#include <device/pci_ops.h>
+#include <ec/acpi/ec.h>
+#include <northbridge/intel/nehalem/nehalem.h>
+#include <southbridge/intel/bd82x6x/pch.h>
#include "dock.h"
+#include <drivers/intel/gma/int15.h>
+#include <cpu/x86/lapic.h>
+#include <drivers/lenovo/lenovo.h>
+
+static void fill_ssdt(struct device *device)
+{
+ drivers_lenovo_serial_ports_ssdt_generate("\\_SB.PCI0.LPCB", 0);
+}

static void mainboard_enable(struct device *dev)
{
+ dev->ops->acpi_fill_ssdt_generator = fill_ssdt;
+
+ /* If we're resuming from suspend, blink suspend LED */
+ if (acpi_is_wakeup_s3())
+ ec_write(0x0c, 0xc7);
+
install_intel_vga_int15_handler(GMA_INT15_ACTIVE_LFP_INT_LVDS,
GMA_INT15_PANEL_FIT_DEFAULT,
GMA_INT15_BOOT_DISPLAY_LFP, 2);
diff --git a/src/mainboard/lenovo/t410/romstage.c b/src/mainboard/lenovo/t410/romstage.c
index 7c796de..df4228b 100644
--- a/src/mainboard/lenovo/t410/romstage.c
+++ b/src/mainboard/lenovo/t410/romstage.c
@@ -19,11 +19,11 @@
#include <stdint.h>
#include <device/pci_ops.h>
#include <southbridge/intel/ibexpeak/pch.h>
-#include <drivers/lenovo/hybrid_graphics/hybrid_graphics.h>
#include <northbridge/intel/nehalem/nehalem.h>

const struct southbridge_usb_port mainboard_usb_ports[] = {
/* Enabled, Current table lookup index, OC map */
+ #if CONFIG(BOARD_LENOVO_T410)
{ 1, IF1_557, 0 },
{ 1, IF1_55F, 1 },
{ 1, IF1_74B, 3 },
@@ -38,8 +38,26 @@
{ 1, IF1_74B, 7 },
{ 1, IF1_557, 7 },
{ 1, IF1_55F, 7 },
+ #elif CONFIG(BOARD_LENOVO_X201)
+ { 1, IF1_557, 0 },
+ { 1, IF1_55F, 1 },
+ { 1, IF1_74B, 3 },
+ { 1, IF1_74B, 3 },
+ { 1, IF1_557, 3 },
+ { 1, IF1_14B, 3 },
+ { 1, IF1_74B, 3 },
+ { 1, IF1_74B, 3 },
+ { 1, IF1_74B, 4 },
+ { 1, IF1_74B, 5 },
+ { 1, IF1_55F, 7 },
+ { 1, IF1_55F, 7 },
+ { 1, IF1_557, 7 },
+ { 1, IF1_55F, 7 },
+ #endif
};

+#if CONFIG(BOARD_LENOVO_T410)
+#include <drivers/lenovo/hybrid_graphics/hybrid_graphics.h>
static void hybrid_graphics_init(void)
{
bool peg, igd;
@@ -62,14 +80,38 @@

pci_write_config32(PCI_DEV(0, 0, 0), D0F0_DEVEN, reg32);
}
+#endif
+
+static void set_fsb_frequency(void)
+{
+ u8 block[5];
+ u16 fsbfreq = 62879;
+ smbus_block_read(0x69, 0, 5, block);
+ block[0] = fsbfreq;
+ block[1] = fsbfreq >> 8;
+
+ smbus_block_write(0x69, 0, 5, block);
+}

void mainboard_pre_raminit(void)
{
+ #if CONFIG(BOARD_LENOVO_T410)
hybrid_graphics_init();
+ #elif CONFIG(BOARD_LENOVO_X201)
+ outb((inb(DEFAULT_GPIOBASE | 0x3a) & ~0x2) | 0x20,
+ DEFAULT_GPIOBASE | 0x3a);
+ outb(0x50, 0x15ec);
+ outb(inb(0x15ee) & 0x70, 0x15ee);
+
+ set_fsb_frequency();
}

void mainboard_get_spd_map(u8 *spd_addrmap)
{
spd_addrmap[0] = 0x50;
+ #if CONFIG(BOARD_LENOVO_T410)
spd_addrmap[2] = 0x52;
+ #elif CONFIG(BOARD_LENOVO_X201)
+ spd_addrmap[2] = 0x51;
+ #endif
}
diff --git a/src/mainboard/lenovo/x201/board_info.txt b/src/mainboard/lenovo/t410/variants/t410/board_info.txt
similarity index 75%
copy from src/mainboard/lenovo/x201/board_info.txt
copy to src/mainboard/lenovo/t410/variants/t410/board_info.txt
index b33cbaf..f27808b 100644
--- a/src/mainboard/lenovo/x201/board_info.txt
+++ b/src/mainboard/lenovo/t410/variants/t410/board_info.txt
@@ -1,5 +1,5 @@
Category: laptop
-ROM package: SOIC-8
+ROM package: SOIC-8 / WSON-8
ROM protocol: SPI
ROM socketed: n
Flashrom support: n
diff --git a/src/mainboard/lenovo/t410/data.vbt b/src/mainboard/lenovo/t410/variants/t410/data.vbt
similarity index 100%
rename from src/mainboard/lenovo/t410/data.vbt
rename to src/mainboard/lenovo/t410/variants/t410/data.vbt
Binary files differ
diff --git a/src/mainboard/lenovo/t410/devicetree.cb b/src/mainboard/lenovo/t410/variants/t410/devicetree.cb
similarity index 100%
rename from src/mainboard/lenovo/t410/devicetree.cb
rename to src/mainboard/lenovo/t410/variants/t410/devicetree.cb
diff --git a/src/mainboard/lenovo/t410/gpio.c b/src/mainboard/lenovo/t410/variants/t410/gpio.c
similarity index 100%
rename from src/mainboard/lenovo/t410/gpio.c
rename to src/mainboard/lenovo/t410/variants/t410/gpio.c
diff --git a/src/mainboard/lenovo/x201/board_info.txt b/src/mainboard/lenovo/t410/variants/x201/board_info.txt
similarity index 81%
rename from src/mainboard/lenovo/x201/board_info.txt
rename to src/mainboard/lenovo/t410/variants/x201/board_info.txt
index b33cbaf..7eb5a66 100644
--- a/src/mainboard/lenovo/x201/board_info.txt
+++ b/src/mainboard/lenovo/t410/variants/x201/board_info.txt
@@ -2,5 +2,5 @@
ROM package: SOIC-8
ROM protocol: SPI
ROM socketed: n
-Flashrom support: n
+Flashrom support: y
Release year: 2010
diff --git a/src/mainboard/lenovo/x201/data.vbt b/src/mainboard/lenovo/t410/variants/x201/data.vbt
similarity index 100%
rename from src/mainboard/lenovo/x201/data.vbt
rename to src/mainboard/lenovo/t410/variants/x201/data.vbt
Binary files differ
diff --git a/src/mainboard/lenovo/x201/devicetree.cb b/src/mainboard/lenovo/t410/variants/x201/devicetree.cb
similarity index 100%
rename from src/mainboard/lenovo/x201/devicetree.cb
rename to src/mainboard/lenovo/t410/variants/x201/devicetree.cb
diff --git a/src/mainboard/lenovo/x201/gpio.c b/src/mainboard/lenovo/t410/variants/x201/gpio.c
similarity index 100%
rename from src/mainboard/lenovo/x201/gpio.c
rename to src/mainboard/lenovo/t410/variants/x201/gpio.c
diff --git a/src/mainboard/lenovo/x201/Kconfig b/src/mainboard/lenovo/x201/Kconfig
deleted file mode 100644
index e40c0d3..0000000
--- a/src/mainboard/lenovo/x201/Kconfig
+++ /dev/null
@@ -1,71 +0,0 @@
-if BOARD_LENOVO_X201
-
-config BOARD_SPECIFIC_OPTIONS
- def_bool y
- select SYSTEM_TYPE_LAPTOP
- select NORTHBRIDGE_INTEL_NEHALEM
- select SOUTHBRIDGE_INTEL_IBEXPEAK
- select EC_LENOVO_PMH7
- select EC_LENOVO_H8
- select NO_UART_ON_SUPERIO
- select HAVE_OPTION_TABLE
- select HAVE_CMOS_DEFAULT
- select BOARD_ROMSIZE_KB_8192
- select HAVE_ACPI_TABLES
- select INTEL_INT15
- select HAVE_ACPI_RESUME
- select MAINBOARD_HAS_LIBGFXINIT
- select SUPERIO_NSC_PC87382
- select DRIVERS_LENOVO_WACOM
- select MAINBOARD_HAS_LPC_TPM
- select MAINBOARD_HAS_TPM1
- select INTEL_GMA_HAVE_VBT
- select MAINBOARD_USES_IFD_GBE_REGION
- select H8_HAS_BAT_TRESHOLDS_IMPL
-
-config VBOOT
- select VBOOT_VBNV_CMOS
- select GBB_FLAG_DISABLE_LID_SHUTDOWN
- select GBB_FLAG_DISABLE_PD_SOFTWARE_SYNC
- select GBB_FLAG_DISABLE_EC_SOFTWARE_SYNC
- select GBB_FLAG_DISABLE_FWMP
- select HAS_RECOVERY_MRC_CACHE
-
-config VBOOT_SLOTS_RW_A
- default y
-
-config VBOOT_VBNV_OFFSET
- hex
- default 0x2a
-
-config FMDFILE
- string
- default "src/mainboard/$(CONFIG_MAINBOARD_DIR)/vboot-rwa.fmd" if VBOOT
-
-config MAINBOARD_DIR
- string
- default lenovo/x201
-
-config MAINBOARD_PART_NUMBER
- string
- default "ThinkPad X201"
-
-config USBDEBUG_HCD_INDEX
- int
- default 2
-
-config DRAM_RESET_GATE_GPIO
- int
- default 10
-
-config MAX_CPUS
- int
- default 4
-
-# Without the Intel ME's EFFS partition some PCIe devices (like the USB and SATA
-# controllers) don't work as expected
-config ME_CLEANER_ARGS
- string
- default "-S -w EFFS"
-
-endif
diff --git a/src/mainboard/lenovo/x201/Kconfig.name b/src/mainboard/lenovo/x201/Kconfig.name
deleted file mode 100644
index a73d224..0000000
--- a/src/mainboard/lenovo/x201/Kconfig.name
+++ /dev/null
@@ -1,2 +0,0 @@
-config BOARD_LENOVO_X201
- bool "ThinkPad X201 / X201i / X201s / X201t"
diff --git a/src/mainboard/lenovo/x201/Makefile.inc b/src/mainboard/lenovo/x201/Makefile.inc
deleted file mode 100644
index 548beff..0000000
--- a/src/mainboard/lenovo/x201/Makefile.inc
+++ /dev/null
@@ -1,24 +0,0 @@
-##
-## This file is part of the coreboot project.
-##
-## Copyright (C) 2007-2008 coresystems GmbH
-##
-## 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.
-##
-
-bootblock-y += early_init.c
-
-smm-y += dock.c
-smm-y += smihandler.c
-romstage-y += dock.c
-ramstage-y += dock.c
-romstage-y += gpio.c
-
-ramstage-$(CONFIG_MAINBOARD_USE_LIBGFXINIT) += gma-mainboard.ads
diff --git a/src/mainboard/lenovo/x201/acpi/dock.asl b/src/mainboard/lenovo/x201/acpi/dock.asl
deleted file mode 100644
index 2bba821..0000000
--- a/src/mainboard/lenovo/x201/acpi/dock.asl
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (c) 2011 Sven Schnelle <svens@stackframe.org>
- *
- * 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.
- */
-
-Scope (\_SB)
-{
- Device(DOCK)
- {
- Name(_HID, "ACPI0003")
- Name(_UID, 0x00)
- Name(_PCL, Package() { \_SB } )
-
- Method(_DCK, 1, NotSerialized)
- {
- if (Arg0) {
- /* connect dock */
- Store (1, \GP28)
- Store (1, \_SB.PCI0.LPCB.EC.DKR1)
- Store (1, \_SB.PCI0.LPCB.EC.DKR2)
- Store (1, \_SB.PCI0.LPCB.EC.DKR3)
- } else {
- /* disconnect dock */
- Store (0, \GP28)
- Store (0, \_SB.PCI0.LPCB.EC.DKR1)
- Store (0, \_SB.PCI0.LPCB.EC.DKR2)
- Store (0, \_SB.PCI0.LPCB.EC.DKR3)
- }
- Xor(Arg0, \_SB.PCI0.LPCB.EC.DKR1, Local0)
- Return (Local0)
- }
-
- Method(_STA, 0, NotSerialized)
- {
- Return (\_SB.PCI0.LPCB.EC.DKR1)
- }
- }
-}
-
-Scope(\_SB.PCI0.LPCB.EC)
-{
- Method(_Q18, 0, NotSerialized)
- {
- Notify(\_SB.DOCK, 3)
- }
-
- Method(_Q45, 0, NotSerialized)
- {
- Notify(\_SB.DOCK, 3)
- }
-
- Method(_Q58, 0, NotSerialized)
- {
- Notify(\_SB.DOCK, 0)
- }
-
- Method(_Q37, 0, NotSerialized)
- {
- Notify(\_SB.DOCK, 0)
- }
-}
diff --git a/src/mainboard/lenovo/x201/acpi/ec.asl b/src/mainboard/lenovo/x201/acpi/ec.asl
deleted file mode 100644
index 411a0ec..0000000
--- a/src/mainboard/lenovo/x201/acpi/ec.asl
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (c) 2011 Sven Schnelle <svens@stackframe.org>
- *
- * 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.
- */
-
-#include <ec/lenovo/h8/acpi/ec.asl>
-
-Scope(\_SB.PCI0.LPCB.EC)
-{
-}
-
-#define H8_BAT_THRESHOLDS_BIT7
-#include <ec/lenovo/h8/acpi/thinkpad_bat_thresholds_24.asl>
diff --git a/src/mainboard/lenovo/x201/acpi/gpe.asl b/src/mainboard/lenovo/x201/acpi/gpe.asl
deleted file mode 100644
index 5c900ca..0000000
--- a/src/mainboard/lenovo/x201/acpi/gpe.asl
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (c) 2011 Sven Schnelle <svens@stackframe.org>
- *
- * 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.
- */
-
-Scope (\_GPE)
-{
- Method(_L18, 0, NotSerialized)
- {
- /* Read EC register to clear wake status */
- Store(\_SB.PCI0.LPCB.EC.WAKE, Local0)
- /* So that we don't get a warning that Local0 is unused. */
- Increment (Local0)
- }
-}
diff --git a/src/mainboard/lenovo/x201/acpi/platform.asl b/src/mainboard/lenovo/x201/acpi/platform.asl
deleted file mode 100644
index bcd6de6..0000000
--- a/src/mainboard/lenovo/x201/acpi/platform.asl
+++ /dev/null
@@ -1,132 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2007-2009 coresystems GmbH
- *
- * 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.
- */
-
-/* The _PTS method (Prepare To Sleep) is called before the OS is
- * entering a sleep state. The sleep state number is passed in Arg0
- */
-
-Method(_PTS,1)
-{
- \_SB.PCI0.LPCB.EC.MUTE(1)
- \_SB.PCI0.LPCB.EC.USBP(0)
- \_SB.PCI0.LPCB.EC.RADI(0)
-}
-
-/* The _WAK method is called on system wakeup */
-
-Method(_WAK,1)
-{
- /* ME may not be up yet. */
- Store (0, \_TZ.MEB1)
- Store (0, \_TZ.MEB2)
-
- /* Wake the HKEY to init BT/WWAN */
- \_SB.PCI0.LPCB.EC.HKEY.WAKE (Arg0)
-
- /* Not implemented. */
- Return(Package(){0,0})
-}
-
-Method(UCMS, 1, Serialized)
-{
- Switch(ToInteger(Arg0))
- {
- Case (0x0c) /* Turn on ThinkLight */
- {
- \_SB.PCI0.LPCB.EC.LGHT(1)
- }
- Case (0x0d) /* Turn off ThinkLight */
- {
- \_SB.PCI0.LPCB.EC.LGHT(0)
- }
- }
-}
-
-/* System Bus */
-
-Scope(\_SB)
-{
- /* This method is placed on the top level, so we can make sure it's the
- * first executed _INI method.
- */
- Method(_INI, 0)
- {
- /* The DTS data in NVS is probably not up to date.
- * Update temperature values and make sure AP thermal
- * interrupts can happen
- */
-
- /* TRAP(71) */ /* TODO */
-
- /* Determine the Operating System and save the value in OSYS.
- * We have to do this in order to be able to work around
- * certain windows bugs.
- *
- * OSYS value | Operating System
- * -----------+------------------
- * 2000 | Windows 2000
- * 2001 | Windows XP(+SP1)
- * 2002 | Windows XP SP2
- * 2006 | Windows Vista
- * ???? | Windows 7
- */
-
- /* Let's assume we're running at least Windows 2000 */
- Store (2000, OSYS)
-
- If (CondRefOf(_OSI)) {
- If (_OSI("Windows 2001")) {
- Store (2001, OSYS)
- }
-
- If (_OSI("Windows 2001 SP1")) {
- Store (2001, OSYS)
- }
-
- If (_OSI("Windows 2001 SP2")) {
- Store (2002, OSYS)
- }
-
- If (_OSI("Windows 2001.1")) {
- Store (2001, OSYS)
- }
-
- If (_OSI("Windows 2001.1 SP1")) {
- Store (2001, OSYS)
- }
-
- If (_OSI("Windows 2006")) {
- Store (2006, OSYS)
- }
-
- If (_OSI("Windows 2006.1")) {
- Store (2006, OSYS)
- }
-
- If (_OSI("Windows 2006 SP1")) {
- Store (2006, OSYS)
- }
-
- If (_OSI("Windows 2009")) {
- Store (2009, OSYS)
- }
-
- If (_OSI("Windows 2012")) {
- Store (2012, OSYS)
- }
- }
- }
-}
diff --git a/src/mainboard/lenovo/x201/acpi/superio.asl b/src/mainboard/lenovo/x201/acpi/superio.asl
deleted file mode 100644
index f2b35ba..0000000
--- a/src/mainboard/lenovo/x201/acpi/superio.asl
+++ /dev/null
@@ -1 +0,0 @@
-#include <drivers/pc80/pc/ps2_controller.asl>
diff --git a/src/mainboard/lenovo/x201/acpi_tables.c b/src/mainboard/lenovo/x201/acpi_tables.c
deleted file mode 100644
index 6fd47d7..0000000
--- a/src/mainboard/lenovo/x201/acpi_tables.c
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2007-2009 coresystems GmbH
- * Copyright (C) 2013 Vladimir Serbinenko <phcoder@gmail.com>
- *
- * 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.
- */
-
-#include <southbridge/intel/ibexpeak/nvs.h>
-#include "thermal.h"
-
-static void acpi_update_thermal_table(global_nvs_t *gnvs)
-{
- gnvs->tcrt = CRITICAL_TEMPERATURE;
- gnvs->tpsv = PASSIVE_TEMPERATURE;
-}
-
-void acpi_create_gnvs(global_nvs_t * gnvs)
-{
- acpi_update_thermal_table(gnvs);
-}
diff --git a/src/mainboard/lenovo/x201/cmos.default b/src/mainboard/lenovo/x201/cmos.default
deleted file mode 100644
index 2cf484f..0000000
--- a/src/mainboard/lenovo/x201/cmos.default
+++ /dev/null
@@ -1,17 +0,0 @@
-boot_option=Fallback
-debug_level=Debug
-power_on_after_fail=Disable
-nmi=Enable
-volume=0x3
-first_battery=Primary
-bluetooth=Enable
-wwan=Enable
-wlan=Enable
-touchpad=Enable
-trackpoint=Enable
-fn_ctrl_swap=Disable
-sticky_fn=Disable
-power_management_beeps=Enable
-low_battery_beep=Enable
-sata_mode=AHCI
-usb_always_on=Disable
diff --git a/src/mainboard/lenovo/x201/cmos.layout b/src/mainboard/lenovo/x201/cmos.layout
deleted file mode 100644
index 990db6d..0000000
--- a/src/mainboard/lenovo/x201/cmos.layout
+++ /dev/null
@@ -1,128 +0,0 @@
-##
-## This file is part of the coreboot project.
-##
-## Copyright (C) 2007-2008 coresystems GmbH
-## Copyright (C) 2013 Vladimir Serbinenko
-##
-## 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.
-##
-
-# -----------------------------------------------------------------
-entries
-
-# -----------------------------------------------------------------
-# Status Register A
-# -----------------------------------------------------------------
-# Status Register B
-# -----------------------------------------------------------------
-# Status Register C
-#96 4 r 0 status_c_rsvd
-#100 1 r 0 uf_flag
-#101 1 r 0 af_flag
-#102 1 r 0 pf_flag
-#103 1 r 0 irqf_flag
-# -----------------------------------------------------------------
-# Status Register D
-#104 7 r 0 status_d_rsvd
-#111 1 r 0 valid_cmos_ram
-# -----------------------------------------------------------------
-# Diagnostic Status Register
-#112 8 r 0 diag_rsvd1
-
-# -----------------------------------------------------------------
-0 120 r 0 reserved_memory
-#120 264 r 0 unused
-
-# -----------------------------------------------------------------
-# RTC_BOOT_BYTE (coreboot hardcoded)
-384 1 e 4 boot_option
-388 4 h 0 reboot_counter
-#390 2 r 0 unused?
-
-# -----------------------------------------------------------------
-# coreboot config options: console
-#392 3 r 0 unused
-395 4 e 6 debug_level
-#399 1 r 0 unused
-
-#400 8 r 0 reserved for century byte
-
-# coreboot config options: southbridge
-408 1 e 1 nmi
-409 2 e 7 power_on_after_fail
-
-# coreboot config options: EC
-411 1 e 8 first_battery
-412 1 e 1 bluetooth
-413 1 e 1 wwan
-414 1 e 1 touchpad
-415 1 e 1 wlan
-416 1 e 1 trackpoint
-417 1 e 1 fn_ctrl_swap
-418 1 e 1 sticky_fn
-419 1 e 1 power_management_beeps
-420 1 e 1 low_battery_beep
-421 1 e 9 sata_mode
-422 2 e 11 usb_always_on
-#423 1 r 1 unused
-
-# coreboot config options: northbridge
-424 3 e 10 gfx_uma_size
-#427 5 r 0 unused
-432 8 h 0 volume
-
-# VBOOT
-448 128 r 0 vbnv
-
-# coreboot config options: check sums
-984 16 h 0 check_sum
-#1000 24 r 0 amd_reserved
-
-# -----------------------------------------------------------------
-
-enumerations
-
-#ID value text
-1 0 Disable
-1 1 Enable
-2 0 Enable
-2 1 Disable
-4 0 Fallback
-4 1 Normal
-6 0 Emergency
-6 1 Alert
-6 2 Critical
-6 3 Error
-6 4 Warning
-6 5 Notice
-6 6 Info
-6 7 Debug
-6 8 Spew
-7 0 Disable
-7 1 Enable
-7 2 Keep
-8 0 Secondary
-8 1 Primary
-9 0 AHCI
-9 1 Compatible
-10 0 32M
-10 1 48M
-10 2 64M
-10 3 128M
-10 5 96M
-10 6 160M
-11 0 Disable
-11 1 AC and battery
-11 2 AC only
-
-# -----------------------------------------------------------------
-checksums
-
-checksum 392 415 984
diff --git a/src/mainboard/lenovo/x201/dock.c b/src/mainboard/lenovo/x201/dock.c
deleted file mode 100644
index 58510ce..0000000
--- a/src/mainboard/lenovo/x201/dock.c
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2011 Sven Schnelle <svens@stackframe.org>
- * Copyright (C) 2013 Vladimir Serbinenko <phcoder@gmail.com>
- *
- * 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.
- */
-
-#include <console/console.h>
-#include <device/device.h>
-#include "dock.h"
-#include <southbridge/intel/common/gpio.h>
-#include <ec/lenovo/h8/h8.h>
-#include <ec/acpi/ec.h>
-
-void init_dock(void)
-{
- if (dock_present()) {
- printk(BIOS_DEBUG, "dock is connected\n");
- dock_connect();
- } else
- printk(BIOS_DEBUG, "dock is not connected\n");
-}
-
-void dock_connect(void)
-{
- ec_set_bit(0x02, 0);
- ec_set_bit(0x1a, 0);
- ec_set_bit(0xfe, 4);
-
- set_gpio(28, GPIO_LEVEL_HIGH);
-}
-
-void dock_disconnect(void)
-{
- ec_clr_bit(0x02, 0);
- ec_clr_bit(0x1a, 0);
- ec_clr_bit(0xfe, 4);
-
- set_gpio(28, GPIO_LEVEL_LOW);
-}
-
-int dock_present(void)
-{
- const int dock_id_gpio[] = { 3, 4, 5, -1};
-
- return get_gpios(dock_id_gpio) != 7;
-}
diff --git a/src/mainboard/lenovo/x201/dock.h b/src/mainboard/lenovo/x201/dock.h
deleted file mode 100644
index 6a08d81..0000000
--- a/src/mainboard/lenovo/x201/dock.h
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2011 Sven Schnelle <svens@stackframe.org>
- *
- * 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 THINKPAD_X201_DOCK_H
-#define THINKPAD_X201_DOCK_H
-void init_dock(void);
-void dock_connect(void);
-void dock_disconnect(void);
-int dock_present(void);
-#endif
diff --git a/src/mainboard/lenovo/x201/dsdt.asl b/src/mainboard/lenovo/x201/dsdt.asl
deleted file mode 100644
index 9d0204e..0000000
--- a/src/mainboard/lenovo/x201/dsdt.asl
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2007-2009 coresystems GmbH
- *
- * 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.
- */
-
-#define THINKPAD_EC_GPE 17
-#define BRIGHTNESS_UP \_SB.PCI0.GFX0.INCB
-#define BRIGHTNESS_DOWN \_SB.PCI0.GFX0.DECB
-#define ACPI_VIDEO_DEVICE \_SB.PCI0.GFX0
-#define EC_LENOVO_H8_ME_WORKAROUND 1
-
-#include <arch/acpi.h>
-DefinitionBlock(
- "dsdt.aml",
- "DSDT",
- 0x02, /* DSDT revision: ACPI v2.0 and up */
- OEM_ID,
- ACPI_TABLE_CREATOR,
- 0x20130325 /* OEM revision */
-)
-{
- #include <southbridge/intel/common/acpi/platform.asl>
-
- /* Some generic macros */
- #include "acpi/platform.asl"
-
- /* global NVS and variables */
- #include <southbridge/intel/bd82x6x/acpi/globalnvs.asl>
-
- /* General Purpose Events */
- #include "acpi/gpe.asl"
-
- #include <cpu/intel/common/acpi/cpu.asl>
-
- Scope (\_SB) {
- Device (PCI0)
- {
- #include <northbridge/intel/nehalem/acpi/nehalem.asl>
- #include <southbridge/intel/bd82x6x/acpi/pch.asl>
-
- #include <drivers/intel/gma/acpi/default_brightness_levels.asl>
- }
- Device (UNCR)
- {
- Name (_BBN, 0xFF)
- Name (RID, 0x00)
- Name (_HID, EisaId ("PNP0A03"))
- Name (_CRS, ResourceTemplate ()
- {
- WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode,
- 0x0000, /* Granularity */
- 0x00FF, /* Range Minimum */
- 0x00FF, /* Range Maximum */
- 0x0000, /* Translation Offset */
- 0x0001, /* Length */
- ,, )
- })
- Device (SAD)
- {
- Name (_ADR, 0x01)
- Name (RID, 0x00)
- OperationRegion (SADC, PCI_Config, 0x00, 0x0100)
- Field (SADC, DWordAcc, NoLock, Preserve)
- {
- Offset (0x40),
- PAM0, 8,
- PAM1, 8,
- PAM2, 8,
- PAM3, 8,
- PAM4, 8,
- PAM5, 8,
- PAM6, 8
- }
- }
- }
- }
-
- /* Chipset specific sleep states */
- #include <southbridge/intel/common/acpi/sleepstates.asl>
-
- /* Dock support code */
- #include "acpi/dock.asl"
-}
diff --git a/src/mainboard/lenovo/x201/early_init.c b/src/mainboard/lenovo/x201/early_init.c
deleted file mode 100644
index 7383381..0000000
--- a/src/mainboard/lenovo/x201/early_init.c
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2007-2009 coresystems GmbH
- * Copyright (C) 2011 Sven Schnelle <svens@stackframe.org>
- * Copyright (C) 2013 Vladimir Serbinenko <phcoder@gmail.com>
- *
- * 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.
- */
-
-#include <bootblock_common.h>
-#include <ec/acpi/ec.h>
-
-void bootblock_mainboard_early_init(void)
-{
- /* Enable USB Power. We need to do it early for usbdebug to work. */
- ec_set_bit(0x3b, 4);
-}
diff --git a/src/mainboard/lenovo/x201/gma-mainboard.ads b/src/mainboard/lenovo/x201/gma-mainboard.ads
deleted file mode 100644
index 9c2a3cb..0000000
--- a/src/mainboard/lenovo/x201/gma-mainboard.ads
+++ /dev/null
@@ -1,30 +0,0 @@
---
--- This file is part of the coreboot project.
---
--- 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; either version 2 of the License, or
--- (at your option) any later version.
---
--- 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.
---
-
-with HW.GFX.GMA;
-with HW.GFX.GMA.Display_Probing;
-
-use HW.GFX.GMA;
-use HW.GFX.GMA.Display_Probing;
-
-private package GMA.Mainboard is
-
- ports : constant Port_List :=
- (DP2, -- DP++ connector on the dock
- HDMI2,
- Analog,
- Internal,
- others => Disabled);
-
-end GMA.Mainboard;
diff --git a/src/mainboard/lenovo/x201/hda_verb.c b/src/mainboard/lenovo/x201/hda_verb.c
deleted file mode 100644
index 820e2c5..0000000
--- a/src/mainboard/lenovo/x201/hda_verb.c
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2014 Vladimir Serbinenko.
- *
- * 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,
- * or (at your option) any later version.
- *
- * 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.
- */
-
-#include <device/azalia_device.h>
-
-const u32 cim_verb_data[] = {
- /* coreboot specific header */
- 0x14F15069, /* Codec Vendor / Device ID: Conexant CX20585 */
- 0x17AA2155, /* Subsystem ID */
- 0x0000000B, /* Number of 4 dword sets */
-
- /* NID 0x01: Subsystem ID. */
- AZALIA_SUBVENDOR(0x0, 0x17AA2155),
-
- /* NID 0x19: Headphone jack. */
- AZALIA_PIN_CFG(0x0, 0x19, 0x042140F0),
-
- /* NID 0x1A: Dock mic jack. */
- AZALIA_PIN_CFG(0x0, 0x1A, 0x61A190F0),
-
- /* NID 0x1B: Mic jack. */
- AZALIA_PIN_CFG(0x0, 0x1B, 0x04A190F0),
-
- /* NID 0x1C: Dock headphone jack. */
- AZALIA_PIN_CFG(0x0, 0x1C, 0x612140F0),
-
- /* NID 0x1D: EAPD detect. */
- AZALIA_PIN_CFG(0x0, 0x1D, 0x601700F0),
-
- /* NID 0x1E */
- AZALIA_PIN_CFG(0x0, 0x1E, 0x40F001F0),
-
- /* NID 0x1F */
- AZALIA_PIN_CFG(0x0, 0x1F, 0x901701F0),
-
- /* NID 0x20 */
- AZALIA_PIN_CFG(0x0, 0x20, 0x40F001F0),
-
- /* NID 0x22 */
- AZALIA_PIN_CFG(0x0, 0x22, 0x40F001F0),
-
- /* NID 0x23: Internal mic boost volume. */
- AZALIA_PIN_CFG(0x0, 0x23, 0x90A601F0),
-
- 0x80862804, /* Codec Vendor / Device ID: Intel Ibexpeak HDMI. */
- 0x17aa21b5, /* Subsystem ID */
- 0x00000004, /* Number of 4 dword sets */
-
- /* NID 0x01, HDA Codec Subsystem ID Verb Table: 0x17aa21b5 */
- AZALIA_SUBVENDOR(0x3, 0x17AA21B5),
-
- /* NID 0x04. */
- AZALIA_PIN_CFG(0x3, 0x04, 0x58560010),
-
- /* NID 0x05. */
- AZALIA_PIN_CFG(0x3, 0x05, 0x18560020),
-
- /* NID 0x06. */
- AZALIA_PIN_CFG(0x3, 0x06, 0x58560030),
-};
-
-const u32 pc_beep_verbs[0] = {};
-
-AZALIA_ARRAY_SIZES;
diff --git a/src/mainboard/lenovo/x201/mainboard.c b/src/mainboard/lenovo/x201/mainboard.c
deleted file mode 100644
index a403237..0000000
--- a/src/mainboard/lenovo/x201/mainboard.c
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2007-2009 coresystems GmbH
- * Copyright (C) 2011 Sven Schnelle <svens@stackframe.org>
- * Copyright (C) 2013 Vladimir Serbinenko <phcoder@gmail.com>
- *
- * 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.
- */
-
-#include <device/device.h>
-#include <device/pci_ops.h>
-#include <ec/acpi/ec.h>
-#include <northbridge/intel/nehalem/nehalem.h>
-#include <southbridge/intel/bd82x6x/pch.h>
-#include "dock.h"
-#include <drivers/intel/gma/int15.h>
-#include <cpu/x86/lapic.h>
-#include <drivers/lenovo/lenovo.h>
-
-static void fill_ssdt(struct device *device)
-{
- drivers_lenovo_serial_ports_ssdt_generate("\\_SB.PCI0.LPCB", 0);
-}
-
-static void mainboard_enable(struct device *dev)
-{
- dev->ops->acpi_fill_ssdt_generator = fill_ssdt;
-
- /* If we're resuming from suspend, blink suspend LED */
- if (acpi_is_wakeup_s3())
- ec_write(0x0c, 0xc7);
-
- install_intel_vga_int15_handler(GMA_INT15_ACTIVE_LFP_INT_LVDS,
- GMA_INT15_PANEL_FIT_DEFAULT,
- GMA_INT15_BOOT_DISPLAY_LFP, 2);
-
- init_dock();
-}
-
-struct chip_operations mainboard_ops = {
- .enable_dev = mainboard_enable,
-};
diff --git a/src/mainboard/lenovo/x201/romstage.c b/src/mainboard/lenovo/x201/romstage.c
deleted file mode 100644
index 99875ed..0000000
--- a/src/mainboard/lenovo/x201/romstage.c
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2007-2009 coresystems GmbH
- * Copyright (C) 2011 Sven Schnelle <svens@stackframe.org>
- * Copyright (C) 2013 Vladimir Serbinenko <phcoder@gmail.com>
- *
- * 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.
- */
-
-#include <stdint.h>
-#include <arch/io.h>
-#include <device/pci_ops.h>
-#include <ec/acpi/ec.h>
-
-#include <southbridge/intel/ibexpeak/pch.h>
-#include <northbridge/intel/nehalem/nehalem.h>
-
-const struct southbridge_usb_port mainboard_usb_ports[] = {
- /* Enabled, Current table lookup index, OC map */
- { 1, IF1_557, 0 },
- { 1, IF1_55F, 1 },
- { 1, IF1_74B, 3 },
- { 1, IF1_74B, 3 },
- { 1, IF1_557, 3 },
- { 1, IF1_14B, 3 },
- { 1, IF1_74B, 3 },
- { 1, IF1_74B, 3 },
- { 1, IF1_74B, 4 },
- { 1, IF1_74B, 5 },
- { 1, IF1_55F, 7 },
- { 1, IF1_55F, 7 },
- { 1, IF1_557, 7 },
- { 1, IF1_55F, 7 },
-};
-
-static void set_fsb_frequency(void)
-{
- u8 block[5];
- u16 fsbfreq = 62879;
- smbus_block_read(0x69, 0, 5, block);
- block[0] = fsbfreq;
- block[1] = fsbfreq >> 8;
-
- smbus_block_write(0x69, 0, 5, block);
-}
-
-void mainboard_pre_raminit(void)
-{
- outb((inb(DEFAULT_GPIOBASE | 0x3a) & ~0x2) | 0x20,
- DEFAULT_GPIOBASE | 0x3a);
- outb(0x50, 0x15ec);
- outb(inb(0x15ee) & 0x70, 0x15ee);
-
- set_fsb_frequency();
-}
-
-void mainboard_get_spd_map(u8 *spd_addrmap)
-{
- spd_addrmap[0] = 0x50;
- spd_addrmap[2] = 0x51;
-}
diff --git a/src/mainboard/lenovo/x201/smihandler.c b/src/mainboard/lenovo/x201/smihandler.c
deleted file mode 100644
index 4ba10b4..0000000
--- a/src/mainboard/lenovo/x201/smihandler.c
+++ /dev/null
@@ -1,110 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2008-2009 coresystems GmbH
- *
- * 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.
- */
-
-#include <arch/io.h>
-#include <console/console.h>
-#include <cpu/x86/smm.h>
-#include <southbridge/intel/ibexpeak/nvs.h>
-#include <southbridge/intel/common/pmutil.h>
-#include <northbridge/intel/nehalem/nehalem.h>
-#include <ec/acpi/ec.h>
-#include <ec/lenovo/h8/h8.h>
-#include <delay.h>
-#include "dock.h"
-
-#define GPE_EC_SCI 1
-#define GPE_EC_WAKE 13
-
-static void mainboard_smi_handle_ec_sci(void)
-{
- u8 status = inb(EC_SC);
- u8 event;
-
- if (!(status & EC_SCI_EVT))
- return;
-
- event = ec_query();
- printk(BIOS_DEBUG, "EC event %02x\n", event);
-
- switch (event) {
- case 0x18:
- /* Fn-F9 key */
- case 0x27:
- /* Power loss */
- case 0x50:
- /* Undock Key */
- ec_clr_bit(0x03, 2);
- dock_disconnect();
- break;
- case 0x37:
- case 0x58:
- /* Dock Event */
- ec_clr_bit(0x03, 2);
- udelay(250000);
- dock_connect();
- ec_set_bit(0x03, 2);
- /* set dock LED to indicate status */
- ec_write(0x0c, 0x09);
- ec_write(0x0c, 0x88);
- break;
- default:
- break;
- }
-}
-
-void mainboard_smi_gpi(u32 gpi_sts)
-{
- if (gpi_sts & (1 << GPE_EC_SCI))
- mainboard_smi_handle_ec_sci();
-}
-
-int mainboard_smi_apmc(u8 data)
-{
- switch (data) {
- case APM_CNT_ACPI_ENABLE:
- /* use 0x1600/0x1604 to prevent races with userspace */
- ec_set_ports(0x1604, 0x1600);
- /* route H8SCI to SCI */
- gpi_route_interrupt(GPE_EC_SCI, GPI_IS_SCI);
- /* discard all events, and enable attention */
- ec_write(0x80, 0x01);
- break;
- case APM_CNT_ACPI_DISABLE:
- /* we have to use port 0x62/0x66, as 0x1600/0x1604 doesn't
- provide a EC query function */
- ec_set_ports(0x66, 0x62);
- /* route H8SCI# to SMI */
- gpi_route_interrupt(GPE_EC_SCI, GPI_IS_SMI);
- /* discard all events, and enable attention */
- ec_write(0x80, 0x01);
- break;
- default:
- break;
- }
- return 0;
-}
-
-void mainboard_smi_sleep(u8 slp_typ)
-{
- if (slp_typ == 3) {
- u8 ec_wake = ec_read(0x32);
- /* If EC wake events are enabled, enable wake on EC WAKE GPE. */
- if (ec_wake & 0x14) {
- /* Redirect EC WAKE GPE to SCI. */
- gpi_route_interrupt(GPE_EC_WAKE, GPI_IS_SCI);
- }
- }
-}
diff --git a/src/mainboard/lenovo/x201/thermal.h b/src/mainboard/lenovo/x201/thermal.h
deleted file mode 100644
index 72953fd..0000000
--- a/src/mainboard/lenovo/x201/thermal.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2008-2009 coresystems GmbH
- * Copyright (C) 2011 The Chromium OS Authors. All rights reserved.
- * Copyright (C) 2014 Vladimir Serbinenko
- * Copyright (C) 2016 Patrick Rudolph <siro@das-labor.org>
- * Copyright (C) 2017 James Ye <jye836@gmail.com>
- *
- * 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 MAINBOARD_THERMAL_H
-#define MAINBOARD_THERMAL_H
-
-/* Temperature which OS will shutdown at */
-#define CRITICAL_TEMPERATURE 100
-
-/* Temperature which OS will throttle CPU */
-#define PASSIVE_TEMPERATURE 90
-
-#endif /* MAINBOARD_THERMAL_H */
diff --git a/src/mainboard/lenovo/x201/vboot-rwa.fmd b/src/mainboard/lenovo/x201/vboot-rwa.fmd
deleted file mode 100644
index 0d1aa5d..0000000
--- a/src/mainboard/lenovo/x201/vboot-rwa.fmd
+++ /dev/null
@@ -1,30 +0,0 @@
-FLASH@0xff800000 0x800000 {
- SI_ALL@0x0 0x500000 {
- SI_DESC@0x0 0x1000
- SI_GBE@0x1000 0x2000
- SI_ME@0x3000 0x4ed000
- }
- SI_BIOS@0x500000 0x300000 {
- RW_SECTION_A 0x180000 {
- VBLOCK_A 0x10000
- FW_MAIN_A(CBFS)
- RW_FWID_A 0x40
- }
- UNIFIED_MRC_CACHE 0x20000 {
- RECOVERY_MRC_CACHE 0x10000
- RW_MRC_CACHE 0x10000
- }
- RW_VPD(PRESERVE) 0x1000
- SMMSTORE(PRESERVE) 0x40000
- WP_RO {
- RO_VPD(PRESERVE) 0x1000
- RO_SECTION {
- FMAP 0x800
- RO_FRID 0x40
- RO_PADDING 0x7c0
- GBB 0x1e000
- COREBOOT(CBFS)
- }
- }
- }
-}

To view, visit change 36871. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: Icfa1818812347ceb4e2de5cc4a3130537a4e13e7
Gerrit-Change-Number: 36871
Gerrit-PatchSet: 1
Gerrit-Owner: Maccraft123 <maccraft123mc@gmail.com>
Gerrit-MessageType: newchange