NOTICE: The Processors Wiki will End-of-Life on January 15, 2021. It is recommended to download any files or other content you may need that are hosted on processors.wiki.ti.com. The site is now set to read only.

Android gingerbread usecase 128MB boot

From Texas Instruments Wiki
Jump to: navigation, search

Content is no longer maintained and is being kept for reference only!



Introduction[edit]

  • Android migration to non-mobile segments raises the need of memory footprint analysis to lower down the cost of product; specifically run-time memory utilization. There are many applications such as phone,contacts etc. does not play role to these segments. They would give good deal at run-time by giving run-time space to other applications.
  • This wiki will discuss one such use case to boot android with minimal memory configuration.

memory usage to run sgx powered android with standard features (standard android source form Google Inc.)199MB. However this is limit can be cut down on compromizing with number of applications that runs simultaneously and numbers of services needed for use case.Let us discuss one such use case over here.

  • Use Case:
    • Booting a android gingerbread on AM37xevm with sgx & 128MB of run-time memory configuration.
  • Use case will remove following features for 128MB run-time memory configuration
    • phone
    • contacts
    • wallpaper
    • 3D Gallery (2D gallery will be supported)
    • mms
    • email
    • deskclock
    • alarmprovider
    • calculator
    • calendar
    • camera

NoteNote:  : Analysis presented in this document is based on experiment with TI's AM37xevm & TI's devkit release 2.3.1
http://software-dl.ti.com/dsps/dsps_public_sw/sdo_tii/TI_Android_DevKit/TI_Android_GingerBread_2_3_DevKit_1_0/index_FDS.html

Customize android for use case[edit]

NoteNote:  Only sanity test cycle has been validated against following described configurations.  

/* To apply patch */
$cd <android-src>/build
$tar -xzvf {patch-file}
$patch -p1 < 0001-android-customization-for-128MB.patch
/* To apply patch */
$cd <android-src>/frameworks/base
$patch -p1 < {patch-file}
/* To apply patch */
$cd <android-src>/frameworks/base
$patch -p1 < {patch-file}
/* To apply patch */
$cd <android-src>/packages/apps/Launcher2
$patch -p1 < {patch-file}
#mmc init
#fatload mmc 0 80200000 uImage
#setenv bootargs 'console=ttyO0,115200n8 androidboot.console=ttyO0 mem=128M root=/dev/mmcblk0p2 rw rootfstype=ext3 rootwait init=/init ip=off omap_vout.vid1_static_vrfb_alloc=y vram="2M" omapfb.vram=0:2M'
#bootm 0x80200000

Observation[edit]

  • Normal boot
  • Gallery, Music, Wifi, Browser, Settings - operations are normal as expected
  • Bluetooth/Wifi connectivity is fine
  • However sometime large file transfer over bluetooth suffers from "low memory" and service gets killed.However it recovers again,but file transfer required to be initiated again by user.

Summary Note[edit]

  • It is recommended to have minimum of 256MB of run-time memory to have SGX powered android with all basic features.
  • However to win on product cost, one can always customized & optimize android if it is used for specific use cases.For more detail kindly refer#http://processors.wiki.ti.com/index.php/Android_gingerbread_memory_analysis_for_non-phone_device
  • Running QVGA resolution(320x240) with 128MB of run-time memory should give better android experience.As all graphics,icons,textures,wallpaper etc will take less run-time memory.
  • For the customers who want to deploy their own applications or services which takes more run time memory; kindly consider following point. This can help to choose suitable run-time memory.
    • Considering 'A1' as Customer’s application which requires more than 100MB (and less then 150 MB) of run-time memory.If A1 & other android applications of android is not running simultaneously ( specifically bluetooth/gallery/luncher) then 256 MB of run time memory is enough for android execution with A1

Disclaimer[edit]

  • All memory figures listed in this wiki are based on experiments with TI's am37xevm & TI's gingerbread devkit release.These may differ for other targets & android releases.
  • Experiments are validated with sanity test only. It may give unexpected results with some use cases.

References[edit]

http://processors.wiki.ti.com/index.php/Android_Memory_Analysis
http://software-dl.ti.com/dsps/dsps_public_sw/sdo_tii/TI_Android_DevKit/TI_Android_GingerBread_2_3_DevKit_1_0/index_FDS.html
http://processors.wiki.ti.com/index.php/Android_gingerbread_memory_analysis_for_non-phone_device

Support[edit]

E2e.jpg {{
  1. switchcategory:MultiCore=
  • For technical support on MultiCore devices, please post your questions in the C6000 MultiCore Forum
  • For questions related to the BIOS MultiCore SDK (MCSDK), please use the BIOS Forum

Please post only comments related to the article Android gingerbread usecase 128MB boot here.

Keystone=
  • For technical support on MultiCore devices, please post your questions in the C6000 MultiCore Forum
  • For questions related to the BIOS MultiCore SDK (MCSDK), please use the BIOS Forum

Please post only comments related to the article Android gingerbread usecase 128MB boot here.

C2000=For technical support on the C2000 please post your questions on The C2000 Forum. Please post only comments about the article Android gingerbread usecase 128MB boot here. DaVinci=For technical support on DaVincoplease post your questions on The DaVinci Forum. Please post only comments about the article Android gingerbread usecase 128MB boot here. MSP430=For technical support on MSP430 please post your questions on The MSP430 Forum. Please post only comments about the article Android gingerbread usecase 128MB boot here. OMAP35x=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article Android gingerbread usecase 128MB boot here. OMAPL1=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article Android gingerbread usecase 128MB boot here. MAVRK=For technical support on MAVRK please post your questions on The MAVRK Toolbox Forum. Please post only comments about the article Android gingerbread usecase 128MB boot here. For technical support please post your questions at http://e2e.ti.com. Please post only comments about the article Android gingerbread usecase 128MB boot here.

}}

Hyperlink blue.png Links

Amplifiers & Linear
Audio
Broadband RF/IF & Digital Radio
Clocks & Timers
Data Converters

DLP & MEMS
High-Reliability
Interface
Logic
Power Management

Processors

Switches & Multiplexers
Temperature Sensors & Control ICs
Wireless Connectivity