This is a series of device drivers for Advantech EIO-IS200 embedded controller as follow:
MFD core: eiois200_core
GPIO: gpio-eiois200
Hardware monitor: eiois200-hwmon
Fan: eiois200_fan
Thermal: eiois200_thermal
I2C: i2c-eiois200
Video backlight: eiois200_bl
Watchdog: eiois200_wdt
See LICENSE for details.
See CONTRIBUTING.md for details.
These drivers have been verified on:
Ubuntu 20.04 and 22.04 with Linux kernel versions 5.15, 5.19, and 6.2.
Get it from Github repository with the following command in the Linux terminal.
git clone git@github.com:ADVANTECH-Corpcd/eio-is200-linux-kernel-driver.git
cd eio-is200-linux-kernel-driver
Run the following commands in the Linux terminal.
make # Build *.ko files
sudo make install # Install driver module
sudo make load # Load module
To uninstall the EIOIS200 driver, use the following "make" commands:
sudo make unload # Unload module
sudo make uninstall # Uninstall driver module
make clean # Clean *.ko files
We have prepared an example to demonstrate how to use the EIOIS200 driver. Simply type "./example.sh" to execute it.
root# sudo ./example.sh
DKMS is commonly used on debian and derivatives, like ubuntu, to streamline building extra kernel modules. If you need to package the source code into an installation package, please follow the instructions below. Please note that these instructions are based on version 0.0.2 of the source code. Before executing the commands, make sure to adjust the version number '0.0.2' according to the version you are currently using:
sudo cp eiois200-0.0.2/ /usr/src/ -r
sudo dkms add eiois200/0.0.2
sudo dkms build eiois200/0.0.2
sudo dkms mkdeb eiois200/0.0.2
After all, the installation package should be placed in /var/lib/dkms/eiois200/0.0.2/dev/ To verify this installation package, please follow the instructions below to test:
cp /var/lib/dkms/eiois200/0.0.2/deb/eiois200-dkms_0.0.2_amd64.deb .
sudo dpkg -i eiois200-dkms_0.0.2_amd64.deb
To test whether the installation is successful, you can test loading one of the modules, for example:
sudo modprobe eiois200-hwmon
lsmod | grep eio
If correct, the reply should be as follows:
eiois200_hwmon 40960 0
eiois200_core 28672 1 eiois200_hwmon
To uninstall the installation package, please follow the steps below:
sudo dpkg -P eiois200-dkms
To confirm that the package works properly, please use the following command:
sudo bash /usr/src/eiois200-0.0.2/example.sh
The shell script will start. You may use this sample to test each device driver:
**********************************************
** EIOIS200 Example **
**********************************************
Main (EIOIS200 driver demo script)
0) Terminate this program
1) Watch Dog
2) HWM
3) SmartFan
4) Thermal Protection
5) GPIO
6) Backlight
7) SMBus
8) I2C
9) Information
Enter your choice:
Thermal & Fan sysfs: https://www.kernel.org/doc/Documentation/thermal/sysfs-api.txt