Wiki Home » rex » android442

android442

Last modified by Administrator on 2016/04/17 13:50
Android is a mobile operating system (OS) based on the Linux kernel and currently developed by Google.
https://www.android.com/

This document describes installation procedure for binary Freescale Android 4.4.2 image (i.MX6dl/q Rex Pro module).
Supported peripheral:

  • IMX6Q module.
  • HDMI / LVDS 640x480 LCD output.
  • Resistive Touch.
  • USB flash as external storage.
  • SD card as external storage.
  • Video playback.
  • Audio playback.

Initial steps

Install Prerequisites

sudo apt-get install wget
sudo apt-get install e2fsprogs
sudo apt-get install util-linux

Create working directory

mkdir -pv ~/workdir/imx6/android/
cd ~/workdir/imx6/android/

Download installation files

git clone https://github.com/voipac/imx6_rex_bin_kk442
cd imx6_rex_bin_kk442/

Install Android into SD card

Partition layout

This will be the final SD card partitioning layout at the end of installation procedure.

Partition type/index Name Start offset Size File system Content 
 N/A BOOT Loader 1 KB 1 MBN/A Not used
 Primary 1 Boot 8 MB 8 MBboot.img format,
kernel + ramdisk
boot.img 
 Primary 2 Recovery Follow Boot 8 MBboot.img format,
kernel + ramdisk
recovery.img
 Logic 5 (Extended 3) SYSTEM Follow Recovery 512 MBEXT4. Mount as /
system
system.img
 Logic 6 (Extended 3) CACHE Follow SYSTEM 512 MBEXT4. Mount as /
cache 
 Android cache for image
store of OTA.
 Logic 7 (Extended 3) Device Follow CACHE 8 MBEXT4. Mount as /
vender
To Store MAC address files.
 Logic 8 (Extended 3) Misc Follow Device 4 MB N/AFor recovery store
bootloader message,
reserve.
 Primary 4 DATA Follow Misc Total - Other
images
EXT4. Mount at /
data
Application data storage for
the system application and
for internal media partition
in /mnt/sdcard/ dir.

Install Bootloader

https://github.com/voipac/imx6_rex_bin_kk442/blob/master/u-boot-0x27800000_imx6dl_20160410.bin is compatible with i.MX6DL Rex PRO module.
https://github.com/voipac/imx6_rex_bin_kk442/blob/master/u-boot-0x27800000_imx6q_20160410.bin is compatible with i.MX6Q Rex PRO module.
The recommended flashing procedure is described below:
https://github.com/FEDEVEL/imx6rex-u-boot-2009.08/wiki#flashing-uboot-to-spi-via-ethernet

Extract system.img

7z x system.img.7z.001

Install Android

Before you go further, be sure the sd card is not mounted otherwise the fsl-sdcard-partition script may fail to create a proper Android SD card.

For installation is used https://github.com/voipac/imx6_rex_bin_kk442/blob/master/fsl-sdcard-partition.sh script.

  • This script require boot.img, recovery.img and system.img files in the same directory as script itself.
  • /dev/mmcblk0 is path to the SD card.
The script is working correctly only with /dev/mmcblk0 devices. (USB to SD adapters does not work).
chmod a+x fsl-sdcard-partition.sh
sudo ./fsl-sdcard-partition.sh -f /dev/mmcblk0

Configure Bootloader

LVDS (LDB-ETV570)

Temporary boot settings

setenv machid 12a9
setenv bootargs console=ttymxc0,115200 init=/init video=mxcfb0:dev=ldb,LDB-ETV570,if=RGB666 video=mxcfb1:off video=mxcfb2:off fbmem=10M vmalloc=400M androidboot.console=ttymxc0 androidboot.hardware=freescale
booti mmc1

Persistent boot settings

setenv machid 12a9
setenv bootargs console=ttymxc0,115200 init=/init video=mxcfb0:dev=ldb,LDB-ETV570,if=RGB666 video=mxcfb1:off video=mxcfb2:off fbmem=10M vmalloc=400M androidboot.console=ttymxc0 androidboot.hardware=freescale
setenv bootcmd booti mmc1
saveenv
reset

Persistent boot settings (touch screen calibration)

setenv machid 12a9
setenv bootargs tsdev=tsc2007 console=ttymxc0,115200 init=/init video=mxcfb0:dev=ldb,LDB-ETV570,if=RGB666 video=mxcfb1:off video=mxcfb2:off fbmem=10M vmalloc=400M androidboot.console=ttymxc0 androidboot.hardware=freescale
setenv bootcmd booti mmc1
saveenv
reset

How to trigger new touch screen calibration
[email protected]_6dq:/ # rm /data/calibration
[email protected]_6dq:/ # reboot

HDMI

Temporary boot settings

setenv machid 12a9
setenv bootargs console=ttymxc0,115200 init=/init video=mxcfb0:dev=hdmi,[email protected],if=RGB24,bpp=32 video=mxcfb1:off video=mxcfb2:off fbmem=28M vmalloc=400M androidboot.console=ttymxc0 androidboot.hardware=freescale
booti mmc1

Persistent boot settings

setenv machid 12a9
setenv bootargs console=ttymxc0,115200 init=/init video=mxcfb0:dev=hdmi,[email protected],if=RGB24,bpp=32 video=mxcfb1:off video=mxcfb2:off fbmem=28M vmalloc=400M androidboot.console=ttymxc0 androidboot.hardware=freescale
setenv bootcmd booti mmc1
saveenv
reset
Tags:
Created by Administrator on 2014/12/15 16:10

This wiki is licensed under a Creative Commons 2.0 license
XWiki Enterprise 6.1 - Documentation