Fitlet: Installing Linux Mint 17.2

From fit-PC wiki
Jump to: navigation, search

Prepare installation media

Base installation of Linux Mint

  • Follow the standard Linux Mint installation procedure - choose timezone, partitions, username, password etc.
  • Disconnect the installation media and reboot.
  • Login using previously selected username and password.

ATI Catalyst video driver

  • fglrx is a proprietary ATI Catalyst video driver that provides XvBA (X-video Bitstream Acceleration) support.
  • WARNING!!! fglrx driver has been updated on 2015-05-19, from version 13.350 to 15.200. There is a bug or some incompatibility in the new package. Please blacklist new version until Ubuntu or ATI will release the fix. Create file /etc/apt/preferences.d/fglrx.13.350.pref
Package: fglrx*
Pin: release a=trusty
Pin-Priority: 1001
  • Install fglrx driver and other required utilities with the command below:
$ sudo apt-get update
$ sudo apt-get install fglrx-updates fglrx-amdcccle-updates xvba-va-driver vainfo
  • Note: system reboot is required after the installation of the fglrx driver.

Kodi and VLC

  • Kodi (formerly known as XBMC) and VLC are well known free and open-source multimedia players
  • Both of them use GPU accelerated video decoding and give excellent playback quality
  • Both of them compatible with the most popular video formats
$ sudo add-apt-repository ppa:team-xbmc/ppa
$ sudo apt-get update
$ sudo apt-get install kodi vlc
  • Kodi will support GPU accelerated video decoding out of the box
  • In VLC you need to check Tools->Preferences->Input and Codecs->Use GPU accelerated decoding checkbox to take advantage of GPU accelerated video decoding

Thermal monitoring

  • Install tools for monitoring CPU and storage temperature
$ sudo apt-get install lm-sensors hddtemp
$ sensors
k10temp-pci-00c3
Adapter: PCI adapter
temp1:        +60.9°C  (high = +70.0°C)
                      (crit = +105.0°C, hyst = +104.0°C)
$ sudo hddtemp /dev/sda
/dev/sda: SanDisk SD6SF1M064G: 42°C

Aggressive Link Power Management (ALPM)

  • It's a mechanism where a SATA controller can put the disk into a very low power mode during periods of zero I/O activity and into an active power state when work needs to be done. Tests show that this can save some power and decrease mSATA average temperature.
  • Create text file /etc/pm/power.d/sata_alpm
#!/bin/sh

for i in /sys/class/scsi_host/host*/link_power_management_policy; do
echo min_power > $i
done
  • Make it executable
$ sudo chmod +x /etc/pm/power.d/sata_alpm
  • Reboot, check that SATA power management policy has been changed
$ cat /sys/class/scsi_host/host*/link_power_management_policy
min_power
min_power

Watchdog

  • NOTE! Not supported in mainline Linux kernel yet. Linux Kernel 3.16 for Fitlet should be installed to make this feature work
  • The AMD FCH (Fusion Controller Hub) supports a user configurable watchdog
  • Once the watchdog is enabled the system restarts once the timeout period elapses, in order to prevent it the user needs to either feed the watchdog or to disable it
$ sudo apt-get install watchdog
  • Uncomment watchdog-device line in /etc/watchdog.conf
watchdog-device = /dev/watchdog
  • Set responsible kernel module to sp5100_tco in /etc/default/watchdog
watchdog_module="sp5100_tco"
  • By default the timeout value is 60 sec and the watchdog deamon feeds the watchdog every 10 sec
  • 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

GPIO

  • NOTE! Not supported in mainline Linux kernel. Linux Kernel 3.16 for Fitlet should 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


  • 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 fch_gpio
$ 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