Android Porting, Minimization And Hardening

The customer provides virtual prototyping technology for embedded systems. Their mission is to reduce the time to market for system on chip (SoC) designs by providing a unified virtual prototype which meets the system level design needs of the architect, firmware developer and software engineer.


A Linux software stack (a kernel, BSP and root file system) suitable for running applications on the platform. They were looking to develop the environment to support a recent Android-capable Linux release as well as provide a full boot of Android on which the customers can run their benchmarks. This would help Client’s customers to benchmark performance of Android well before developing Android-based handsets and tablets on this platform.


The main pain point was to create the system which meets universal level design needs of the system architecture and development. In addition, to that also need to take care it should available where user can rapidly assemble models and converts individual ideal into innovation with all type of embedded system witch variety of resource availability.

  • Accurate Performance analysis of SoC through virtual modeling technology
  • 100% Cycle accurate models for critical performance elements including processors, fabric and memory controllers
  • Support for advanced processors such as the ARM® Cortex™-A15, Cortex-A9, Cortex-A7 and the ARM big. LITTLE subsystem
  • Fast Model representations to enable application software development at millions of instructions per second
  • Bare-metal software package to initialize components and enable easy customization and benchmarking (Android Minimization) as well as removal of Google Services (Hardening)
  • Linux and/or Android OS packages including source code
  • Performance analysis on Linux and Android with various benchmarking tools
  • Understanding of Virtual prototype modeling studio
  • Prepare ARM Cortex A-15 based system in modeling studio and boot Android Jelly bean 4.2 on it
  • Port Client’s existing 2.6.28 Linux kernel and BSP to a Linux version (3.3.0) that supports Android Jelly Bean 4.2.x
  • Device tree support (DTS) for Linux kernel and Client platform
  • PL111 LCD device driver integration and make it functional with Linux frame-buffer
  • Emulate input devices via serial keyboard and route to Linux kernel event subsystem for Android porting
  • Enable software OpenGL

Build and run benchmarking tools on Android

  • LINPACK Java
  • SunSpider 0.9.1
  • BrowserMark
  • Mozilla Kraken
  • AnTuTu
  • Functionality Testing
  • Performance Test
  • File System Minimization & removal of Hardening
  • Packaging and documentation