Difference between revisions of "CM-T3730: Android"
(→See also) |
(→Keypad) |
||
Line 1: | Line 1: | ||
== Introduction == | == Introduction == | ||
− | The | + | The Android Demo filesystem image for CM-T3730 is based on [http://code.google.com/p/rowboat/ Rowboat] [http://code.google.com/p/rowboat/wiki/JellybeanOnBeagleboard_WithSGX Android 4.1.2 Jelly Bean] support for TI's AM37x platform. |
+ | The [http://compulab.co.il/products/computer-on-modules/cm-t3730/#devres CompuLab Android Demo package for CM-T3730] includes ready to run Demo Android filesystem image and [[CM-T3730: Android: Kernel|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 [[CM-T3730: Android: Getting started|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 {{filename|version.txt}} identifies the package version. | |
− | + | ||
− | + | == images == | |
+ | * {{filename|uImage-cm-t3730.bin}} - ready to run Linux kernel image binary for CM-T3730 | ||
+ | * {{filename|Android-image-cm-t3730.tar.bz2}} - Android root file system archive | ||
+ | |||
+ | == development == | ||
+ | The {{filename|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. | ||
+ | * {{filename|build}} - contains a collection of patches that determine build specification for CM-T3730 | ||
+ | * {{filename|device/compulab/cm_t3730}} - contains a collection of patches that introduce CM-T3730 support | ||
+ | * {{filename|hardware}} - contains hardware specific patches | ||
+ | ** {{filename|devmem2}} - provides {{filename|devmem2}} utility | ||
+ | ** {{filename|ti}} - TI platform specific patches | ||
+ | *** {{filename|omap3}} - patches for CM-T3730 audio | ||
+ | *** {{filename|sgx}} - patches for Graphics SDK | ||
+ | * {{filename|kernel}} - contains a collection of patches for Linux kernel with support for CM-T3730 peripherals | ||
+ | * {{filename|system/core}} - patches that provide additional system functionality | ||
+ | |||
+ | == kernel == | ||
+ | * {{filename|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 | ||
+ | * {{filename|linux-2.6.37-cm-t3730-1.config}} - Linux kernel 2.6.37-cm-t3730-1 configuration file | ||
+ | * {{filename|linux-2.6.37-cm-t3730-1.patch}} - patch vs. [http://gitorious.org/rowboat/kernel/commit/c83d5f31dd92832fd83db48c073d82546c23eeab rowboat-jb-am37x-4.1.2] tag with support for CM-T3730 peripherals | ||
+ | * {{filename|patches}} - ordered collection of patches, that form the single patch above ({{filename|linux-2.6.37-cm-t3730-1.patch}}) | ||
+ | |||
+ | == utilities == | ||
+ | The {{filename|utilities}} directory contains miscellaneous utilities useful for development | ||
+ | * {{filename|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 {{filename|kernel/arch/arm/mach-omap2/board-cm-t35.c}} as follows: | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
<pre> | <pre> | ||
− | + | 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), | ||
+ | }; | ||
</pre> | </pre> | ||
− | + | The keypad is supported by the {{parameter|TWL4030 Keypad}} driver {{filename|kernel/drivers/input/keyboard/twl4030_keypad.c}}. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | == | + | == Android Keypad Configuration == |
− | + | The default Android keypad configuration is determined by the Android Key layout file {{filename|/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 {{filename|TWL4030_Keypad.kl}} for CM-T3730 looks as follows: | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
<pre> | <pre> | ||
− | CM- | + | # 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 | ||
</pre> | </pre> | ||
= See also = | = See also = | ||
− | * [[CM- | + | * [[CM-T3730: Android: Getting started]] |
− | * [[CM- | + | * [[CM-T3730: Android: Building images]] |
* [http://source.android.com Android Open Source Project] | * [http://source.android.com Android Open Source Project] | ||
* [http://code.google.com/p/rowboat Android for Texas Instruments devices] | * [http://code.google.com/p/rowboat Android for Texas Instruments devices] | ||
− | + | * [http://code.google.com/p/rowboat/wiki/JellybeanOnBeagleboard_WithSGX Android 4.1.2 Jelly Bean with SGX for AM37x platform] | |
[[Category:Android]] | [[Category:Android]] | ||
[[Category:CM-T3730]] | [[Category:CM-T3730]] |
Revision as of 09:05, 14 March 2013
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