meta-intel/meta-crownbay
Marc Ferland 54a572b1d4 Add SMP support to crownbay.
This patch fixes Yocto BUG #1015. It adds support for SMP on the crownbay
architecture from the meta-intel branch.

Signed-off-by: Marc Ferland <ferlandm@sonatest.com>
Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
2011-05-19 20:17:22 -05:00
..
binary meta-crownbay: new layer for E6xx/EG20T systems 2011-01-03 16:45:27 -08:00
conf meta-crownbay: update SRCREVs 2011-05-18 08:55:37 -05:00
recipes-bsp/formfactor meta-crownbay: add a machine configuration that doesn't use EMGD graphics 2011-01-03 16:46:31 -08:00
recipes-graphics/xorg-xserver crownbay: xserver-xf86-emgd sum fixes 2011-03-16 14:26:01 -07:00
recipes-kernel/linux Add SMP support to crownbay. 2011-05-19 20:17:22 -05:00
COPYING.MIT meta-crownbay: new layer for E6xx/EG20T systems 2011-01-03 16:45:27 -08:00
README meta-crownbay: update documentation with hw and build details 2011-04-25 16:07:29 -05:00
README.sources README.sources: use git.yoctoproject.org as server for the BSP repository 2011-05-17 14:39:15 -05:00

This README file contains information on building the meta-crownbay BSP layer, and booting the images contained in the /binary directory. Please see the corresponding sections below for details.

The Crown Bay platform consists of the Intel Atom Z6xx processor, plus the Intel EG20T Platform Controller Hub (Tunnel Creek + Topcliff).

It also supports the E6xx embedded on-chip graphics via the Intel Embedded Media and Graphics Driver (EMGD) 1.5 Gold Driver.

Table of Contents

I. Building the meta-crownbay BSP layer II. Special notes for building the meta-crownbay BSP layer III. Booting the images in /binary

I. Building the meta-crownbay BSP layer

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.

In order to build an image with BSP support for a given release, you need to check out the 'meta-intel' branch corresponding to the release you're building against e.g. to build for bernard (1.0), check out the 'bernard' branch of both poky and 'meta-intel'.

Having done that, and assuming you cloned the 'meta-intel' repository at the top-level of your yocto build tree, you can build a crownbay image by adding the location of the meta-crownbay layer to bblayers.conf e.g.:

yocto/meta-intel/meta-crownbay \

The meta-crownbay layer contains support for two different machine configurations. These configurations are identical except for the fact that the one prefixed with 'crownbay' makes use of the Intel-proprietary EMGD 1.5 graphics driver, while the one prefixed with 'crownbay-noemgd' does not.

If you want to enable the layer that supports EMGD graphics add following to the local.conf file:

MACHINE ?= "crownbay"

If you want to enable the layer that does not support EMGD graphics add the following to the local.conf file:

MACHINE ?= "crownbay-noemgd"

You should then be able to build a crownbay image as such:

$ source poky-init-build-env $ bitbake poky-image-sato-live

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').

II. Special notes for building the meta-crownbay BSP layer

The meta-crownbay layer makes use of the proprietary Intel EMGD userspace drivers when building the "crownbay" machine (but not when building the "crownbay-noemgd" machine). If you got the BSP from the 'BSP Downloads' section of the Yocto website, the EMGD binaries needed to perform the build will already be present in the BSP, located in the recipes-graphics/xorg-xserver/xserver-xf86-emgd-bin directory, and you can ignore the rest of this section.

If you didn't get the BSP from the 'BSP Downloads' section of the Yocto website, you'll need to download the a Windows executable from the official EMGD website, extract the binaries from it, and copy them to the proper location in the meta-crownbay layer.

These steps require that you run a graphical application in Windows. Windows 7 was used for these instructions, but it shouldn't matter which version of Windows you use.

The first step of the process is to download the EMGD 1.5 Gold Driver. Here is the current link to the URL which it can be downloaded from:

http://edc.intel.com/Software/Downloads/EMGD/

In the Download Now tab, select:

Intel® architecture-based product: Intel Atom Processor E6XX Series Operating System: MeeGo 1.0 IVI Linux (kernel 2.6.33.3, X.server 1.8.0)

That will give you a large zip file:

IEMGD_1_5_GOLD_ALL_1742.zip

Extract the files in the zip file, which will in turn give you a large .exe file:

IEMGD_1_5_GOLD_ALL_1742.exe

Run IEMGD_1_5_GOLD_ALL_1742.exe to install, accept licenses, etc.

If it says to install watcom, follow the instructions to do that.

When the installation completes, an application named "emgd-ced" will be present in the install directory. Double-click to run it.

Select the menu item: New Configuration

In the tabbed page, make the following selections and/or enter the specified data:

Configuration File Name: myconfig Platform Chipset: Intel Atom Processor E6xx Port Devices: LVDS, sDVO

Hit the 'Next' button.

On the next tabbed page, make the following selections and/or enter the specified data:

Readable Port Name: portname0 Encoder Configuration: Select sDVO Device: Internal LVDS

Hit the 'Finish' button.

Select the menu item: New Package

In the tabbed page, make the following selections and/or enter the specified data:

Package File Name: mypackage Configurations: selec myconfig.cnfg Target OS: Linux operating System

Hit the 'Finish' button.

Select the menu item: Generate Installation

This will create the EMGD installation package:

Generating EMGD installation...

The installation package should now be under the 'workspace' subdirectory of the directory you installed to:

workspace/installation/mypackage.pkg_installation/IEMGD_HEAD_Linux/IEMGD_HEAD_Linux.tgz

This is the file you are interested in. Copy it to your Poky build system, and uncompress/untar it:

$ tar cvfz IEMGD_HEAD_Linux.tgz

Finally, copy Xorg-xserver binaries in the Meego1.0 driver directory to the xserver-xf86-emgd-bin directory in the meta-crownbay layer:

$ cp IEMGD_HEAD_Linux/MeeGo1.0/driver/Xorg-xserver-1.7.99/* meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd-bin

You also need to copy the IEMGD License.txt file to the same directory:

$ cp IEMGD_HEAD_Linux/License/License.txt meta-crownbay/recipes/xorg-xserver/xserver-xf86-emgd-bin

At this point, you should be able to build meta-crownbay images as usual.


For reference, the EMGD Driver documentation is also available at the above link (it's also part of the installation).

The specific text of the document is:

User Guide: Intel® Embedded Media and Graphics Driver, EFI Video Driver, EPOG, and Video BIOS v1.5 for Windows* XP and Linux* Provides installation requirements/procedures & describes the vbios/firmware, configuration options, & functionality of Intel® EMGD under Windows* & Linux*. Refer to guide for details.

File Type/Size: PDF 3,340KB Version: 008 : October 2010

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=poky-image-sato-live-crownbay-20101207053738.hddimg of=/dev/sdf

sync

eject /dev/sdf

This should give you a bootable USB flash device. Insert the device into a bootable USB socket 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 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