联想legion R7000笔记本linux使用体验
这款笔记本使用linux最主要的问题在触控板
默认情况下可能会加载hid_generic和hid_multitouch两个驱动, 这两个驱动加载后触摸板无法使用,键盘可以正常使用
可以在/etc/modprobe.d/blacklist.conf文件里面加上blacklist hid_multitouch这行,这样触摸板和键盘可以使用, 触摸板会被识别为类似鼠标的情况, 无法使用双指滑动
默认的键盘使用的驱动是hid_generic, 看dmesg信息显示键盘是ITE的,我这把键盘修改为使用hid_ite驱动
在drivers/hid/hid-ite.c文件中添加一行, 让键盘使用hid-ite驱动
static const struct hid_device_id ite_devices[] = {
{ HID_USB_DEVICE(USB_VENDOR_ID_ITE, USB_DEVICE_ID_ITE8595) },
/* 添加下面一行 */
{ HID_USB_DEVICE(USB_VENDOR_ID_ITE, USB_DEVICE_ID_ITE_LENOVO_LEGION_R7000) },
{ HID_USB_DEVICE(USB_VENDOR_ID_258A, USB_DEVICE_ID_258A_6A88) },
上面引用了一个常量,在drivers/hid/hid-ids.h文件里面定义
#define USB_VENDOR_ID_ITE 0x048d
#define USB_DEVICE_ID_ITE_LENOVO_YOGA 0x8386
#define USB_DEVICE_ID_ITE_LENOVO_YOGA2 0x8350
/* 我的键盘vid,pid是0x048d, 0xc100 添加下面一行 */
#define USB_DEVICE_ID_ITE_LENOVO_LEGION_R7000 0xc100
#define I2C_DEVICE_ID_ITE_LENOVO_LEGION_Y720 0x837a
#define USB_DEVICE_ID_ITE_LENOVO_YOGA900 0x8396
#define USB_DEVICE_ID_ITE8595 0x8595
static const struct hid_device_id rmi_id[] = {
{ HID_USB_DEVICE(USB_VENDOR_ID_RAZER, USB_DEVICE_ID_RAZER_BLADE_14),
.driver_data = RMI_DEVICE_HAS_PHYS_BUTTONS },
{ HID_USB_DEVICE(USB_VENDOR_ID_LENOVO, USB_DEVICE_ID_LENOVO_X1_COVER) },
{ HID_USB_DEVICE(USB_VENDOR_ID_PRIMAX, USB_DEVICE_ID_PRIMAX_REZEL) },
/* 添加了下面一行,让触摸板使用hid-rmi驱动 */
{ HID_I2C_DEVICE(I2C_VENDOR_ID_SYNAPTICS, I2C_PRODUCT_ID_SYNAPTICS_SYNA7f28) },
{ HID_USB_DEVICE(USB_VENDOR_ID_SYNAPTICS, USB_DEVICE_ID_SYNAPTICS_ACER_SWITCH5),
上面引用了一个常量,在drivers/hid/hid-ids.h文件里面定义
#define I2C_VENDOR_ID_SYNAPTICS 0x06cb
#define I2C_PRODUCT_ID_SYNAPTICS_SYNA2393 0x7a13
/* 我的触摸板vid,pid是0x06cb, 0x7f28, 添加下面一行 */
#define I2C_PRODUCT_ID_SYNAPTICS_SYNA7f28 0x7f28
禁用独立显卡
我个人非常讨厌nvidia的显卡的,笔记本就不该有nvidia的显卡,至少1660性能以下的独立显卡不应该存在
禁用显卡的方法:
如果是自己重新编译内核的, 可以参考一些内核配置选项
CPU参考:https://wiki.gentoo.org/wiki/Ryzen
iwlwifi无线网卡参考:https://wiki.gentoo.org/wiki/Iwlwifi
amdgpu参考:https://wiki.gentoo.org/wiki/AMDGPU
声卡参考:https://wiki.gentoo.org/wiki/ALSA
原文:https://www.cnblogs.com/mikeguan/p/13126497.html