mirror of
git://git.yoctoproject.org/meta-intel
synced 2026-01-01 13:58:05 +00:00
Use "Yocto Project Compatible" in place of "compliance" as suggested by Jeffrey Osier Mixon. Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com> Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
379 lines
13 KiB
Plaintext
379 lines
13 KiB
Plaintext
This README file contains information on building the meta-fri2 BSP
|
|
layer and booting the images contained in the /binary directory.
|
|
Please see the corresponding sections below for details.
|
|
|
|
The Fish River Island II BSP supports the Kontron M2M Smart Services
|
|
Developer Kit, as described here:
|
|
|
|
http://us.kontron.com/products/systems+and+platforms/m2m/m2m+smart+services+developer+kit.html
|
|
|
|
The 'Queens Bay' platform consists of the Intel Atom E640T processor plus the
|
|
Intel EG20T Platform Controller Hub (Tunnel Creek + Topcliff). The Fish River
|
|
Island II includes a variety of communications options and other
|
|
machine-to-machine (m2m) capabilities.
|
|
|
|
It also supports the E6xx embedded on-chip graphics via the Intel
|
|
Embedded Media and Graphics Driver (EMGD).
|
|
|
|
Information on all Intel embedded platforms can be found here:
|
|
|
|
http://www.intel.com/p/en_US/embedded/hwsw/hardware
|
|
|
|
|
|
Yocto Project Compatible
|
|
========================
|
|
|
|
This BSP is compatible with the Yocto Project as per the requirements
|
|
listed here:
|
|
|
|
https://www.yoctoproject.org/webform/yocto-project-compatible-registration
|
|
|
|
|
|
Dependencies
|
|
============
|
|
|
|
This layer depends on:
|
|
|
|
URI: git://git.openembedded.org/bitbake
|
|
branch: master
|
|
|
|
URI: git://git.openembedded.org/openembedded-core
|
|
layers: meta
|
|
branch: master
|
|
|
|
URI: git://git.yoctoproject.org/meta-intel
|
|
layers: intel
|
|
branch: master
|
|
|
|
|
|
Patches
|
|
=======
|
|
|
|
Please submit any patches against this BSP to the Yocto mailing list
|
|
(yocto@yoctoproject.org) and cc: the maintainer:
|
|
|
|
Maintainer: Darren Hart <dvhart@linux.intel.com>
|
|
|
|
Please see the meta-intel/MAINTAINERS file for more details.
|
|
|
|
|
|
Table of Contents
|
|
=================
|
|
|
|
I. Building the meta-fri2 BSP layer
|
|
II. Booting the images in /binary
|
|
III. Device Notes
|
|
a. BIOS and Firmware
|
|
b. Serial Port
|
|
c. HDMI
|
|
d. Power Reset
|
|
e. Accelerometer
|
|
f. GPIO
|
|
g. MMC
|
|
h. 802.11
|
|
i. 802.15.4
|
|
j. Audio
|
|
k. Optional Devices
|
|
IV. Known Issues
|
|
a. EFI boot fails
|
|
b. Client USB is disabled
|
|
c. Audio over secondary HDMI port only
|
|
V. Additional Resources
|
|
|
|
|
|
I. Building the meta-fri2 BSP layer
|
|
===================================
|
|
|
|
In order to build an image with BSP support for a given release, you
|
|
need to download the corresponding BSP tarball from the 'Board Support
|
|
Package (BSP) Downloads' page of the Yocto Project website.
|
|
|
|
Having done that, and assuming you extracted the BSP tarball contents
|
|
at the top-level of your yocto build tree, you can build an fri2 image
|
|
by adding the location of the meta-intel and meta-fri2 layers to
|
|
bblayers.conf, e.g.:
|
|
|
|
yocto/meta-intel \
|
|
yocto/meta-intel/meta-fri2 \
|
|
|
|
The meta-fri2 layer contains support for two different machine
|
|
configurations. These configurations are identical except for the fact
|
|
that the one prefixed with 'fri2' makes use of the Intel-proprietary
|
|
EMGD graphics driver, while the one prefixed with 'fri2-noemgd'
|
|
does not.
|
|
|
|
If you want to enable the layer that supports EMGD graphics add the
|
|
following to the local.conf file:
|
|
|
|
MACHINE ?= "fri2"
|
|
|
|
The 'fri2' machine includes the emgd-driver-bin package, which has a
|
|
proprietary license that must be whitelisted by adding the string
|
|
"license_emgd-driver-bin" to the LICENSE_FLAGS_WHITELIST variable in
|
|
your local.conf. For example:
|
|
|
|
LICENSE_FLAGS_WHITELIST = "license_emgd-driver-bin"
|
|
|
|
The emgd recipe depends on Xorg's dri and glx modules, which are built
|
|
only when 'opengl' is listed in DISTRO_FEATURES. So if the distro
|
|
doesn't list 'opengl' in the DISTRO_FEATURES you would need this
|
|
additional line to your local.conf:
|
|
|
|
DISTRO_FEATURES_append = " opengl"
|
|
|
|
If you want to enable the layer that does not support EMGD graphics,
|
|
add the following to the local.conf file:
|
|
|
|
MACHINE ?= "fri2-noemgd"
|
|
|
|
You should then be able to build an fri2 image as such:
|
|
|
|
$ source oe-init-build-env
|
|
$ bitbake core-image-sato
|
|
|
|
At the end of a successful build, you should have a live image that
|
|
you can boot from a USB flash drive (see instructions on how to do
|
|
that below, in the section 'Booting the images from /binary').
|
|
|
|
NOTE: The 'fri2' machine will include support for hardware video
|
|
acceleration via gstreamer if and only if the "commercial" string is
|
|
added to the the LICENSE_FLAGS_WHITELIST variable in your local.conf.
|
|
|
|
For example:
|
|
|
|
LICENSE_FLAGS_WHITELIST = "license_emgd-driver-bin commercial"
|
|
|
|
The reason this is needed is to prevent the image from including
|
|
anything that might violate the license terms of the packages used to
|
|
implement the the video acceleration feature, such as gst-ffmpeg and
|
|
ffmpeg. As always, please consult the licenses included in the
|
|
specific packages for details if you use packages that require
|
|
particular LICENSE_FLAGS.
|
|
|
|
As an alternative to downloading the BSP tarball, you can also work
|
|
directly from the meta-intel git repository. For each BSP in the
|
|
'meta-intel' repository, there are multiple branches, one
|
|
corresponding to each major release starting with 'laverne' (0.90), in
|
|
addition to the latest code which tracks the current master (note that
|
|
not all BSPs are present in every release). Instead of extracting a
|
|
BSP tarball at the top level of your yocto build tree, you can
|
|
equivalently check out the appropriate branch from the meta-intel
|
|
repository at the same location.
|
|
|
|
|
|
II. Booting the images in /binary
|
|
=================================
|
|
|
|
This BSP contains bootable live images, which can be used to directly
|
|
boot Yocto off of a USB flash drive.
|
|
|
|
Under Linux, insert a USB flash drive. Assuming the USB flash drive
|
|
takes device /dev/sdf, use dd to copy the live image to it. For
|
|
example:
|
|
|
|
# dd if=core-image-sato-fri2-20101207053738.hddimg of=/dev/sdf
|
|
# sync
|
|
# eject /dev/sdf
|
|
|
|
This should give you a bootable USB flash device. Insert the device
|
|
into one of the USB host ports on the target, and power on. This
|
|
should result in a system booted to the Sato graphical desktop.
|
|
|
|
If you want a terminal, use the arrows at the top of the UI to move to
|
|
different pages of available applications, one of which is named
|
|
'Terminal'. Clicking that should give you a root terminal.
|
|
|
|
If you want to ssh into the system, you can use the root terminal to
|
|
ifconfig the IP address and use that to ssh in. The root password is
|
|
empty, so to log in type 'root' for the user name and hit 'Enter' at
|
|
the Password prompt: and you should be in.
|
|
|
|
If instead of a live image, you would like to prepare an EFI bootable
|
|
partitioned image, use the mkefidisk.sh script provided in the scripts
|
|
directory of this BSP. Future versions of the images have an EFI
|
|
installer integrated into the live image.
|
|
|
|
----
|
|
|
|
If you find you're getting corrupt images on the USB (it doesn't show
|
|
the syslinux boot: prompt, or the boot: prompt contains strange
|
|
characters), try doing this first:
|
|
|
|
# dd if=/dev/zero of=/dev/sdf bs=1M count=512
|
|
|
|
|
|
III. Device Notes
|
|
================================
|
|
a. BIOS and Firmware
|
|
|
|
Units provided from the Yocto Project Fish River Island 2 Giveaway
|
|
Program are preconfigured with the Intel provided Fast Boot EFI
|
|
firmware. This firmware will search the available devices (USB, SD,
|
|
and mSATA) for a valid EFI payload at "EFI\BOOT\BOOTIA32.EFI". If it
|
|
fails to find one, it will launch the EFI shell and optionally execute
|
|
a "startup.nsh" script if it finds the script on the available storage
|
|
devices. It searches the devices in the following order: USB, SD,
|
|
mSATA.
|
|
|
|
Units acquired via other channels may have the Kontron supplied APTIO
|
|
(AMI) BIOS. This is a PCBIOS and EFI firmware with a traditional BIOS
|
|
configuration menu which can be used to define a variety of boot
|
|
configurations.
|
|
|
|
b. Serial Port
|
|
--------------
|
|
The FRI2 has an optional serial daughter card providing a serial
|
|
console via the micro-USB port on the top of the device adjacent the
|
|
SIM card slot.
|
|
|
|
The UART from the EG20T is connected to a TI UART-to-USB device
|
|
(TUSB3410) which appears as a serial port on the host computer. From a
|
|
Linux host, load the driver with the following options:
|
|
|
|
# modprobe ti_usb_3410_5052 vendor_3410=0x0451 product_3410=0x5053
|
|
|
|
In future versions of the Linux kernel (3.4 and later), the
|
|
vendor and product codes are detected automatically.
|
|
|
|
When you power on your FRI2, your host will discover a serial device
|
|
and name it /dev/ttyUSB0 (or similar). You can communicate with this
|
|
device at 115200 8N1 using your preferred terminal emulator.
|
|
|
|
If using the Intel provided Fast Boot EFI firmware, no additional
|
|
configuration is required. If using the APTIO (AMI) BIOS, use the
|
|
following settings to configure console redirection in the BIOS menu:
|
|
|
|
Advanced
|
|
Serial Port Console Redirection
|
|
COM2
|
|
Console Redirection [Enabled]
|
|
Console Redirection Settings
|
|
Terminal Type [ANSI]
|
|
Bits per second [115200]
|
|
Data Bits [8]
|
|
Parity [None]
|
|
Stop Bits [1]
|
|
Flow Control [None]
|
|
Recorder Mode [Disabled]
|
|
Resolution 100x31 [Disabled]
|
|
Legacy OS Redirection [80x24]
|
|
|
|
c. HDMI
|
|
-------
|
|
The FRI2 has two micro HDMI ports. For the Intel provided Fast Boot
|
|
EFI firmware, the one closest to the bottom of the device is the
|
|
primary display. For the APTIO (AMI) BIOS, the jack nearest the 1/8"
|
|
audio jacks is the primary display.
|
|
|
|
d. Power Reset
|
|
--------------
|
|
The recessed button adjacent the LEDs on the top of the device is a
|
|
power reset button.
|
|
|
|
e. Accelerometer
|
|
----------------
|
|
The LIS331DLH accelerometer is connected to the I2C bus on the CPLD on
|
|
the compute module. The driver for this chip is under active
|
|
development and will be included in the BSP once completed.
|
|
|
|
f. GPIO
|
|
-------
|
|
The FRI2 has two I2C PCA555x GPIO devices used for internal control
|
|
signals. These have not been exposed in the current release of the
|
|
BSP, but may be in the future. Regardless, these would not provide
|
|
general purpose IO with which to read or drive additional signals.
|
|
|
|
g. MMC
|
|
------
|
|
The FRI2 provides two microSD card MMC devices. One is located
|
|
adjacent the 1/8" audio jacks, another is located on the board inside
|
|
the chassis. These devices can be used to boot the device, or as
|
|
secondary storage.
|
|
|
|
h. 802.11
|
|
---------
|
|
The Intel Corporation Centrino Advanced-N 6205 that ships with the
|
|
FRI2 is supported. You can use connman-gnome to configures the
|
|
interface.
|
|
|
|
i. 802.15.4
|
|
-----------
|
|
The TI CC2531 802.15.4 radio is a USB ACM modem. The MAC is enabled by
|
|
issuing the following command:
|
|
|
|
# echo J > /dev/ttyACM0
|
|
|
|
The bank of 3 LEDs nearest the power reset button will change if this
|
|
command is executed successfully. If you have a 3G modem installed,
|
|
the 802.15.4 device may appear as /dev/ttyACM3 instead.
|
|
|
|
No further testing or integration has been done.
|
|
|
|
j. Audio
|
|
--------------------
|
|
The FRI2 has an 1/8" analog output (nearest the antennae), a line-in
|
|
input below that, as well as SPDIF over HDMI. These can be tested
|
|
using the alsa-utils package. The aplay -l command will list both
|
|
playback devices:
|
|
|
|
# aplay -l
|
|
**** List of PLAYBACK Hardware Devices ****
|
|
card 0: MID [HDA Intel MID], device 0: ALC262 Analog [ALC262 Analog]
|
|
Subdevices: 1/1
|
|
Subdevice #0: subdevice #0
|
|
card 0: MID [HDA Intel MID], device 3: ALC262 Digital [ALC262 Digital]
|
|
Subdevices: 1/1
|
|
Subdevice #0: subdevice #0
|
|
|
|
Using a sample WAV file, you can use aplay to play to either device:
|
|
|
|
Over analog:
|
|
# aplay -D plughw:0,0 sample.wav
|
|
|
|
Over HDMI:
|
|
# aplay -D plughw:0,3 sample.wav
|
|
|
|
|
|
k. Optional Devices
|
|
-------------------
|
|
The FRI2 has two mini-PCIe slots internally. The device ships with a
|
|
half-length wireless card installed. This can be replaced with a
|
|
wireless + bluetooth card. The other slot is available for use with
|
|
cellular cards or mSATA SSDs.
|
|
|
|
The Ericsson F5521gw 3G modem has been verifed with the FRI2 images.
|
|
Note that the connman-gnome UI does not allow for configuring the
|
|
cellular interface. The ofono-tests package can be used to configure
|
|
the modem and bring up an interface.
|
|
|
|
|
|
IV. Known Issues
|
|
----------------
|
|
a. EFI
|
|
------
|
|
The APTIO (AMI) BIOS does not yet boot the EFI payload provided on the
|
|
FRI2 live image. This is a known issue under investigation. If using
|
|
this firmware, boot using PCBIOS mode, rather than EFI. The Intel
|
|
provided Fast Boot EFI firmware will boot the EFI payload.
|
|
|
|
b. Client USB is disabled
|
|
-------------------------
|
|
The micro-USB port adjacent the primary HDMI port is intended for Client
|
|
USB functionality, but is not supported on current revisions of the
|
|
device.
|
|
|
|
c. Audio over secondary HDMI port only
|
|
--------------------------------------
|
|
While audio over HDMI has been shown to work, it seems to only work over
|
|
the secondary (bottom-most) HDMI port. There does not appear to be a
|
|
deterministic way of getting the device to output the signal (video and
|
|
audio) over the secondary port.
|
|
|
|
|
|
V. Additional Resources
|
|
-----------------------
|
|
In addition to this README, please see the following wiki page for tips
|
|
on using the FRI2 with the Yocto Project:
|
|
|
|
https://wiki.yoctoproject.org/wiki/BSPs/FRI2
|