KBU4 Yocto user documentation - AAEONAEU-SW/AAEON-Community GitHub Wiki
Name | Version | Kernel | branch | url |
---|---|---|---|---|
Pyro | 2.3 | linux-yocto v4.9 linux-yocto v4.10 |
pyro |
https://github.com/emutex/aaeonc-yocto-bsp/tree/pyro https://github.com/emutex/meta-aaeonc/tree/pyro |
to setup an host for building Yocto for AAEON Community set of boards:
$ sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib \ build-essential chrpath socat cpio python python3 python3-pip python3-pexpect \ xz-utils debianutils iputils-ping libsdl1.2-dev xterm
To get the BSP you need to have repo installed and use it as:
- Install the repo utility:
mkdir ~/bin curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo chmod a+x ~/bin/repo export PATH=$PATH:$HOME/bin
- Create your workspace directory:
mkdir aaeonc-yocto-bsp cd aaeonc-yocto-bsp
- Download the latest Pyro release and enter the poky directory:
git clone -b pyro git://git.yoctoproject.org/poky.git cd poky
- Download the latest Intel BSP layer version for Pyro:
git clone -b pyro git://git.yoctoproject.org/meta-intel.git
- Download the latest collection of layers for OE-core universe for Pyro:
git clone -b pyro git://git.openembedded.org/meta-openembedded
- Download this AAEON Community BSP layer for Pyro:
git clone -b pyro https://github.com/emutex/meta-aaeonc
To build a full image type from the source directory:
TEMPLATECONF=meta-aaeonc/conf source oe-init-build-env bitbake core-image-sato
All the required modules for the AAEON Community series of board are integrated in the AAEON Community kernel from the ppa.
Not all the modules are loaded by default.
The DIO connector on the board is managed by a F75111 GPIO controller via i2c.
Enter as sudo user:
sudo su
To set the DIO input 0 to 1 do:
echo 504 > /sys/class/gpio/export echo out > /sys/class/gpio/gpio504/direction echo 1 > /sys/class/gpio/gpio504/value cat /sys/class/gpio/gpio504/value
To read the DIO input 1:
echo 505 > /sys/class/gpio/export echo in > /sys/class/gpio/gpio505/direction cat /sys/class/gpio/gpio505/value
The chip has 4 gpio output from 504 to 507 that can be used.
Use lm-sensors to access:
Step 1. Run sensors-detect and answer YES to “Super I/O sensors” questions.
$ sudo sensors-detectDo you want to scan for Super I/O sensors? (YES/no): yes Probing for Super-I/O at 0x2e/0x2f Trying family
National Semiconductor/ITE'... No Trying family
SMSC'... No Trying familyVIA/Winbond/Nuvoton/Fintek'... Yes Found
Fintek F71889FG/F81801U Super IO Sensors' Success! (address 0xa10, driverf71882fg') Probing for Super-I/O at 0x4e/0x4f Trying family
National Semiconductor/ITE'... No Trying familySMSC'... No Trying family
VIA/Winbond/Nuvoton/Fintek'... No Trying family `ITE'... No
Step 2. Test the sensor output using the lm-sensors utility "sensors".
$ sensors
You should see one sensor output like:
pch_skylake-virtual-0 Adapter: Virtual device temp1: +61.0°Cacpitz-virtual-0 Adapter: Virtual device temp1: +27.8°C (crit = +119.0°C) temp2: +29.8°C (crit = +119.0°C)
coretemp-isa-0000 Adapter: ISA adapter Package id 0: +60.0°C (high = +100.0°C, crit = +100.0°C) Core 0: +58.0°C (high = +100.0°C, crit = +100.0°C) Core 1: +60.0°C (high = +100.0°C, crit = +100.0°C)
f81801u-isa-0a10 Adapter: ISA adapter in0: +1.70 V
in1: +0.57 V (max = +2.04 V) in2: +1.19 V
in3: +1.02 V
in4: +0.72 V
in5: +0.53 V
in6: +0.38 V
in7: +1.71 V
in8: +1.62 V
fan1: 1338 RPM fan2: 0 RPM ALARM fan3: 0 RPM ALARM temp1: +56.0°C (high = +85.0°C, hyst = +81.0°C) (crit = +100.0°C, hyst = +96.0°C) sensor = transistor temp2: +44.0°C (high = +85.0°C, hyst = +81.0°C) (crit = +100.0°C, hyst = +96.0°C) sensor = transistor temp3: FAULT (high = +70.0°C, hyst = +68.0°C) (crit = +85.0°C, hyst = +83.0°C) sensor = transistor
You can use i2c-tools to access i2c bus on EC.
$ sudo i2cdetect -l
You should see one i2c device list like that:
i2c-3 i2c i915 gmbus dpd I2C adapter i2c-1 i2c i915 gmbus dpc I2C adapter i2c-4 i2c DPDDC-A I2C adapter i2c-2 i2c i915 gmbus dpb I2C adapter i2c-0 smbus SMBus I801 adapter at f040 SMBus adapter
Reboot after 1 minute:
$ echo 1 > /dev/watchdog