diff options
author | dalao <dalao@tutanota.com> | 2019-10-27 17:08:34 +0800 |
---|---|---|
committer | Patrick Georgi <pgeorgi@google.com> | 2020-04-14 09:50:10 +0000 |
commit | 56a25a98db1835d02bf6936085073be685a2e10d (patch) | |
tree | e73eb060a0b8ce7ad961caf85628ae57e896aefa /src/mainboard/lenovo | |
parent | 65535332db1f94bbe08928f7c0e52f01cb26c1c1 (diff) | |
download | coreboot-56a25a98db1835d02bf6936085073be685a2e10d.tar.gz coreboot-56a25a98db1835d02bf6936085073be685a2e10d.tar.bz2 coreboot-56a25a98db1835d02bf6936085073be685a2e10d.zip |
mainboard/lenovo: Use the original hardware ids for keyboard/pointing
Currently coreboot is using the compatible ID PNP0303 for all keyboards
and PNP0F13 for all pointing devices, which causes some problems. On
Windows, the touchpad driver can't be automatically matched and
installed through Windows Update. On Linux, there are some strange
issues. So it's better to use the original hardware IDs for each model.
The hardware IDs for the following models can be found By searching for
dmesg logs on vendor BIOS:
T60: https://mail.gnome.org/archives/networkmanager-list/2012-January/msg00110.html
Keyboard: PNP0303 Pointing: IBM0057
R60: https://openbenchmarking.org/system/1202279-AR-COMPRESS715/Lenovo%20R60/dmesg
Keyboard: PNP0303 Pointing: IBM0057
X60: https://github.com/pavelmachek/missy/blob/master/db/notebook/lenovo/thinkpad/x60/pavel/2018.3648803539788/dmesg.out
Keyboard: PNP0303 Pointing: IBM3780
X200: https://ubuntuforums.org/showthread.php?t=1833248&page=2
Keyboard: LEN0010 Pointing: IBM3780
T400: https://github.com/heradon/libreboot-fork/blob/master/docs/future/dumps/logs-t400-bios2.02-ec1.01/dmesg.log
Keyboard: LEN0010 Pointing: IBM3780
T510: https://bbs.archlinux.org/viewtopic.php?id=120287
Keyboard: PNP0303 Pointing: LEN0015
T410: https://forum.ubuntuusers.de/topic/kein-sound-109/
Keyboard: PNP0303 Pointing: LEN0015
T420: https://linux-hardware.org/index.php?probe=e6a094ade5&log=dmesg
Keyboard: PNP0303 Pointing: LEN0015
T420s: https://bbs.archlinux.org/viewtopic.php?id=191510
Keyboard: PNP0303 Pointing: LEN0015
T520: https://bbs.archlinux.org/viewtopic.php?id=195636
Keyboard: PNP0303 Pointing: LEN0015
W520: https://linux-hardware.org/index.php?probe=9306cac54c&log=dmesg
Keyboard: PNP0303 Pointing: LEN0015
T430: https://github.com/farjump/fwtr/blob/master/lenovo/thinkpad-t430/2347ds2/lenovo/g1et73ww-2.09/fwts/20160218_174223/dmesg.log
Keyboard: PNP0303 Pointing: LEN0015
T430s: https://linux-hardware.org/index.php?probe=01545dc8fb&log=dmesg
Keyboard: PNP0303 Pointing: LEN0015
T530: https://forums.fedoraforum.org/showthread.php?316640-Fedora-27-High-CPU
Keyboard: LEN0071 Pointing: LEN0015
W530: https://bugs.freedesktop.org/attachment.cgi?id=115557
Keyboard: LEN0071 Pointing: LEN0015
L520: https://pastebin.com/U6MaBAY3
Keyboard: PNP0303 Pointing: LEN0017
X201: https://linux-hardware.org/index.php?probe=d7085ee4c8&log=dmesg.1
Keyboard: PNP0303 Pointing: LEN0018
X220: https://bbs.archlinux.org/viewtopic.php?id=237669
Keyboard: PNP0303 Pointing: LEN0020
X230: https://forums.bunsenlabs.org/viewtopic.php?id=2460
Keyboard: PNP0303 Pointing: LEN0020
X131e: https://linux-hardware.org/index.php?probe=d765880811&log=dmesg
Keyboard: MSF0001 Pointing: LEN0026
X1 Carbon Gen 1: https://bugzilla.kernel.org/show_bug.cgi?id=85851
Keyboard: LEN0071 Pointing: LEN0030
s230u: https://launchpadlibrarian.net/147231958/dmesg-reboot.txt
Keyboard: PTL0001 Pointing: LEN0031
T540p: https://linux-hardware.org/index.php?probe=da766a30bc&log=dmesg
Keyboard: LEN0071 Pointing: LEN0034
X240: https://linux-hardware.org/index.php?probe=fa7155b0e4&log=dmesg
Keyboard: LEN0071 Pointing: LEN0035
T440p: https://bugzilla.kernel.org/show_bug.cgi?id=91541
Keyboard: LEN0071 Pointing: LEN0036
T440s: https://bugzilla.kernel.org/show_bug.cgi?id=91541
Keyboard: LEN0071 Pointing: LEN0036
T450: https://gist.github.com/kzar/1c38630eb22e4bf5b976
Keyboard: LEN0071 Pointing: LEN200e
Others:
https://github.com/torvalds/linux/blob/master/drivers/input/mouse/synaptics.c
Test result: This can make Windows automatically install the Lenovo
touchpad driver. It also fixes the T440p touchpad issue.
Change-Id: Ifb635da99c5e05f987aaf4f172108d788dcc2932
Signed-off-by: dalao <dalao@tutanota.com>
Signed-off-by: Iru Cai <mytbk920423@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/36371
Reviewed-by: Nico Huber <nico.h@gmx.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/mainboard/lenovo')
-rw-r--r-- | src/mainboard/lenovo/l520/Kconfig | 6 | ||||
-rw-r--r-- | src/mainboard/lenovo/s230u/Kconfig | 6 | ||||
-rw-r--r-- | src/mainboard/lenovo/t400/Kconfig | 6 | ||||
-rw-r--r-- | src/mainboard/lenovo/t410/Kconfig | 6 | ||||
-rw-r--r-- | src/mainboard/lenovo/t420/Kconfig | 6 | ||||
-rw-r--r-- | src/mainboard/lenovo/t420s/Kconfig | 6 | ||||
-rw-r--r-- | src/mainboard/lenovo/t430/Kconfig | 7 | ||||
-rw-r--r-- | src/mainboard/lenovo/t430s/Kconfig | 6 | ||||
-rw-r--r-- | src/mainboard/lenovo/t440p/Kconfig | 6 | ||||
-rw-r--r-- | src/mainboard/lenovo/t520/Kconfig | 6 | ||||
-rw-r--r-- | src/mainboard/lenovo/t530/Kconfig | 6 | ||||
-rw-r--r-- | src/mainboard/lenovo/t60/Kconfig | 8 | ||||
-rw-r--r-- | src/mainboard/lenovo/x131e/Kconfig | 6 | ||||
-rw-r--r-- | src/mainboard/lenovo/x1_carbon_gen1/Kconfig | 6 | ||||
-rw-r--r-- | src/mainboard/lenovo/x200/Kconfig | 6 | ||||
-rw-r--r-- | src/mainboard/lenovo/x201/Kconfig | 6 | ||||
-rw-r--r-- | src/mainboard/lenovo/x220/Kconfig | 6 | ||||
-rw-r--r-- | src/mainboard/lenovo/x230/Kconfig | 6 | ||||
-rw-r--r-- | src/mainboard/lenovo/x60/Kconfig | 6 |
19 files changed, 117 insertions, 0 deletions
diff --git a/src/mainboard/lenovo/l520/Kconfig b/src/mainboard/lenovo/l520/Kconfig index 6716606ee4bf..5b9344a4374d 100644 --- a/src/mainboard/lenovo/l520/Kconfig +++ b/src/mainboard/lenovo/l520/Kconfig @@ -46,4 +46,10 @@ config USBDEBUG_HCD_INDEX int default 2 +config PS2K_EISAID + default "PNP0303" + +config PS2M_EISAID + default "LEN0017" + endif diff --git a/src/mainboard/lenovo/s230u/Kconfig b/src/mainboard/lenovo/s230u/Kconfig index 124890663093..64f4b2920039 100644 --- a/src/mainboard/lenovo/s230u/Kconfig +++ b/src/mainboard/lenovo/s230u/Kconfig @@ -52,4 +52,10 @@ config VGA_BIOS_ID string default "8086,0166" +config PS2K_EISAID + default "PTL0001" + +config PS2M_EISAID + default "LEN0031" + endif # BOARD_LENOVO_S230U diff --git a/src/mainboard/lenovo/t400/Kconfig b/src/mainboard/lenovo/t400/Kconfig index deb6c8e4bd12..e6f56310a8ff 100644 --- a/src/mainboard/lenovo/t400/Kconfig +++ b/src/mainboard/lenovo/t400/Kconfig @@ -79,4 +79,10 @@ config CBFS_SIZE hex default 0x200000 +config PS2K_EISAID + default "LEN0010" + +config PS2M_EISAID + default "IBM3780" + endif # BOARD_LENOVO_T400 diff --git a/src/mainboard/lenovo/t410/Kconfig b/src/mainboard/lenovo/t410/Kconfig index 86cfce8dfca9..ee79f11e6119 100644 --- a/src/mainboard/lenovo/t410/Kconfig +++ b/src/mainboard/lenovo/t410/Kconfig @@ -63,4 +63,10 @@ config DRAM_RESET_GATE_GPIO int default 10 +config PS2K_EISAID + default "PNP0303" + +config PS2M_EISAID + default "LEN0015" + endif diff --git a/src/mainboard/lenovo/t420/Kconfig b/src/mainboard/lenovo/t420/Kconfig index 7c715ed843b5..dfc8ed1d6115 100644 --- a/src/mainboard/lenovo/t420/Kconfig +++ b/src/mainboard/lenovo/t420/Kconfig @@ -75,4 +75,10 @@ config VGA_BIOS_ID string default "8086,0126" +config PS2K_EISAID + default "PNP0303" + +config PS2M_EISAID + default "LEN0015" + endif # BOARD_LENOVO_T420 diff --git a/src/mainboard/lenovo/t420s/Kconfig b/src/mainboard/lenovo/t420s/Kconfig index 6af93ac887ab..f29d50fe9668 100644 --- a/src/mainboard/lenovo/t420s/Kconfig +++ b/src/mainboard/lenovo/t420s/Kconfig @@ -74,4 +74,10 @@ config VGA_BIOS_ID string default "8086,0126" +config PS2K_EISAID + default "PNP0303" + +config PS2M_EISAID + default "LEN0015" + endif # BOARD_LENOVO_T420S diff --git a/src/mainboard/lenovo/t430/Kconfig b/src/mainboard/lenovo/t430/Kconfig index 009377d78f5d..45c7ae307ab2 100644 --- a/src/mainboard/lenovo/t430/Kconfig +++ b/src/mainboard/lenovo/t430/Kconfig @@ -68,4 +68,11 @@ config MAX_CPUS config USBDEBUG_HCD_INDEX int default 2 + +config PS2K_EISAID + default "PNP0303" + +config PS2M_EISAID + default "LEN0015" + endif diff --git a/src/mainboard/lenovo/t430s/Kconfig b/src/mainboard/lenovo/t430s/Kconfig index 3ed0d0ecde8c..15b0912d4491 100644 --- a/src/mainboard/lenovo/t430s/Kconfig +++ b/src/mainboard/lenovo/t430s/Kconfig @@ -84,4 +84,10 @@ config ONBOARD_VGA_IS_PRIMARY bool default y +config PS2K_EISAID + default "PNP0303" + +config PS2M_EISAID + default "LEN0015" + endif # BOARD_LENOVO_T430S || BOARD_LENOVO_T431S diff --git a/src/mainboard/lenovo/t440p/Kconfig b/src/mainboard/lenovo/t440p/Kconfig index 95cb1dc60737..e6785488dfe9 100644 --- a/src/mainboard/lenovo/t440p/Kconfig +++ b/src/mainboard/lenovo/t440p/Kconfig @@ -70,4 +70,10 @@ config DRIVER_LENOVO_SERIALS bool default n +config PS2K_EISAID + default "LEN0071" + +config PS2M_EISAID + default "LEN0036" + endif diff --git a/src/mainboard/lenovo/t520/Kconfig b/src/mainboard/lenovo/t520/Kconfig index a628adc6461a..aebb2dee4637 100644 --- a/src/mainboard/lenovo/t520/Kconfig +++ b/src/mainboard/lenovo/t520/Kconfig @@ -84,4 +84,10 @@ config VGA_BIOS_FILE string default "pci8086,0126.rom" +config PS2K_EISAID + default "PNP0303" + +config PS2M_EISAID + default "LEN0015" + endif diff --git a/src/mainboard/lenovo/t530/Kconfig b/src/mainboard/lenovo/t530/Kconfig index 0f8d3267f3e6..2a0e3ea039c4 100644 --- a/src/mainboard/lenovo/t530/Kconfig +++ b/src/mainboard/lenovo/t530/Kconfig @@ -85,4 +85,10 @@ config VGA_BIOS_ID string default "8086,0166" +config PS2K_EISAID + default "LEN0071" + +config PS2M_EISAID + default "LEN0015" + endif diff --git a/src/mainboard/lenovo/t60/Kconfig b/src/mainboard/lenovo/t60/Kconfig index 58d41a6b57c3..57172ca25cda 100644 --- a/src/mainboard/lenovo/t60/Kconfig +++ b/src/mainboard/lenovo/t60/Kconfig @@ -46,4 +46,12 @@ config MAX_CPUS int default 2 +config PS2K_EISAID + default "PNP0303" if BOARD_LENOVO_T60 + default "PNP0303" if BOARD_LENOVO_R60 + +config PS2M_EISAID + default "IBM0057" if BOARD_LENOVO_T60 + default "IBM0057" if BOARD_LENOVO_R60 + endif # BOARD_LENOVO_T60 || BOARD_LENOVO_Z61T || BOARD_LENOVO_R60 diff --git a/src/mainboard/lenovo/x131e/Kconfig b/src/mainboard/lenovo/x131e/Kconfig index 29fda105f27f..06c5d8373710 100644 --- a/src/mainboard/lenovo/x131e/Kconfig +++ b/src/mainboard/lenovo/x131e/Kconfig @@ -56,4 +56,10 @@ config USBDEBUG_HCD_INDEX int default 2 +config PS2K_EISAID + default "MSF0001" + +config PS2M_EISAID + default "LEN0026" + endif # BOARD_LENOVO_X131E diff --git a/src/mainboard/lenovo/x1_carbon_gen1/Kconfig b/src/mainboard/lenovo/x1_carbon_gen1/Kconfig index 830ace427d11..246e1db5aaa7 100644 --- a/src/mainboard/lenovo/x1_carbon_gen1/Kconfig +++ b/src/mainboard/lenovo/x1_carbon_gen1/Kconfig @@ -73,4 +73,10 @@ config VGA_BIOS_ID string default "8086,0166" +config PS2K_EISAID + default "LEN0071" + +config PS2M_EISAID + default "LEN0030" + endif # BOARD_LENOVO_X1_CARBON_GEN1 diff --git a/src/mainboard/lenovo/x200/Kconfig b/src/mainboard/lenovo/x200/Kconfig index 432c805078d8..731f4cb142a7 100644 --- a/src/mainboard/lenovo/x200/Kconfig +++ b/src/mainboard/lenovo/x200/Kconfig @@ -72,4 +72,10 @@ config CBFS_SIZE hex default 0x200000 +config PS2K_EISAID + default "LEN0010" if BOARD_LENOVO_X200 + +config PS2M_EISAID + default "IBM3780" if BOARD_LENOVO_X200 + endif # BOARD_LENOVO_X200 || BOARD_LENOVO_X301 diff --git a/src/mainboard/lenovo/x201/Kconfig b/src/mainboard/lenovo/x201/Kconfig index 42cf8f956edb..d73eac3c7de0 100644 --- a/src/mainboard/lenovo/x201/Kconfig +++ b/src/mainboard/lenovo/x201/Kconfig @@ -68,4 +68,10 @@ config ME_CLEANER_ARGS string default "-S -w EFFS" +config PS2K_EISAID + default "PNP0303" + +config PS2M_EISAID + default "LEN0018" + endif diff --git a/src/mainboard/lenovo/x220/Kconfig b/src/mainboard/lenovo/x220/Kconfig index 7c4754dbbdea..33e15a81cc95 100644 --- a/src/mainboard/lenovo/x220/Kconfig +++ b/src/mainboard/lenovo/x220/Kconfig @@ -87,4 +87,10 @@ config VGA_BIOS_ID default "8086,0116" if BOARD_LENOVO_X220I default "8086,0126" +config PS2K_EISAID + default "PNP0303" + +config PS2M_EISAID + default "LEN0020" + endif # BOARD_LENOVO_X220 || BOARD_LENOVO_X220I || BOARD_LENOVO_X1 diff --git a/src/mainboard/lenovo/x230/Kconfig b/src/mainboard/lenovo/x230/Kconfig index b25d7cf8587a..7d563efb2b2d 100644 --- a/src/mainboard/lenovo/x230/Kconfig +++ b/src/mainboard/lenovo/x230/Kconfig @@ -75,4 +75,10 @@ config VGA_BIOS_ID string default "8086,0166" +config PS2K_EISAID + default "PNP0303" + +config PS2M_EISAID + default "LEN0020" + endif # BOARD_LENOVO_X230 || BOARD_LENOVO_X230T diff --git a/src/mainboard/lenovo/x60/Kconfig b/src/mainboard/lenovo/x60/Kconfig index 1815892d4aa7..994a071fa32b 100644 --- a/src/mainboard/lenovo/x60/Kconfig +++ b/src/mainboard/lenovo/x60/Kconfig @@ -42,4 +42,10 @@ config MAX_CPUS int default 2 +config PS2K_EISAID + default "PNP0303" + +config PS2M_EISAID + default "IBM3780" + endif |