Coder Social home page Coder Social logo

advantech-corp / eio-is200-linux-kernel-driver Goto Github PK

View Code? Open in Web Editor NEW
0.0 17.0 1.0 327 KB

Drivers for Advantech EIO-IS200

Home Page: http://www.advantech.com.tw

License: GNU General Public License v2.0

Shell 19.13% Makefile 7.86% C 73.01%
advantech drivers eio-is200

eio-is200-linux-kernel-driver's Introduction

EIO-IS200 Linux Kernel Driver

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

OS supported

These drivers have been verified on:

   Ubuntu 20.04 and 22.04 with Linux kernel versions 5.15, 5.19, and 6.2.

Get the source first.

Get it from Github repository with the following command in the Linux terminal.

  git clone [email protected]:ADVANTECH-Corpcd/eio-is200-linux-kernel-driver.git
  cd eio-is200-linux-kernel-driver

Install

Run the following commands in the Linux terminal.

  make                 # Build *.ko files
  sudo make install    # Install driver module
  sudo make load       # Load module

Uninstall

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

Example

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 packaging for debian and derivatives

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: 

Reference

eio-is200-linux-kernel-driver's People

Contributors

chungwenkai avatar mferland avatar mingwei0314 avatar

Watchers

 avatar  avatar  avatar Neo Lo avatar  avatar  avatar  avatar  avatar Scott Chang avatar Charles Huang avatar Will Chen avatar  avatar  avatar clayderhua avatar HBW avatar  avatar  avatar

Forkers

mferland

eio-is200-linux-kernel-driver's Issues

PWM in Manual mode seems not properly working

I was playing with your driver and seems like the pwm in manual mode is not properly working. This is what I've done:

  • Set the fan device to Manual control mode:
    echo Manual > fan_mode
  • Set PWM:
echo 50 > PWM
echo 80 > PWM
echo 100 > PWM

What I see is the fan goes from stop to full speed no matter the input value used (except for 0 when it actually stops spinning).
Thank you, help appreciated!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.