Difference between revisions of "iMX6 TinyRex Ultra Android"
(Created page with "Category:iMX6 TinyRex Development kit Category:iMX6 TinyRex Ultra Category:Android <!-- --> <div style="float:right">__TOC__</div> Android is a mobile operating sy...") |
|||
Line 36: | Line 36: | ||
* [http://downloads.voipac.com/index.php?p=iMX6_TinyRex_Development_kit/module/software/android/Android_7_1/sources&dl=android_N7.1.1_1.0.0_source.tar.gz Source code] with patches provided by NXP | * [http://downloads.voipac.com/index.php?p=iMX6_TinyRex_Development_kit/module/software/android/Android_7_1/sources&dl=android_N7.1.1_1.0.0_source.tar.gz Source code] with patches provided by NXP | ||
− | * [http://downloads.voipac.com/index.php?p=iMX6_TinyRex_Development_kit/module/software/android/Android_7_1/sources&dl=android_N7.1.1_1.0.0_source_voipac.tar.gz Voipac patches] that add support for | + | * [http://downloads.voipac.com/index.php?p=iMX6_TinyRex_Development_kit/module/software/android/Android_7_1/sources&dl=android_N7.1.1_1.0.0_source_voipac.tar.gz Voipac patches] that add support for TinyRex boards |
+ | ==== Applying Voipac patches ==== | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | tar xvzf android_N7.1.1_1.0.0_source_voipac.tar.gz -C ~/workdir/imx6/android/ | ||
+ | |||
+ | cd ~/workdir/imx6/android/a711-rex/device/ | ||
+ | tar xvzf ~/workdir/imx6/android/android_N7.1.1_1.0.0_source_voipac/device_vpac-proprietary_voipac.tar.gz -C . | ||
+ | |||
+ | cd ~/workdir/imx6/android/a711-rex/device/fsl/ | ||
+ | git apply ~/workdir/imx6/android/android_N7.1.1_1.0.0_source_voipac/device_fsl_voipac.patch | ||
+ | |||
+ | cd ~/workdir/imx6/android/a711-rex/bootable/bootloader/uboot-imx | ||
+ | git apply ~/workdir/imx6/android/android_N7.1.1_1.0.0_source_voipac/bootable_bootloader_uboot-imx_voipac.patch | ||
+ | |||
+ | cd ~/workdir/imx6/android/a711-rex/kernel_imx | ||
+ | git apply ~/workdir/imx6/android/android_N7.1.1_1.0.0_source_voipac/kernel_imx_voipac.patch | ||
+ | |||
+ | cd ~/workdir/imx6/android/a711-rex/hardware/imx | ||
+ | git apply ~/workdir/imx6/android/android_N7.1.1_1.0.0_source_voipac/hardware_imx_voipac.patch | ||
+ | |||
+ | cd ~/workdir/imx6/android/a711-rex/hardware/broadcom/wlan | ||
+ | git apply ~/workdir/imx6/android/android_N7.1.1_1.0.0_source_voipac/hardware_broadcom_wlan_voipac.patch | ||
+ | </syntaxhighlight> | ||
+ | ==== Build Type options ==== | ||
+ | user - Production ready image, no debug | ||
+ | userdebug - Provides image with root access and debug, similar to "user" | ||
+ | eng - Development image with debug tools | ||
+ | ==== Building command ==== | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
+ | cd ~/workdir/imx6/android/a711-rex | ||
+ | source build/envsetup.sh | ||
+ | |||
+ | lunch imx6tinyrex-userdebug | ||
+ | make 2>&1 | tee build-log-imx6tr.txt | ||
+ | |||
+ | lunch imx6rex-userdebug | ||
+ | make 2>&1 | tee build-log-imx6r.txt | ||
+ | |||
+ | lunch imx6openrex-userdebug | ||
+ | make 2>&1 | tee build-log-imx6or.txt | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | Compiled files are stored in the ouput directory: | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
+ | cd ~/workdir/imx6/android/a711-rexout/ | ||
+ | ls -la out/target/product/ | ||
+ | |||
+ | drwxrwxr-x 6 user user 4096 7 24 07:19 . | ||
+ | drwxrwxr-x 4 user user 4096 8 30 2017 .. | ||
+ | drwxrwxr-x 11 user user 4096 8 22 21:34 imx6openrex | ||
+ | drwxrwxr-x 11 user user 4096 7 28 20:19 imx6rex | ||
+ | drwxrwxr-x 11 user user 4096 6 18 2017 imx6tinyrex | ||
+ | drwxrwxr-x 11 user user 4096 5 1 2017 sabresd_6dq | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | === Binary files === | ||
+ | Official Voipac Android files can be found in the [http://downloads.voipac.com/index.php?p=iMX6_TinyRex_Development_kit/module/software/android/Android_7_1/binaries download section]. | ||
+ | |||
+ | === Preparing SD card === | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
+ | mkdir -pv ~/workdir/imx6/android/bin/7_1/tinyrex | ||
+ | cd ~/workdir/imx6/android/bin/7_1/tinyrex | ||
+ | wget -r -nH -nd -np -R index.html* http://downloads.voipac.com/index.php?p=iMX6_TinyRex_Development_kit/module/software/android/Android_7_1/binaries | ||
+ | chmod a+x vpac-sdcard-partition.sh | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | |||
+ | ==== 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 MB|N/A| bootloader | ||
+ | | Primary 1| Boot| 8 MB| 32 MB|boot.img format, | ||
+ | kernel + ramdisk|boot.img | ||
+ | | Primary 2| Recovery| Follow Boot| 32 MB|boot.img format, | ||
+ | kernel + ramdisk|recovery.img | ||
+ | | Logic 5 (Extended 3)| SYSTEM| Follow Recovery| 1536 MB|EXT4. Mount as / | ||
+ | system|system.img (Android system files under /system/ dir) | ||
+ | | Logic 6 (Extended 3)| CACHE| Follow SYSTEM| 512 MB|EXT4. Mount as / | ||
+ | cache | Android cache for image store of OTA. | ||
+ | | Logic 7 (Extended 3)| Device| Follow CACHE| 8 MB|EXT4. Mount as / | ||
+ | vender|To Store MAC address files | ||
+ | | Logic 8 (Extended 3)| Misc| Follow Device| 6 MB| N/A|For recovery store | ||
+ | bootloader message, reserve | ||
+ | | Logic 9 (Extended 3)| DATAFOOTER| Follow Misc| 2 MB| N/A|For crypto footer of DATA partition encryption | ||
+ | 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. |
Revision as of 14:43, 10 March 2021
Android is a mobile operating system (OS) based on the Linux kernel and currently developed by Google.
This document describes installation procedure for binary Freescale Android 7.1 image. Supported peripheral:
- iMX6 TinyRex Ultra module
- HDMI output
- USB flash as external storage
- Video playback
- Audio playback
- WiFi
- Ethernet
Android 7.1
Install Prerequisites
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 sudo apt-get install openjdk-8-jdk
Source code
Required files needed during building:
- Documentation for android provided by NXP
- Source code with patches provided by NXP
- Voipac patches that add support for TinyRex boards
Applying Voipac patches
tar xvzf android_N7.1.1_1.0.0_source_voipac.tar.gz -C ~/workdir/imx6/android/ cd ~/workdir/imx6/android/a711-rex/device/ tar xvzf ~/workdir/imx6/android/android_N7.1.1_1.0.0_source_voipac/device_vpac-proprietary_voipac.tar.gz -C . cd ~/workdir/imx6/android/a711-rex/device/fsl/ git apply ~/workdir/imx6/android/android_N7.1.1_1.0.0_source_voipac/device_fsl_voipac.patch cd ~/workdir/imx6/android/a711-rex/bootable/bootloader/uboot-imx git apply ~/workdir/imx6/android/android_N7.1.1_1.0.0_source_voipac/bootable_bootloader_uboot-imx_voipac.patch cd ~/workdir/imx6/android/a711-rex/kernel_imx git apply ~/workdir/imx6/android/android_N7.1.1_1.0.0_source_voipac/kernel_imx_voipac.patch cd ~/workdir/imx6/android/a711-rex/hardware/imx git apply ~/workdir/imx6/android/android_N7.1.1_1.0.0_source_voipac/hardware_imx_voipac.patch cd ~/workdir/imx6/android/a711-rex/hardware/broadcom/wlan git apply ~/workdir/imx6/android/android_N7.1.1_1.0.0_source_voipac/hardware_broadcom_wlan_voipac.patch
Build Type options
user - Production ready image, no debug userdebug - Provides image with root access and debug, similar to "user" eng - Development image with debug tools
Building command
cd ~/workdir/imx6/android/a711-rex source build/envsetup.sh lunch imx6tinyrex-userdebug make 2>&1 | tee build-log-imx6tr.txt lunch imx6rex-userdebug make 2>&1 | tee build-log-imx6r.txt lunch imx6openrex-userdebug make 2>&1 | tee build-log-imx6or.txt
Compiled files are stored in the ouput directory:
cd ~/workdir/imx6/android/a711-rexout/ ls -la out/target/product/ drwxrwxr-x 6 user user 4096 7 24 07:19 . drwxrwxr-x 4 user user 4096 8 30 2017 .. drwxrwxr-x 11 user user 4096 8 22 21:34 imx6openrex drwxrwxr-x 11 user user 4096 7 28 20:19 imx6rex drwxrwxr-x 11 user user 4096 6 18 2017 imx6tinyrex drwxrwxr-x 11 user user 4096 5 1 2017 sabresd_6dq
Binary files
Official Voipac Android files can be found in the download section.
Preparing SD card
mkdir -pv ~/workdir/imx6/android/bin/7_1/tinyrex cd ~/workdir/imx6/android/bin/7_1/tinyrex wget -r -nH -nd -np -R index.html* http://downloads.voipac.com/index.php?p=iMX6_TinyRex_Development_kit/module/software/android/Android_7_1/binaries chmod a+x vpac-sdcard-partition.sh
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 MB|N/A| bootloader | Primary 1| Boot| 8 MB| 32 MB|boot.img format, kernel + ramdisk|boot.img | Primary 2| Recovery| Follow Boot| 32 MB|boot.img format, kernel + ramdisk|recovery.img | Logic 5 (Extended 3)| SYSTEM| Follow Recovery| 1536 MB|EXT4. Mount as / system|system.img (Android system files under /system/ dir) | Logic 6 (Extended 3)| CACHE| Follow SYSTEM| 512 MB|EXT4. Mount as / cache | Android cache for image store of OTA. | Logic 7 (Extended 3)| Device| Follow CACHE| 8 MB|EXT4. Mount as / vender|To Store MAC address files | Logic 8 (Extended 3)| Misc| Follow Device| 6 MB| N/A|For recovery store bootloader message, reserve | Logic 9 (Extended 3)| DATAFOOTER| Follow Misc| 2 MB| N/A|For crypto footer of DATA partition encryption 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.