Difference between revisions of "CM-iGT: Linux: Mint"

From Compulab Mediawiki
Jump to: navigation, search
 
Line 1: Line 1:
 
== Overview ==
 
== Overview ==
* Linux on CM-iGT is Linux Mint 13 LTS with full-featured MATE desktop environment
+
* Linux on CM-iGT is Linux Mint 17 LTS with full-featured MATE desktop environment
 
* All necessary drivers and tools are already installed
 
* All necessary drivers and tools are already installed
 
* Networking, sound, video acceleration, 2D and 3D graphics and other features work out of the box
 
* Networking, sound, video acceleration, 2D and 3D graphics and other features work out of the box
*: {{Note|Such features as TPM, GPIO and CAN are unsupported in the this release}}
+
*: {{Note|Features such as TPM and CAN are unsupported in this release}}
  
 
== ATI Catalyst video driver ==
 
== ATI Catalyst video driver ==
Line 11: Line 11:
 
* Up to 1920x1200 at 60 Hz resolution
 
* Up to 1920x1200 at 60 Hz resolution
 
* 1080p playback with media players that support XvBA (XBMC and VLC)
 
* 1080p playback with media players that support XvBA (XBMC and VLC)
The ATI Catalyst driver and other required utilities were installed using the following command:
+
The ATI Catalyst driver, VLC, XBMC and other required utilities were installed using the following command:
 
<pre>
 
<pre>
$ sudo apt-get install fglrx-updates xvba-va-driver vainfo
+
$ sudo apt-get install fglrx-updates xvba-va-driver vainfo xbmc vlc
 
</pre>
 
</pre>
  
== XBMC and VLC ==
+
 
* XBMC and VLC are well known open-source media players
+
== GPIO ==
* Both of them use GPU accelerated video decoding and give exellent playback quality on CM-iGT
+
GPIO interface on SB-iGT consists of 15 I/Os provided by AMD FCH (Fusion Controller Hub)
* Both of them compatible with the most popular video formats
+
* All the I/Os have interrupt functions and can support asynchronous interrupts
*: {{Note|XVBA support has not yet been merged into the main XBMC code branch and was installed from Wolfgang Schupp repository}}
+
* The responsible kernel module is fch_gpio
 +
* The kernel modules uses the following pin naming convention:
 +
 
 +
 
 +
{| cellpadding="3" border="1" style="border: 1px solid rgb(85, 85, 85); border-collapse: collapse;"
 +
|+ GPIO pin naming convention on SB-iGT
 +
|-
 +
| GPIO name
 +
| HW source
 +
| Name on SB-iGT board
 +
| Pin on SB-iGT board
 +
| Notes
 +
|-
 +
| GPIO11
 +
| FCH
 +
| FCH_GPIO11
 +
| P15-4
 +
|
 +
|-
 +
| GPIO14
 +
| FCH
 +
| FCH_GPIO14
 +
| P15-18
 +
|
 +
|-
 +
| GPIO201
 +
| FCH
 +
| FCH_GPIO201_S5
 +
| P15-29
 +
| Active in S0 and S5 power states
 +
|-
 +
| GPIO202
 +
| FCH
 +
| FCH_GPIO202_S5
 +
| P15-31
 +
| Active in S0 and S5 power states
 +
|-
 +
| GPIO204
 +
| FCH
 +
| FCH_GPIO204_S5
 +
| P15-33
 +
| Active in S0 and S5 power states
 +
|-
 +
| GPIO205
 +
| FCH
 +
| FCH_GPIO205_S5
 +
| P15-35
 +
| Active in S0 and S5 power states
 +
|-
 +
| GPIO54
 +
| FCH
 +
| FN2PW M_GPIO54
 +
| P14-11
 +
|
 +
|-
 +
| GPIO56
 +
| FCH
 +
| FNTH_GPIO56
 +
| P14-15
 +
|
 +
|-
 +
| GPIO57
 +
| FCH
 +
| FNTH1_GPIO57
 +
| P14-17
 +
|
 +
|-
 +
| GPIO58
 +
| FCH
 +
| FNTH2_GPIO58
 +
| P14-21
 +
|
 +
|-
 +
| GPIO170
 +
| FCH
 +
| AZ_SI3_GPIO170
 +
| P14-28
 +
|
 +
|-
 +
| GPIO172
 +
| FCH
 +
| TIN1_GPIO172
 +
| P14-5
 +
|
 +
|-
 +
| GPIO173
 +
| FCH
 +
| TIN1_GPIO173
 +
| P14-7
 +
|
 +
|-
 +
| GPIO197
 +
| FCH
 +
| TMR0_GPIO197
 +
| P14-4
 +
|
 +
|-
 +
| GPIO198
 +
| FCH
 +
| TMR0_GPIO198
 +
| P14-6
 +
|
 +
|-
 +
|}
 +
 
 +
 
 +
 
 +
