Timesys Android for Intel Atom Bay Trail-1 CRB (Bayley Bay EV/CRB) User Guide

Introduction

Timesys has partnered with Intel® to provide Android™ services for Intel® Atom™ Processor E38XX. The reference Android™ Board Support Package (BSP) for the Intel® Atom™ Bay Trail-1 CRB (Bayley Bay EV/CRB) is provided in both installable and source forms, enabling customers to jump start their Android experience on Intel® Atom™ processors.

Downloading

The binary BSP image, sources, and documentation can be downloaded at our Android™ BSP Downloads page.

The large android sources and build environment has been split into several downloadable files. They must be recombined into a single file, baytrail-a422_ww01.tar.gz, after downloading in order to extract the sources.

To recombine in Linux: From the shell, run

cat baytrail-a422_ww01.tar.gz-0* > baytrail-a422_ww01.tar.gz

To recombine in Windows: From the command prompt, run

type baytrail-a422_ww01.tar.gz-0* > baytrail-a422_ww01.tar.gz

By downloading the binary BSP and/or source code, you are agreeing to the terms of the Android™ BSP for Intel® Atom™ Bay Trail-1 CRB (Bayley Bay EV/CRB).

Preparing the BSP installer

The binary BSP file (live.img) is bootable from a USB flash drive, and can be used to install or to run Android™ as a live image.

To prepare the image for installation from Linux:

  1. Insert the USB drive into the system, and discover the assigned device (for example, /dev/sdb). You may find the correct device from the output of the dmesg command: dmesg | tail or by using the result of ls /dev/sd*.
  2. Unmount all partitions on the USB drive. Check the output of the mount command and use umount to unmount any partitions that match the device you found above. Example: mount | grep sdb, umount /dev/sdb1, etc.
  3. Write the image to the USB drive using dd. WARNING: this is a destructive operation that will overwrite the contents of the device. Be sure that you have the correct device name. Example: sudo dd if=live.img of=/dev/sdb

To prepare the image for installation from Windows:

  1. Download and install the open source Win32 Disk Imager tool from http://sourceforge.net/projects/win32diskimager (minimum version 0.7).
  2. Insert the USB drive into the system, and run Win32DiskImager (as an Administrator).
  3. Load the “live.img” file, and select the USB device from the list.
  4. Click the “Write” button.

Preparing the Intel® board for installation

Configure the BIOS by turning the device on, and pressing F2 to enter setup. Set the following options:

  1. Device Manager -> System Setup -> Boot:
    OS Selection: Android
    Fast Boot: Disable
    UEFI Security Boot: Enable
    Silent Boot: Disable
  2. Device Manager -> Secure Boot
    ttempt Secure Boot: [ ]
    Select SecureBoot profile: No Profile/Custom Profile
    Secure Boot Mode: Custom Mode
  3. Device Manager -> System Setup -> South Cluster Configuration -> Miscellaneous Configuration:
    UART Interface Selection: SuperIO UART
  4. Device Manager -> System Setup -> Uncore Configuration:
    PAVP/PAVC: Serpent

Installing the BSP image

  1. Insert the USB drive prepared with live.img (as described in the above section) into one of the Intel device’s USB ports.
  2. Connect the Intel board’s micro USB serial port to the host system, and launch a terminal application (such as minicom or screen for Linux, and TeraTerm or PuTTY for Windows). Note that the correct baud rate is 115200.
  3. Power on the board and press the F7 key to enter the Boot Manager. From the Boot Manager, select the EFI USB Device to boot.
  4. When live.img boots, you will see a menu with options for a live session, automated / interactive installer, and an option for provisioning test keys for secure boot.
  5. Select the option: Run interactive installer. Note that the Down/Vol- keys cycle boot menu options, and the Up/Vol+ keys select the currently highlighted option.
  6. Output from the installer is through the serial terminal. You should see the following prompts:
    Do you want to continue? (y/N)? y
    Install GummiBoot bootloader? (Y/n)? y
    Enter boot menu timeout (0=no menu)
    (min=0,max=60,enter=5): 5
  7. The installer will confirm that it is configured, and request that you press enter to continue.
  8. Installation will proceed. You should then see the “All done” confirmation message in the serial terminal. You may then remove the USB drive, and power cycle the device.

Building the BSP from Source

Host Setup

The build host must be a 64-bit Ubuntu 12.04 LTS system.

  1. Install the necessary host requirements:
    $ sudo apt-get update
    $ sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev python-argparse
  2. Ensure that the git version is atleast 1.7.2. You may update it by adding the following PPA (Personal Package Archive):
    $ sudo apt-get install python-software-properties
    $ sudo add-apt-repository ppa:git-core
    $ sudo apt-get update
    $ sudo apt-get install git-core
  3. Install the Oracle JDK. OpenJDK may work, but there have been reports from the Android team that there could be subtle issues.
    Download at least version 6 update 31 of the Oracle Java SE Development kit from: http://www.oracle.com/technetwork/java/javase/downloads/index.html
    (be sure to use the 64-bit file).
  4. Configure bashrc:
    Add the following to ~/.bashrc:
    export JAVA_1_6=/usr/java/jdk1.6.0_31
    export JAVA_HOME=$JAVA_1_6
    export JAVA_FONTS=/usr/share/fonts/truetype
    export ANT_HOME=/usr/share/ant
    PATH=$JAVA_HOME/bin:$ANT_HOME/bin:$PATH
    export CLASSPATH=.

    Reload the config:

    $ source ~/.bashrc

Build Procedure

The source files should be downloaded and recombined as described in the Download section of this document. Extracting the gzip’d tarball will result in a folder, intel_a422_ww01, containing the build environment and sources. Use the following procedures to build the BSP from within that folder:

To compile the “eng” variant:

$ source ./build/envsetup.sh
$ lunch byt_m_crb-eng
$ make flashfiles -j8 

To compile the “userdebug” variant:

$ source ./build/envsetup.sh
$ lunch byt_m_crb-userdebug
$ make flashfiles -j8

After the build is complete, the image files can be found under pub/BYT_M_CRB/uefi-images/<variant>.
Note: You should alter the -j8 value to suit your build system. A good rule of thumb for the number is to multiply the number of available processor cores by 1.5.

For more detail on building Android™ images, please refer to the Android™ developer documentation.

 


Android is a trademark of Google Inc.

 	  Timesys is an Affiliate Member of the Intel Internet of Things Solutions Alliance