聯想legion R7000筆記本linux使用體驗php
這款筆記本使用linux最主要的問題在觸控板linux
-
默認狀況下可能會加載hid_generic和hid_multitouch兩個驅動, 這兩個驅動加載後觸摸板沒法使用,鍵盤能夠正常使用git
-
能夠在/etc/modprobe.d/blacklist.conf文件裏面加上blacklist hid_multitouch這行,這樣觸摸板和鍵盤可使用, 觸摸板會被識別爲相似鼠標的狀況, 沒法使用雙指滑動github
-
默認的鍵盤使用的驅動是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
- 觸摸板的vendorID是0x06CB, 這個看着像是synaptics的, 搜了下彷佛hid-rmi驅動比較像,就用這個測試下吧
在drivers/hid/hid-rmi.c文件中添加一行, 讓觸摸板使用hid-rmi驅動
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文件裏面定義code
#define I2C_VENDOR_ID_SYNAPTICS 0x06cb #define I2C_PRODUCT_ID_SYNAPTICS_SYNA2393 0x7a13 /* 個人觸摸板vid,pid是0x06cb, 0x7f28, 添加下面一行 */ #define I2C_PRODUCT_ID_SYNAPTICS_SYNA7f28 0x7f28
- 從新編譯內核, 禁用hid-generic和hid-multitouch驅動,測試鍵盤和觸摸板可使用, 不過觸摸板單擊不太靈敏
禁用獨立顯卡
我我的很是討厭nvidia的顯卡的,筆記本就不應有nvidia的顯卡,至少1660性能如下的獨立顯卡不該該存在
禁用顯卡的方法:
get
- 能夠從新編輯DSDT, 方法相似黑蘋果,而後編譯內核指定加載從新編譯過的DSDT。 這種方式是比較好的,順便還能夠修正一些DSDT的問題, 不過比較麻煩,我採用第二種方式了
- 用acpi_call來在開機後禁用獨顯
方法參考:https://wiki.archlinux.org/index.php/Hybrid_graphics
程序下載地址:https://github.com/mkottman/acpi_call
這裏須要注意,在5.6內核有些變更, 原程序好久沒有更新了,編譯會報錯, 能夠參考這個pr修改:https://github.com/mkottman/acpi_call/pull/88
若是是本身從新編譯內核的, 能夠參考一些內核配置選項
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
it