[meta-intel] [PATCHv3 1/5] meta-valleyisland: add new BSP layer for Intel Atom Processor E38XX

Darren Hart dvhart at linux.intel.com
Tue Mar 25 21:12:07 PDT 2014


On 3/25/14, 7:06, "rebecca.swee.fun.chang at intel.com"
<rebecca.swee.fun.chang at intel.com> wrote:

>From: Chang Rebecca Swee Fun <rebecca.swee.fun.chang at intel.com>
>
>This layer provides support for Intel Atom Processor E38XX product
>line. This BSP layer are supporting Baytrail SoC on Valley Island
>Development Kit, Bayley Bay CRB and Bakersport CRB.
>
>Signed-off-by: Chang Rebecca Swee Fun <rebecca.swee.fun.chang at intel.com>

Reviewed-by: Darren Hart <dvhart at linux.intel.com>


>---
> meta-isg/meta-valleyisland/COPYING.MIT     |   17 +++
> meta-isg/meta-valleyisland/README          |  218
>++++++++++++++++++++++++++++
> meta-isg/meta-valleyisland/README.sources  |   18 +++
> meta-isg/meta-valleyisland/conf/layer.conf |   14 ++
> 4 files changed, 267 insertions(+)
> create mode 100644 meta-isg/meta-valleyisland/COPYING.MIT
> create mode 100644 meta-isg/meta-valleyisland/README
> create mode 100644 meta-isg/meta-valleyisland/README.sources
> create mode 100644 meta-isg/meta-valleyisland/conf/layer.conf
>
>diff --git a/meta-isg/meta-valleyisland/COPYING.MIT
>b/meta-isg/meta-valleyisland/COPYING.MIT
>new file mode 100644
>index 0000000..89de354
>--- /dev/null
>+++ b/meta-isg/meta-valleyisland/COPYING.MIT
>@@ -0,0 +1,17 @@
>+Permission is hereby granted, free of charge, to any person obtaining a
>copy
>+of this software and associated documentation files (the "Software"), to
>deal
>+in the Software without restriction, including without limitation the
>rights
>+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
>+copies of the Software, and to permit persons to whom the Software is
>+furnished to do so, subject to the following conditions:
>+
>+The above copyright notice and this permission notice shall be included
>in
>+all copies or substantial portions of the Software.
>+
>+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
>OR
>+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
>+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
>THE
>+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
>+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
>FROM,
>+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
>+THE SOFTWARE.
>diff --git a/meta-isg/meta-valleyisland/README
>b/meta-isg/meta-valleyisland/README
>new file mode 100644
>index 0000000..014344b
>--- /dev/null
>+++ b/meta-isg/meta-valleyisland/README
>@@ -0,0 +1,218 @@
>+This README file contains information on building the meta-valleyisland
>+BSP layer, and booting the images contained in the /binary directory.
>+Please see the corresponding sections below for details.
>+
>+The Valley Island BSP consists of two versions:
>+1. 32-bit Valley Island
>+2. 64-bit Valley Island
>+
>+The BSP is made specifically for Intel Atom E38XX Processor E38XX
>+Development Kit (formerly known as Valley Island). This BSP integrates
>+Intel Graphics for Linux driver as the integrated graphics.
>+
>+Valley Island BSP is meant to support Valley Island Development
>+Kit, "Bayley Bay" CRB and "Bakersport" CRB.
>+
>+Further information on the platforms supported by this BSP can be
>+found here:
>+
>+  
>http://www.intel.com/content/www/us/en/intelligent-systems/bay-trail/atom-
>processor-e3800-family-overview.html
>+
>+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: dora
>+
>+  URI: git://git.yoctoproject.org/meta-intel
>+  layers: intel
>+  branch: dora
>+
>+Patches
>+=======
>+
>+Please submit any patches against this BSP to the Meta-Intel Yocto
>mailing list
>+(meta-intel at yoctoproject.org) and cc: the maintainer:
>+
>+Maintainer: Chang Rebecca Swee Fun <rebecca.swee.fun.chang at intel.com>
>+
>+Please see the meta-isg/MAINTAINERS file for more details.
>+
>+Table of Contents
>+=================
>+
>+  I. Building the meta-valleyisland BSP layer
>+ II. Booting the images in /binary
>+III. Device Notes
>+     a. Boot Loader
>+     b. I/O drivers
>+     c. LPIO ACPI enumeration support
>+ IV. Known Issues
>+     a. I/O drivers
>+
>+
>+I. Building the meta-valleyisland 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 that done, and assuming you have extracted the BSP tarball
>contents
>+at the top-level of your Yocto build tree, you can build a valleyisland
>+image by adding the location of the meta-valleyisland layer to
>+bblayers.conf, along with the meta-intel layer itself (to access
>+common metadata shared between BSPs) e.g.:
>+
>+  yocto/meta-intel \
>+  yocto/meta-intel/meta-isg/meta-valleyisland \
>+
>+To enable the 32-bit Valley Island layer, add the valleyisland-32
>MACHINE to local.conf:
>+
>+  MACHINE ?= "valleyisland-32"
>+
>+To enable the 64-bit Valley Island layer, add the valleyisland-64
>MACHINE to local.conf:
>+
>+  MACHINE ?= "valleyisland-64"
>+
>+The meta-valleyisland contains support for Intel HD Audio. However, HD
>Audio
>+driver is dependent on gstreamer plugins and ffmpeg plugins to work
>properly.
>+These gstreamer plugins require license flags in order to be included in
>the build.
>+
>+Add "commercial" in the LICENSE_FLAGS_WHITELIST in local.conf. For
>example:
>+
>+  LICENSE_FLAGS_WHITELIST = "commercial"
>+
>+You should then be able to build a valleyisland 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').
>+
>+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 (or builds) live images which must be converted to a
>+partitioned image format in order to boot them on the Valley Island
>+Development Kit, Bayley Bay CRB and Bakersport CRB.
>+
>+You can deploy the hddimg image to a USB or SATA device. You will
>+need to know the device name on your host as well as the device name on
>+the target. Be careful with this step as using the wrong host device can
>+result in overwriting data on your host machine.
>+
>+Under Linux, USB and SATA devices typically appears as /dev/sdb,
>+/dev/sdc, etc. Watching your system messages as you connect the device
>+will tell you exactly which device name is assigned to the device.
>+On the Valley Island platform, assuming only one storage device is
>+attached at boot, a USB or SATA device will be /dev/sda.
>+
>+After inserting the boot media into your host machine and determining
>+your host and target device, create the image using the mkefidisk.sh
>+script, provided by poky under scripts/contrib/. Note that root
>+privileges are required. For example, using an USB device which appears
>+as /dev/sdc on the host:
>+
>+$ sudo ./mkefidisk.sh /dev/sdc core-image-sato-valleyisland-32.hddimg
>/dev/sda
>+
>+Follow the prompts on the screen to confirm the action.
>+
>+Insert the device into the Valley Island platform and power on. This
>+should result in a system booted to the Sato graphical desktop.
>+
>+The root password is empty on the Poky reference distribution images.
>+
>+
>+III. Device Notes
>+=================
>+a. Boot Loader
>+--------------
>+BIOS : Bayley Bay 072_011
>+EC   : KSC v3.10 for Bayley Bay/Bakersport CRB Fab3
>+
>+Required settings in BIOS
>+
>+  Turn off Secure-boot:
>+    Device Manager -> System Setup -> Boot -> Security Boot -> Disable
>+
>+  Turn off LPE Audio Support:
>+    Device Manager -> System Setup -> South Cluster Configuration ->
>+    Audio Configuration -> LPE Audio Support -> Disable
>+
>+Please use EFI mode for all boot medium types, i.e. USB disk and Hard
>Disk.
>+Setting in BIOS:
>+
>+  Choose boot medium:
>+    Boot Manager -> EFI (Hard Drive/USB Device)
>+
>+  Save settings:
>+    Boot Maintenance Manager -> Boot Options -> Change Boot Order ->
>+    Change the order -> Commmit Changes and Exit
>+
>+
>+b. I/O drivers
>+--------------
>+The I2C controller driver supports fast mode by default.
>+To enable standard mode, appends the arguments to kernel command line.
>+
>+  "i2c-designware-pci.force_std_mode=1" (PCI mode)
>+  "i2c-designware-platform.force_std_mode=1" (ACPI mode)
>+
>+
>+c. LPIO ACPI enumeration support
>+--------------------------------
>+Required settings in BIOS
>+
>+  Turn on ACPI mode
>+    Device Manager -> System Setup -> South Cluster Configuration ->
>+    LPSS & SCC Configuration -> LPSS & SCC Device Mode -> ACPI mode
>+
>+Some LPSS devices are hidden in ACPI mode to support Windows. To enable
>+these devices, toggle the following in the BIOS Menu.
>+
>+  Device Manager -> System Setup -> South Cluster Configuration ->
>Miscellaneous
>+  Configuration -> Unsupported LPSS Device and select "Unhide"
>+
>+
>+IV. Known Limitations
>+=====================
>+a. I/O drivers
>+--------------
>+HSUART:
>+
>+When runninig PCI mode HSUART at baud rate 2M and above, you may observe
>+kernel message "serial8250: too much work for irq...". Most of the time
>it
>+won't disrupt the transfer and able to complete without data corruption.
>+However, occasionally your transfer may halt when that kernel message
>appear.
>+In this case, you would need to re-open the HSUART port.
>diff --git a/meta-isg/meta-valleyisland/README.sources
>b/meta-isg/meta-valleyisland/README.sources
>new file mode 100644
>index 0000000..eef58fe
>--- /dev/null
>+++ b/meta-isg/meta-valleyisland/README.sources
>@@ -0,0 +1,18 @@
>+The sources for the packages comprising the images shipped with this
>+BSP can be found at the following location:
>+
>+http://downloads.yoctoproject.org/mirror/sources/
>+
>+The metadata used to generate the images shipped with this BSP, in
>+addition to the code contained in this BSP, can be found at the
>+following location:
>+
>+http://downloads.yoctoproject.org/releases/yocto/yocto-1.5/poky-dora-10.0
>.0.tar.bz2
>+
>+The metadata used to generate the images shipped with this BSP, in
>+addition to the code contained in this BSP, can also be found at the
>+following locations:
>+
>+git://git.yoctoproject.org/poky.git
>+
>+git://git.yoctoproject.org/meta-intel
>diff --git a/meta-isg/meta-valleyisland/conf/layer.conf
>b/meta-isg/meta-valleyisland/conf/layer.conf
>new file mode 100644
>index 0000000..00eea9c
>--- /dev/null
>+++ b/meta-isg/meta-valleyisland/conf/layer.conf
>@@ -0,0 +1,14 @@
>+#We have a conf and classes directory, add to BBPATH
>+BBPATH .= ":${LAYERDIR}"
>+
>+# We have a recipes directory, add to BBFILES
>+BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
>+	${LAYERDIR}/recipes-*/*/*.bbappend"
>+
>+BBFILE_COLLECTIONS += "valleyisland"
>+BBFILE_PATTERN_valleyisland := "^${LAYERDIR}/"
>+BBFILE_PRIORITY_valleyisland = "6"
>+
>+LAYERDEPENDS_valleyisland = "intel"
>+
>+LICENSE_PATH += "${LAYERDIR}/custom-licenses"
>-- 
>1.7.10.4
>
>-- 
>_______________________________________________
>meta-intel mailing list
>meta-intel at yoctoproject.org
>https://lists.yoctoproject.org/listinfo/meta-intel
>


-- 
Darren Hart
Yocto Project - Linux Kernel
Intel Open Source Technology Center






More information about the meta-intel mailing list