2016年6月20日 星期一

[Linux Kernel] How to compile ASUS_WMI & ASUS_NB_WMI


I want Fn+F9 can work. So the follow step is procedure for my testing. It work.

make menuconfig

Device Drivers → X86 Platform Specific Device Drivers

Tick up
<M>   WMI  (will open - < >   ASUS WMI Driver)
Tick up
    <M>   ASUS WMI Driver (when tick up this time will tick up another item was called Asus Notebook WMI Driver)
        <M>     Asus Notebook WMI Driver

Check .config

[happy@localhost linux-4.6.2]$ grep -inr "asus_wmi"  .config
3177:CONFIG_ASUS_WMI=m
[happy@localhost linux-4.6.2]$ grep -inr "asus_nb_wmi"  .config
3178:CONFIG_ASUS_NB_WMI=m


How to find the method. I check my .config in my archlinux. The command like below.
zcat /proc/config.gz > .config

And I find my settings in my archlinux have two option have been opened.
CONFIG_ASUS_WMI=m
CONFIG_ASUS_NB_WMI=m

So I decide to download the linux kernel to find how to make those two option appear on my .config.

Why I want try this option, because my touchpad(Fn+F9) no work. I search other information that told me maybe I need this kernel module. So I want to compile it, and try if this module can let my touchpad work or not.

After set up the .config, then we need to start compile our kernel.
There have two method can do this job.

Method 1:
Use genkernel to compile kernel.

A: No specific .config
    genkernel all (Builds all stages — the initrd, kernel image and modules.)

B: Specific .config
    genkernel --config=/path/to/genkernel.conf all

Method 2:
Copy the bzImage to /boot
/usr/src/linux/arch/x86/boot/bzImage –> /boot

Generate initramfs
genkernel --install initramfs

Edit /boot/loader/entries/gentoo.conf
title Gentoo Linux
initrd /initramfs-genkernel-x86_64-4.4.6-gentoo
linux /bzImage
options root=/dev/sda2 rw

Reference:

0 意見:

張貼留言