IoTGateway/BSP/Android/Android BSP User Guide 6.0.1 2.1.0
Contents
- 1 Setup host computer
- 1.1 Setup Ubuntu host computer
- 1.2 Install docker and Use docker
- 1.3 Getting Android source code (Android 6.0.1_2.1.0/kernel Yocto-2.0 /U-Boot Yocto-2.0)
- 1.4 Patch to Android M6.0.1_2.1.0
- 1.5 Building Android 6.0.1_2.1.0 image for SD card
- 1.6 Naming Rule
- 1.7 Build Instructions
- 1.8 To build boot loader
- 1.9 To build boot image
- 1.10 To build boot image
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 docker and Use docker
Please use docker environment to compiler Android 6.0.1_2.1.0
Android 6.0.1_2.1.0 Docker
Image Repository : advrisc/u14.04-imx6abv4
Image Tag : 20160825
Reference: http://ess-wiki.advantech.com.tw/view/IoTGateway/Docker
Getting Android source code (Android 6.0.1_2.1.0/kernel Yocto-2.0 /U-Boot Yocto-2.0)
$ mkdir myandroid $ mkdir bin $ cd myandroid/ $ curl [https://storage.googleapis.com/git-repo-downloads/repo https://storage.googleapis.com/git-repo-downloads/repo] > ../bin/repo $ chmod a+x ../bin/repo $ ../bin/repo init -u https://github.com/ADVANTECH-Corp/android-manifest.git -b m6.0.1_2.1.0-ga $ ../bin/repo sync
Remove the .repo and .git file
$ find . -name .repo | xargs rm -rf $ find . -name .git | xargs rm -rf
Patch to Android M6.0.1_2.1.0
$ cd myandroid/bootable/bootloader/uboot-imx/ $ patch -p1 <../../../patches_android_6.0.1/6001-Uboot_Yocto_4.1.15_1.2.0-to-Android_M6.0.1_2.1.0.patch $ cd myandroid/kernel_imx/ $ patch -p1 <../patches_android_6.0.1/6001-Linux_Yocto_4.1.15_1.2.0-to-Android_M6.0.1_2.1.0.patch $ cd myandroid/
Building Android 6.0.1_2.1.0 image for SD card
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
$ out/host/linux-x86/bin/simg2img out/target/product/$PRODUCT/system.img out/target/product/$PRODUCT/system_raw.img
$ mv out/target/product/$PRODUCT/system_raw.img out/target/product/$PRODUCT/system.img
simg2img is a tool that converts a sparse system image to a raw system image on a Linux host PC and is located in myandroid/out/host/linux-x86/bin/simg2img.