CM-T3730: Android
Contents
Introduction
The Android Demo filesystem image for CM-T3730 is based on Rowboat Android 4.1.2 Jelly Bean support for TI's AM37x platform. The CompuLab Android Demo package for CM-T3730 includes ready to run Demo Android filesystem image and Linux kernel based on 2.6.37 version.
The Android Demo image for CM-T3730 includes following software components:
- Android Jelly Bean 4.1.2 release from Google
- Android Linux Kernel v2.6.37
- SGX OpenGL ES Driver & Libraries DDK v1.10
- Built-in Applications and Demos
- Browser, Calculator, Clock, Contacts, Music, Search, File Manager, etc.
- Peripherals drivers
- MMC/SD, UART, Ethernet, Matrix Keypad, LCD, Touchscreen, etc.
The Getting started with Android on CM-T3730 page provides a brief introduction on how to install and boot the Android Demo image. This article describes package structure and peripheral device options specific to the CM-T3730.
Package contents
version.txt
The contents of the version.txt identifies the package version.
images
- uImage-cm-t3730.bin - ready to run Linux kernel image binary for CM-T3730
- Android-image-cm-t3730.tar.bz2 - Android root file system archive
development
The development directory contains a collection of patches with support for CM-T3730. The directory structure preserves the Rowboat Android Source tree structure. It contains patches for several Android sub-projects including Linux kernel.
- build - contains a collection of patches that determine build specification for CM-T3730
- device/compulab/cm_t3730 - contains a collection of patches that introduce CM-T3730 support
- hardware - contains hardware specific patches
- devmem2 - provides devmem2 utility
- ti - TI platform specific patches
- omap3 - patches for CM-T3730 audio
- sgx - patches for Graphics SDK
- kernel - contains a collection of patches for Linux kernel with support for CM-T3730 peripherals
- system/core - patches that provide additional system functionality
kernel
- uImage-2.6.37-cm-t3730-1.bin - ready to run Linux kernel 2.6.37-cm-t3730-1 for CM-T3730 can be used with either Android or Linux root filesystem
- linux-2.6.37-cm-t3730-1.config - Linux kernel 2.6.37-cm-t3730-1 configuration file
- linux-2.6.37-cm-t3730-1.patch - patch vs. rowboat-jb-am37x-4.1.2 tag with support for CM-T3730 peripherals
- patches - ordered collection of patches, that form the single patch above (linux-2.6.37-cm-t3730-1.patch)
utilities
The utilities directory contains miscellaneous utilities useful for development
- eeprom-util - CompuLab EEPROM utility for reading information found inside the EEPROM on CompuLab boards
Keypad
The matrix keypad is supplied with the CM-T3730 Evaluation Kit. Connect the keypad to the SB-T35 base-board (connector P10) via 20-pin flat cable supplied with the evaluation kit.
Kernel Keypad Configuration
The default Linux Kernel keypad configuration is defined in the CM-T3530/CM-T3730 board file kernel/arch/arm/mach-omap2/board-cm-t35.c as follows:
static uint32_t cm_t35_keymap[] = { KEY(0, 0, KEY_A), KEY(0, 1, KEY_B), KEY(0, 2, KEY_LEFT), KEY(1, 0, KEY_UP), KEY(1, 1, KEY_ENTER), KEY(1, 2, KEY_DOWN), KEY(2, 0, KEY_RIGHT), KEY(2, 1, KEY_C), KEY(2, 2, KEY_D), };
The keypad is supported by the TWL4030 Keypad driver kernel/drivers/input/keyboard/twl4030_keypad.c.
Android Keypad Configuration
The default Android keypad configuration is determined by the Android Key layout file /system/usr/keylayout/TWL4030_Keypad.kl. This file is responsible for mapping Linux key and axis codes to Android key and axis codes and specifying associated policy flags. The TWL4030_Keypad.kl for CM-T3730 looks as follows:
# CM-T3730 TWL4030 KEYPAD keylayout key 30 BACK WAKE_DROPPED key 48 HOME WAKE key 46 MENU WAKE_DROPPED key 32 SEARCH WAKE key 28 POWER WAKE