2009/06/29

Android on Beagle Board Rev.C2

androbeagle.jpg

0. Preface

Last time, we mentioned
about the setting environment using Beagleboard Rev.B5 as a mainboard.


As well, we will write
how to set the environment of Rev. C2 because we have confirmed.


Members as follows:


  Brilliant Service Co., Ltd    http://www.brilliantservice.co.jp/

         Technical Div.

Ryota Kajitani, Yuma Yagi, Yutaka Kawahara, Yosuke Fujii

         IT Company X

                   Mr.S

Note.

**Beagleboard Rev.C2 is used as a mainboard.

       ** Using environment ubuntu8.10




1. Pre-condition

1.1 Setting of Android development environment.


-Linux environment

     Please refer to the following links:

  http://source.android.com/download

  http://d.hatena.ne.jp/bs-android/20090324/1237864332 (Only Japanese)


    Note.

    uboot-mkimage should be installed.

    **ubuntu8.10 can be installed via synaptic manager.

  **For ubuntu8.04, via apt-get install uboot-mkimage.



1.2 Setting of using tools


-Installing GNU C & C++ Compilers

 

Using release is arm-2007q3-51. It can be installed via following link:

         http://www.codesourcery.com/sgpp/lite/arm/portal/subscription3057

   Note.

For installing, TAR uncompress, using installer and other method are available for the users.

       When uncompress TAR, set the path where it will be installed yourself.

          (Write $PATH in ~/.bashrc file)




2. Get Android sources for Beagleboard

  2.1  Initializing repo

First, prepare for downloading basic Android source.

     Enter command in terminal window.


$ mkdir mydroid
$ cd mydoroid
~mydroid$ repo init -u git://android.git.kernel.org/platform/manifest.git

For above step, set for downloading the latest Android source into
mydroid.



2.2 Prepare for getting source

   When Android works on Beagleboard, you need to delete unnecessary

subproject from


Android repository and to download the project which is not included
in standard project.


Please use the setting file for Beagleboard Rev. C2 that we made.


A big difference from the setting file used for Rev. B5 is from
where omap kernel is obtained.


First, make local_manifest.xml in local_manifest.xml to get the sources except omap kernel.

    (*Please change the file name from local_manifest_rev_c2.xml to local_manifest.xml)

local_manifest.xml should be as per below


<?xml version="1.0" encoding="UTF-8"?>
<manifest>
  <remove-project name="kernel/common"/>
  <project path="external/alsa-lib" name="platform/external/alsa-lib"/>
  <project path="external/alsa-utils" name="platform/external/alsa-utils"/>
  <project path="hardware/alsa_sound" name="platform/hardware/alsa_sound"/>
</manifest>




2.3 Get source

  When 2.1 and 2.2 are done, preparation for downloading is finished.

Enter the command in terminal window.


~mydroid$ repo sync

When above command is executed, it will start to get source.

    If it may fail, try same command again.


2.4 Get OMAP kernel source

   omap kernel using for Beagleboard Rev. C2

will be obtained by using "git clone" command


$ cd mydroid
~mydroid$ git clone git://labs.embinux.org/repo/kernel.git


  Then, source will be switched to Android-2.6.29 branch.

~mydroid$ cd kernel
~mydroid/kernel$ git checkout -b kernel_android_2.6.29 origin/android-2.6.29


  Confirm if the branch is switched.


~mydroid/kernel$ git branch
   android-2.6.27
 * kernel_android_2.6.29


If kernel_android_2.6.29 has "*" , it is OK.

    Note.

git branch is a command to display the list of branch.

         If a branch has "*", it means that currently working.




3. Prepare for patch

3.1 Construction of Linux kernel environment

       As well as Rev. B5, on Beagleboard Rev. C2, we have succeeded to sound by using ALSA.


3.2.1 Add Build definition for Sound device.

      Please refer to the following URL, Ch. 3.2.1.

http://bs-android.seesaa.net/article/121303869.html



3.2.2 Making of kernel configuration

       We have made a kernel configuration file

which was added Android, ADB, ALSA and FrameBuffer functions enabled for Beagleboard Rev. C2.

       omap3_beagle_android_defconfig

should be saved in mydroid/kernel/arch/arm/configs.

(*Please note that the file name should be change from omap3_beagle_android_defconfig_rev_c2 to omap3_beagle_android_defconfig)



3.3 Construction of Android environment

   3.3.1 ALSA sound driver

Please refer to the following URL, Ch. 3.3.1.

http://bs-android.seesaa.net/article/121303869.html



3.3.2 Battery patch

Please refer to the following URL, Ch. 3.3.2.

http://bs-android.seesaa.net/article/121303869.html


 3.3.3 USB EHCI file patch

To avoid build error, apply a patch to usb-ehci.c.

   diff file  usb-ehci.patch

Get a patch file from above link, and enter a command in terminal window


~mydroid$ cd kernel/arch/arm/mach-omap2
~mydroid/kernel/arch/arm/mach-omap2$patch < usb-ehci.patch


Source file after patch

      mydroid/kernel/arch/arm/mach-omap2/ usb-ehci.c



4. Build

   Please refer to the following URL, Ch. 4.

http://bs-android.seesaa.net/article/121303869.html




5. Making SD card for boot

Please refer to the following URL, Ch. 5.

http://bs-android.seesaa.net/article/121303869.html




6. ADB(debugger)

Please refer to the following URL, Ch. 6.

http://bs-android.seesaa.net/article/121303869.html





That's all.


Brilliant Service Co., Ltd

       Technical Div. Yosuke Fujii.

                  

Technical translator. Shinjiro Ninomiya

[Recent entry of BeagleBoard]
posted by bs-android at 16:19 | Comment(0) | TrackBack(0) | BeagleBoard | このブログの読者になる | 更新情報をチェックする
Comments for this entry
Leave your comment
Name: [Must]

Email:

URL:

Comment: [Must]

Confirmation Code: [Must]


Type in alphabets what you see in this image.
Trackback URL
http://blog.seesaa.jp/tb/122471965
※ブログオーナーが承認したトラックバックのみ表示されます。
※言及リンクのないトラックバックは受信されません。

Trackbacks to this entry