Difference between revisions of "Android BSP User Guide"

From ESS-WIKI
Jump to: navigation, search
 
(8 intermediate revisions by one other user not shown)
Line 1: Line 1:
<big><big><big>How to setup and compiler android 5.0.2 for iMX6 series</big></big></big>
+
== Setup host computer ==
<!--
 
{| align="right"
 
| __TOC__
 
|}
 
-->
 
  
===Prerequisites===
+
=== Setup Ubuntu host computer ===
==<span style="color:#0070c0;">Prerequisites</span>==
+
Install Ubuntu 14.04 LTS 64bit. You should have about 80 Gbytes of free disk space for building images.
All operations in this guide are based on Ubuntu 14.04 LTS 64bit only.<br>
 
First please install Ubuntu 14.04 LTS 64bit<sup><span style="color:red">*</span></sup> with minimum 2GB memory.<br>
 
<span style="color:red"><nowiki>* ubuntu-14.04.1-desktop-amd64.iso</nowiki></span>
 
===<span style="color:#0070c0;">To install required packages</span>===
 
Please login and perform the following commands:
 
  
===Install required packages===
+
Go to [http://releases.ubuntu.com/14.04/ http://releases.ubuntu.com/14.04/] and download 64-bit PC (AMD64) desktop image: [http://releases.ubuntu.com/14.04/ubuntu-14.04.3-desktop-amd64.iso http://releases.ubuntu.com/14.04/ubuntu-14.04.3-desktop-amd64.iso] for the installation.
==<span style="color:#0070c0;">Prerequisites</span>==
 
  
===IInstall JDK===
+
=== Install required packages ===
==<span style="color:#0070c0;">Prerequisites</span>==
+
=== Java ===
 +
$ sudo apt-get install openjdk-7-jdk
  
===Introducing BSP===
+
=== freescale Android_User's_Guide ===
==<span style="color:#0070c0;">Prerequisites</span>==
+
 
 +
  <small>$ sudo apt-get apt-get update
 +
  $ sudo apt-get install uuid uuid-dev
 +
  $ sudo apt-get install zlib1g-dev liblz-dev
 +
  $ sudo apt-get install liblzo2-2 liblzo2-dev
 +
  $ sudo apt-get install lzop
 +
  $ sudo apt-get install git-core curl
 +
  $ sudo apt-get install u-boot-tools
 +
  $ sudo apt-get install mtd-utils
 +
  $ sudo apt-get install android-tools-fsutils</small>
 +
 
 +
=== Android Open Source Project (AOSP) ===
 +
http://source.android.com/source/initializing.html
 +
  <small>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 x11proto-core-dev libx11-dev lib32z-dev ccache \
 +
  libgl1-mesa-dev libxml2-utils xsltproc unzip</small>
 +
 
 +
=== Setup Advantech Android BSP In RISC Platform ===
 +
The BSP contains cross toolchain, linux kernel source code, u-boot source code, Android root file system and some scripts. It is consist of three top folders: "android", "image", "scripts".
 +
 
 +
<small>
 +
  prebuilt/gcc/linux-x86/host/  : cross toolchain
 +
  bootable/bootloader/uboot-imx/ : u-boot source code
 +
  kernel_imx/                    : linux kernel source code
 +
  device
 +
  fsl/ : Android device related settings
 +
  fsl-proprietary/              : modules & firmware(e.g. WiFi, GPU)
 +
  hardware/imx/                  : HAL (Hardware Abstraction Layer)
 +
  image/                        : all built images located in
 +
  scripts/                      : to simplify building process</small>
 +
 
 +
===Naming Rule===
 +
It is consist of the model name followed by "AB" plus version number, for example, 4410ABV2080 which "4410" stands for RSB-4410, "AB" is acronym of Android BSP, "V2080" stands for Version 2.080; other model names list below:
 +
<small>
 +
  "3420" stands for ROM-3420
 +
  "5420" stands for ROM-5420
 +
  "7420" stands for ROM-7420
 +
  "DS31" stands for UBC-DS31
 +
  "U220" stands for UBC-220</small>
 +
 
 +
=== Build Instructions ===
 +
=== To build boot loader ===
 +
:Perform the following command in terminal console
 +
::<code>$ make -j4 bootloader</code>
 +
:The two files, u-boot_crc.bin & u-boot_crc.bin.crc, will be located in directory, ./out/target/product/product_name
 +
 
 +
=== To build boot image ===
 +
:Perform the following command in terminal console
 +
:to do build bootimage
 +
::<code>$ make -j4 bootimage</code>
 +
 
 +
=== To build boot image ===
 +
:Perform the following command in terminal console
 +
:to do build systemimage
 +
::<code>$ make -j4 systemimage</code>
 +
 
 +
=== To build recovery image ===
 +
:Perform the following command in terminal console
 +
:to do build recoveryimage
 +
::<code>$ make -j4 recoveryimage</code>
 +
 
 +
=== To build OTA package ===
 +
:Perform the following command in terminal console
 +
:to do build otapackage
 +
::<code>$ make -j4 otapackage</code>
 +
 
 +
=== Boot up from SD card or eMMC ===
 +
=== To create a bootable SD card ===
 +
:Perform the following command in terminal console
 +
  $ cd {BSPHOME}/scripts
 +
  $ ./mksd-android.sh ${SD_DEVICE}</code>
 +
 
 +
=== To create a bootable SD card ===
 +
:Perform the following command in terminal console
 +
  $ cd /data/mkimage/scripts
 +
  $ sh ./mksd-android.sh ${MMC_DEVICE}

Latest revision as of 11:06, 15 July 2016

Setup host computer

Setup Ubuntu host computer

Install Ubuntu 14.04 LTS 64bit. You should have about 80 Gbytes of free disk space for building images.

Go to http://releases.ubuntu.com/14.04/ and download 64-bit PC (AMD64) desktop image: http://releases.ubuntu.com/14.04/ubuntu-14.04.3-desktop-amd64.iso for the installation.

Install required packages

Java

$ sudo apt-get install openjdk-7-jdk

freescale Android_User's_Guide

 $ sudo apt-get apt-get update
 $ sudo apt-get install uuid uuid-dev
 $ sudo apt-get install zlib1g-dev liblz-dev
 $ sudo apt-get install liblzo2-2 liblzo2-dev
 $ sudo apt-get install lzop
 $ sudo apt-get install git-core curl
 $ sudo apt-get install u-boot-tools
 $ sudo apt-get install mtd-utils
 $ sudo apt-get install android-tools-fsutils

Android Open Source Project (AOSP)

http://source.android.com/source/initializing.html

 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 x11proto-core-dev libx11-dev lib32z-dev ccache \
 libgl1-mesa-dev libxml2-utils xsltproc unzip

Setup Advantech Android BSP In RISC Platform

The BSP contains cross toolchain, linux kernel source code, u-boot source code, Android root file system and some scripts. It is consist of three top folders: "android", "image", "scripts".

 prebuilt/gcc/linux-x86/host/   : cross toolchain
 bootable/bootloader/uboot-imx/ : u-boot source code
 kernel_imx/                    : linux kernel source code
 device
 fsl/ : Android device related settings
 fsl-proprietary/               : modules & firmware(e.g. WiFi, GPU)
 hardware/imx/                  : HAL (Hardware Abstraction Layer)
 image/                         : all built images located in
 scripts/                       : to simplify building process

Naming Rule

It is consist of the model name followed by "AB" plus version number, for example, 4410ABV2080 which "4410" stands for RSB-4410, "AB" is acronym of Android BSP, "V2080" stands for Version 2.080; other model names list below:

 "3420" stands for ROM-3420
 "5420" stands for ROM-5420
 "7420" stands for ROM-7420
 "DS31" stands for UBC-DS31
 "U220" stands for UBC-220

Build Instructions

To build boot loader

Perform the following command in terminal console
$ make -j4 bootloader
The two files, u-boot_crc.bin & u-boot_crc.bin.crc, will be located in directory, ./out/target/product/product_name

To build boot image

Perform the following command in terminal console
to do build bootimage
$ make -j4 bootimage

To build boot image

Perform the following command in terminal console
to do build systemimage
$ make -j4 systemimage

To build recovery image

Perform the following command in terminal console
to do build recoveryimage
$ make -j4 recoveryimage

To build OTA package

Perform the following command in terminal console
to do build otapackage
$ make -j4 otapackage

Boot up from SD card or eMMC

To create a bootable SD card

Perform the following command in terminal console
 $ cd {BSPHOME}/scripts
 $ ./mksd-android.sh ${SD_DEVICE}</code>

To create a bootable SD card

Perform the following command in terminal console
 $ cd /data/mkimage/scripts
 $ sh ./mksd-android.sh ${MMC_DEVICE}