coreboot-kgpe-d16/Documentation
dalao 56a25a98db 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>
2020-04-14 09:50:10 +00:00
..
Intel soc/intel: Obsolete mmap_region_granularity() 2019-08-07 05:38:14 +00:00
RFC Documentation/RFC: Drop obsolete doc 2019-10-07 01:08:55 +00:00
_static Documentation: Add static CSS file to fix tables 2018-05-14 17:21:37 +00:00
acpi acpi: Change Processor ACPI Name (Intel only) 2020-03-23 16:54:58 +00:00
arch arch/riscv: Pass cbmem_top to ramstage via calling argument 2019-11-10 11:46:10 +00:00
community Documentation: Add our issue tracker to services 2019-10-07 01:08:40 +00:00
contributing Documentation: Add new GSoC projects 2020-03-20 14:44:47 +00:00
doxygen Documentation: Add doxygen_platform target 2017-03-23 21:19:34 +01:00
drivers Documentation: Add SMMSTORE documentation 2019-11-29 08:58:01 +00:00
flash_tutorial Documentation: Use inline code block for kernel parameter 2020-02-19 12:09:53 +00:00
getting_started Documentation: getting_started/gpio.md: fix markup 2020-02-24 12:59:53 +00:00
gfx 3rdparty/libgfxinit: Update submodule pointer 2020-03-09 08:20:12 +00:00
ifdtool Documentation: ifdtool/layout: use real table for FD regions 2020-02-17 20:08:41 +00:00
lib {Documentation,soc/intel}: Fix typo 2020-01-10 15:24:58 +00:00
mainboard mainboard/lenovo: Use the original hardware ids for keyboard/pointing 2020-04-14 09:50:10 +00:00
northbridge Documentation: Add tutorial for me_cleaner on Lenovo devices 2020-03-02 11:39:05 +00:00
releases Doc/security/vboot: Add a script generated device list 2020-03-23 09:23:11 +00:00
security Doc/security/vboot: Add a script generated device list 2020-03-23 09:23:11 +00:00
soc soc/intel/cannonlake: Steal no memory for disabled IGD 2020-04-09 21:49:01 +00:00
superio superio/nuvoton/nct5539d: Update documentation and remove DSDT 2020-03-11 15:03:39 +00:00
technotes Documentation: Add a technote section 2019-10-23 14:22:58 +00:00
tutorial treewide: capitalize 'BIOS' 2020-02-17 20:11:24 +00:00
vendorcode Documentation/vendorcode/eltan: Update security document 2020-01-30 13:28:24 +00:00
AMD-S3.txt Documentation: change coreboot to lowercase 2017-06-12 04:06:40 +02:00
COPYING Documentation/COPYING: Remove trailing whitespace 2018-04-27 09:10:20 +00:00
Doxyfile.coreboot Documentation: Update doxygen config files 2018-05-22 07:27:58 +00:00
Doxyfile.coreboot_simple Documentation: Update doxygen config files 2018-05-22 07:27:58 +00:00
Makefile Documentation: Allow passing arguments into make livesphinx 2019-02-05 21:15:37 +00:00
Makefile.sphinx Documentation: Improve message printed by livesphinx target 2018-10-11 01:22:35 +00:00
POSTCODES post_code: add post code for video initialization failure 2019-05-22 17:45:11 +00:00
beginverbatim.tex
cbfs.txt Fix typos involving "the the" 2018-12-18 13:24:28 +00:00
codeflow.svg Documentation: Remove whitespace before tab 2018-06-04 11:48:23 +00:00
coding_style.md Documentation/coding_style.md: Update line length limit 2019-09-04 10:54:41 +00:00
conf.py Documentation: enable ditaa integration 2019-12-12 08:18:49 +00:00
corebootBuildingGuide.tex Use git HTTP URLs without `/p` in it 2018-04-17 10:38:06 +00:00
coreboot_logo.png
distributions.md docs/distributions: remove entry for John Lewis' ROMs 2019-08-02 09:59:44 +00:00
endverbatim.tex
gcov.txt
hypertransport.svg
index.md Doc/index.md: Fix a typo 2019-12-26 10:49:46 +00:00
mainboard_io_trap_handler_sample.c
payloads.md Documentation: Add Heads to payloads 2020-03-02 11:39:16 +00:00
util.md util: Remove viatool 2020-03-04 15:46:44 +00:00