* The GPIO sysfs interface allows users to manipulate any GPIO from userspace dynamically.
 +
* A basic example of GPIO usage (as root user):
 +
<pre>
 +
$ modprobe fch_gpio
 +
$ echo 11 > /sys/class/gpio/export
 +
$ echo out > /sys/class/gpio/gpio11/direction
 +
$ echo 1 > /sys/class/gpio/gpio11/value
 +
## at this point voltage measuring on P15,4 (FCH_GPIO11) should give 3.3V
 +
$ echo 0 > /sys/class/gpio/gpio11/value
 +
## at this point voltage measuring on P15,4 (FCH_GPIO11) should give 0.0V
 +
$ echo 11 > /sys/class/gpio/unexport
 +
</pre>
 +
 
 +
* The GPIO framework and GPIO sysfs interface are documented in [https://www.kernel.org/doc/Documentation/gpio/gpio.txt Linux Kernel Documentation :: GPIO]
 +
 
 +
== Serial communication ==
 +
* COM1: Full modem control circuitry, baud rate from 30 bps to 250 Kbps, device node /dev/ttyS0
 +
* COM2: 2-wire, baud rate from 50 bps to 460 Kbps, device node /dev/ttyS1
 +
* Autologin from the serial console COM2 as root is enabled:
 +
/etc/init/ttyS1.conf:
 +
<pre>
 +
start on stopped rc RUNLEVEL=[2345]
 +
stop on runlevel [!2345]
 +
 
 +
respawn
 +
exec /sbin/getty -l /usr/bin/autologin -n -8 115200 ttyS1
 +
</pre>
 +
 
 +
/usr/bin/autologin (with chmod +x):
 +
<pre>
 +
#!/bin/sh
 +
exec /bin/login -f root
 +
</pre>
 +
* Connect your host PC to the COM2 on SB-iGT via the serial cable
 +
* Start terminal emulation on your host PC. Set baud rate to 115200 bps, 8 bit per frame, 1 stop bit, no parity, no flow control
 +
* As a result, you automatically login on CM-iGT as root
 +
 
 +
== Watchdog ==
 +
The AMD FCH supports a user configurable watchdog.
 +
 
 +
Once the watchdog is enabled the system restarts once the timeout period elapses, so in order to prevent it the user needs to either feed the watchdog or to disable it.
 +
 
 +
* By default the timeout value is 60 sec and the watchdog deamon feeds the watchdog every 10 sec
 +
* The responsible kernel module is sp5100_tco
 +
* You can overwrite the default settings in /etc/watchdog.conf and /etc/default/watchdog
 +
* Watchdog is already installed and configured on the Linux image provided by CompuLab
 +
* As example you can simulate kernel panic (as root user):
 
<pre>
 
<pre>
$ sudo add-apt-repository ppa:wsnipex/xbmc-xvba-frodo
+
$ echo c > /proc/sysrq-trigger
$ sudo apt-get update
 
$ sudo apt-get install xbmc
 
 
</pre>
 
</pre>
 +
* As a result, the watchdog is not fed and the system will reboot after 60 sec
 +
 +
== CAN bus ==
 +
* currently unsupported
 +
  
 
== TPM ==
 
== TPM ==
 
* currently unsupported
 
* currently unsupported
== GPIO ==
+
 
* currently unsupported
+
 
== CAN bus ==
 
* currently unsupported
 
 
== See also ==
 
== See also ==
 
* [[CM-iGT: Linux: Getting started|Getting started with Linux on CM-iGT]]
 
* [[CM-iGT: Linux: Getting started|Getting started with Linux on CM-iGT]]

Revision as of 10:29, 13 July 2014

Overview

  • Linux on CM-iGT is Linux Mint 17 LTS with full-featured MATE desktop environment
  • All necessary drivers and tools are already installed
  • Networking, sound, video acceleration, 2D and 3D graphics and other features work out of the box
Admolition note.png Features such as TPM and CAN are unsupported in this release

ATI Catalyst video driver

The proprietary ATI Catalyst video driver for Radeon HD 6250 GPU provides the following features:

  • GPU accelerated video decoding XvBA (X-video Bitstream Acceleration)
  • Dual-head support
  • Up to 1920x1200 at 60 Hz resolution
  • 1080p playback with media players that support XvBA (XBMC and VLC)

The ATI Catalyst driver, VLC, XBMC and other required utilities were installed using the following command:

$ sudo apt-get install fglrx-updates xvba-va-driver vainfo xbmc vlc


GPIO

GPIO interface on SB-iGT consists of 15 I/Os provided by AMD FCH (Fusion Controller Hub)

  • All the I/Os have interrupt functions and can support asynchronous interrupts
  • The responsible kernel module is fch_gpio
  • The kernel modules uses the following pin naming convention:


GPIO pin naming convention on SB-iGT
GPIO name HW source Name on SB-iGT board Pin on SB-iGT board Notes
GPIO11 FCH FCH_GPIO11 P15-4
GPIO14 FCH FCH_GPIO14 P15-18
GPIO201 FCH FCH_GPIO201_S5 P15-29 Active in S0 and S5 power states
GPIO202 FCH FCH_GPIO202_S5 P15-31 Active in S0 and S5 power states
GPIO204 FCH FCH_GPIO204_S5 P15-33 Active in S0 and S5 power states
GPIO205 FCH FCH_GPIO205_S5 P15-35 Active in S0 and S5 power states
GPIO54 FCH FN2PW M_GPIO54 P14-11
GPIO56 FCH FNTH_GPIO56 P14-15
GPIO57 FCH FNTH1_GPIO57 P14-17
GPIO58 FCH FNTH2_GPIO58 P14-21
GPIO170 FCH AZ_SI3_GPIO170 P14-28
GPIO172 FCH TIN1_GPIO172 P14-5
GPIO173 FCH TIN1_GPIO173 P14-7
GPIO197 FCH TMR0_GPIO197 P14-4
GPIO198 FCH TMR0_GPIO198 P14-6


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

Serial communication

  • COM1: Full modem control circuitry, baud rate from 30 bps to 250 Kbps, device node /dev/ttyS0
  • COM2: 2-wire, baud rate from 50 bps to 460 Kbps, device node /dev/ttyS1
  • Autologin from the serial console COM2 as root is enabled:

/etc/init/ttyS1.conf:

start on stopped rc RUNLEVEL=[2345]
stop on runlevel [!2345]

respawn
exec /sbin/getty -l /usr/bin/autologin -n -8 115200 ttyS1

/usr/bin/autologin (with chmod +x):

#!/bin/sh
exec /bin/login -f root
  • Connect your host PC to the COM2 on SB-iGT via the serial cable
  • Start terminal emulation on your host PC. Set baud rate to 115200 bps, 8 bit per frame, 1 stop bit, no parity, no flow control
  • As a result, you automatically login on CM-iGT as root

Watchdog

The AMD FCH supports a user configurable watchdog.

Once the watchdog is enabled the system restarts once the timeout period elapses, so in order to prevent it the user needs to either feed the watchdog or to disable it.

  • By default the timeout value is 60 sec and the watchdog deamon feeds the watchdog every 10 sec
  • The responsible kernel module is sp5100_tco
  • You can overwrite the default settings in /etc/watchdog.conf and /etc/default/watchdog
  • Watchdog is already installed and configured on the Linux image provided by CompuLab
  • As example you can simulate kernel panic (as root user):
$ echo c > /proc/sysrq-trigger
  • As a result, the watchdog is not fed and the system will reboot after 60 sec

CAN bus

  • currently unsupported


TPM

  • currently unsupported


See also