Difference between revisions of "Fitlet GPIO SDK for Linux"

From fit-PC wiki
Jump to: navigation, search
(Overview)   (change visibility)
 
(2 intermediate revisions by one other user not shown)
Line 1: Line 1:
== GPIO ==
+
__TOC__
* '''NOTE!''' Not supported in mainline Linux kernel. [[Fitlet:_Linux:_Kernel | Linux Kernel for Fitlet]] should be installed to make this feature work
+
== Overview ==
 +
* Not supported in mainline Linux kernel
 +
* [[Fitlet:_Linux:_Kernel | Linux Kernel for Fitlet]] must be installed to make this feature work
 
* GPIO interface on fitlet consists of 9 GPIOs provided by AMD FCH (Fusion Controller Hub)
 
* GPIO interface on fitlet consists of 9 GPIOs provided by AMD FCH (Fusion Controller Hub)
 
* The responsible kernel module is gpio_fch
 
* The responsible kernel module is gpio_fch
Line 48: Line 50:
 
| GPIO29
 
| GPIO29
 
| 1.5V
 
| 1.5V
| Soc
+
| SoC
 
|
 
|
 
|-
 
|-
Line 115: Line 117:
 
|}
 
|}
  
 
+
== Usage ==
 
* The GPIO sysfs interface allows users to manipulate any GPIO from userspace dynamically.
 
* The GPIO sysfs interface allows users to manipulate any GPIO from userspace dynamically.
 
* A basic example of GPIO P-1 (Brown) usage (as root user):
 
* A basic example of GPIO P-1 (Brown) usage (as root user):
  
  $ modprobe fch_gpio
+
  $ modprobe gpio_fch
 
  $ echo 89 > /sys/class/gpio/export
 
  $ echo 89 > /sys/class/gpio/export
 
  $ echo out > /sys/class/gpio/gpio89/direction
 
  $ echo out > /sys/class/gpio/gpio89/direction
Line 128: Line 130:
 
  $ echo 89 > /sys/class/gpio/unexport
 
  $ echo 89 > /sys/class/gpio/unexport
  
 +
== Documentation ==
 
* The GPIO framework and GPIO sysfs interface are documented in https://www.kernel.org/doc/Documentation/gpio/gpio.txt
 
* The GPIO framework and GPIO sysfs interface are documented in https://www.kernel.org/doc/Documentation/gpio/gpio.txt
  
 
[[category:fitlet]]
 
[[category:fitlet]]
[[category:gpio]]
 

Latest revision as of 09:03, 24 January 2016

Overview

  • Not supported in mainline Linux kernel
  • Linux Kernel for Fitlet must be installed to make this feature work
  • GPIO interface on fitlet consists of 9 GPIOs provided by AMD FCH (Fusion Controller Hub)
  • The responsible kernel module is gpio_fch
  • The kernel module uses the following pin naming convention:


GPIO connector pinout
Pin Number Color Code GPIO name Power domain HW source Notes
1 Brown GPIO89 3.3V SoC
2 Red GPIO132 3.3V SoC
3 Orange GPIO65 3.3V SoC
4 Yellow GPIO66 3.3V SoC
5 Green GPIO29 1.5V SoC
6 Blue I2C Clock 3.3V SoC
7 Purple I2C Data 3.3V SoC
8 Grey GPIO73 3.3V SoC
9 White GPIO27 1.5V SoC
10 Black GPIO28 1.5V SoC
11 Brown GPIO12 3.3V SoC
12 Red UART Rx 3.3V SuperIO
13 Orange UART Tx 3.3V SuperIO
14 Yellow GND

Usage

  • The GPIO sysfs interface allows users to manipulate any GPIO from userspace dynamically.
  • A basic example of GPIO P-1 (Brown) usage (as root user):
$ modprobe gpio_fch
$ echo 89 > /sys/class/gpio/export
$ echo out > /sys/class/gpio/gpio89/direction
$ echo 1 > /sys/class/gpio/gpio89/value
## at this point voltage measuring on P-1 (Brown) should give 3.3V
$ echo 0 > /sys/class/gpio/gpio89/value
## at this point voltage measuring on P-1 (Brown) should give 0.0V
$ echo 89 > /sys/class/gpio/unexport

Documentation