Modem for OMAP

From OMAPpedia

Jump to: navigation, search

Contents

[edit] Modems for OMAP

[edit] Goal

The goal of this project is to enable Modem connectivity to OMAP platforms (Zoom2, Zoom3 and Blaze).

Several modem vendor are supported with main focus on Android HLOS.

[edit] OMAP3

The modem supported today with open source code are:

Several others modem are supported in close source.

[edit] X-GOLD family on Android

With Zoom2/3, the XMM6080/6180 are connected via OMAP3430/3630 McSPI2(for command/data exchange) and TWL5030 audio codec PCM port for voice. The PCM/McSPI2 ports are visible via the 200 pins extension connector of the Zoom2/3.

[edit] Software Overview

Below an high level view of the software added in Android to support Xgold family:

File:XMM-IPC.jpg

  • XGOLD RIL lib

XGOLD Radio Interface Layer static library is linked to the Android RIL daemon. This library contains the Xgold specific Radio Layer interface that communicate to the Modem using AT command to do normal mode operations like starting voice call, connecting in 3G data...


  • XGOLD Audio lib

XGOLD Audio lib is linked to ALSA Audio Hardware abstraction layer (c.f. http://www.kandroid.org/android_pdk/audio_sub_system.html for more details) used by audio flinger. The library communicates to the modem via AT command to enable/disable audio path and to change acoustics depending of the audio modes used : headset, handset, bluetooth SCO...


  • Mux

Mux layer used today is an user space daemon used to mux command/data channel exchange between the Modem and the OMAP. This mux is based on the 3GPP standard mux : http://www.3gpp.org/FTP/Specs/html-info/27010.htm

  • XGOLD SPI driver

[TBD]


N.B. on the git project above there are 3 heads : xmm-3630 for Zoom3 Eclair code, xmm-e for Zoom2 Eclair code and xmm for Donut Zoom2 code.

[edit] Features Supported

[edit] Obtain the source code

The code can be downloaded on http://dev.omapzoom.org/.

Initialize the project to use the latest manifest for Android Donut (today based on RLS25.14):

$ cd $MYDROID
$ repo init -u git://dev.omapzoom.org/pub/scm/modem-int/manifest.git -b xmm
$ repo sync

Initialize the project to use the latest manifest for Android Éclair OMAP3430(today based on RLS25E.15):

$ cd $MYDROID
$ repo init -u git://dev.omapzoom.org/pub/scm/modem-int/manifest.git -b xmm-e
$ repo sync

Initialize the project to use the latest manifest for Android Éclair OMAP3630(today based on RLS25INC2.2):

$ cd $MYDROID
$ repo init -u git://dev.omapzoom.org/pub/scm/modem-int/manifest.git -b xmm-3630
$ repo sync


[edit] Building Android

The compilation is the same as the one described here : http://omappedia.org/wiki/Android_Getting_Started#Building_Android

Note: some Infineon modem are only data pump so to avoid any crash with audio voice call add ifxaudio=1 if the modem support audio.

[edit] Next step

Voice Memo


[edit] OMAP4

[TBD]

Personal tools