NOTE: Version v2.0 is the one in mainline kernel >= 5.0, this repository is used for testing and development purposes. v3.3 has been merged in kernel 5.5
This driver adds support for some of the missing features found on Huawei laptops running linux. It implements Windows Management Instrumentation (WMI) device mapping to kernel. Supported features are:
Battery protection can accessed from either /sys/class/power_supply/BAT0/charge_control_{start,end}_threshold
or /sys/devices/platform/huawei-wmi/charge_control_thresholds
Fn-lock can be accessed from /sys/devices/platform/huawei-wmi/fn_lock_state
This driver requires kernel >= 5.1. If you're on kernel <= 5.0, please refer to tag v1.0 for kernel < 5.0 or tag v3.2 if you're running version 5.0.
Check out matebook-applet for a GUI to control Fn-lock and battery protection.
Make sure you're using kernel >= 5.0. You can get this driver from here if you want to use DKMS modules for easy installation.
Install the RPM package provided here.
Note: change VER
to the desired module version.
huawei-wmi-VER-source-only.dkms.tar.gz
from heresudo dkms ldtarball --archive=huawei-wmi-VER-source-only.dkms.tar.gz
sudo dkms install huawei-wmi/VER
sudo dnf install kernel-headers kernel-devel
Should be similar in other distributions.
git clone https://github.com/aymanbagabas/Huawei-WMI
cd Huawei-WMI
make
# To update use:
sudo cp huawei-wmi.ko /lib/modules/$(uname -r)/updates/
sudo depmod
# To install use:
sudo make install
reboot
This method overwrites the exsiting version of huawei-wmi
that comes with
kernel 5.0. You have to redo it everytime the kernel gets updated.
NOTE: Ignore this if you're running systemd-udev
> 240.
One of the keys, micmute
, wouldn't work after inserting the module and that is
due to an issue with X.Org. The solution would be to remap it to using udev
hwdb tables.
Copy 99-Huawei.hwdb
to /etc/udev/hwdb.d/
then update the hwdb tables:
sudo udevadm --debug hwdb --update; sudo udevadm trigger
Fork, modify, and pull request.
WRT-WX9
and for his awesome project matebook-applet.KPL-W0X
.