[meta-intel] [PATCH 12/21] meta-valleyisland: new BSP layer for Intel Atom E38XX Processor

Kamble, Nitin A nitin.a.kamble at intel.com
Thu May 8 14:10:34 PDT 2014


On 5/7/2014 5:19 PM, wei.sern.chan at intel.com wrote:
> From: Chan Wei Sern <wei.sern.chan at intel.com>
>
> This layer provides support for Intel Atom E38XX Processor
> product line.
>
> Signed-off-by: Chan Wei Sern <wei.sern.chan at intel.com>
> Signed-off-by: Chang Rebecca Swee Fun <rebecca.swee.fun.chang at 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
If this commit is for master branch, then it should not refer dora 
branch here.
> +
> +  URI: git://git.yoctoproject.org/meta-intel
> +  layers: intel
> +  branch: dora
Same comment as above.

Nitin

> +
> +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"



More information about the meta-intel mailing list