bc10/prebuilt-20110127
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
]
開始行:
[[labs.beatcraft.com]]~
[[bc10]]~
~
#contents
~
* bc10/prebuilt-20110127 概要 [#t3cd6613]
COLOR(red){bc10/prebuilt-20110127は、rowboat コミュニティ...
~
TI-Android-FroYo-Devkit-V2のfroyoはmaster branchにあった...
そのためAOSP Android 2.2_r1.1とは複数箇所で差異があります...
~
[[bc10/prebuilt-20110107]]のAndroidベースバージョンは~
AOSP Android 2.2_r1.1です。~
この[[bc10/prebuilt-20110127]]の項目は~
''TI-Android-FroYo-Devkit-V2のfroyo''という別バージョンと...
~
[[bc10/TI-Android-FroYo-Devkit-V2]]に追加、修正を加えた~
TI-Android-FroYo-Devkit-V2 prebuiltイメージ作成手順~
について記載しています。~
~
大きな項目としては以下のものがあります。~
~
- [[prebuilt イメージの作成手順>http://labs.beatcraft.com...
-- イメージの作成手順は prebuilt-20110127 作成のための~
開発環境作成、ビルド手順について記載しています。~
~
- [[prebuilt イメージの配置手順>http://labs.beatcraft.com...
-- イメージの配置手順はprebuilt-20110127のイメージ~
[[bc10-boot-sd-image--release20110127.tar.gz>http://sourc...
ダウンロード、SDへの配置について記載しています。~
主な変更は以下のとおりです。~
---USBカメラドライバー対応
カメラのプレビュー表示時に、
ハードウェアオーバレイを使用するように変更しました。
仕様・制限は以下のとおりです。
- 動作・解像度
V4L2カメラで動作します。
カメラ解像度の設定は640*480固定です。
- 画面拡大・縮小
表示領域に合わせて、画面の拡大・縮小が可能です。
拡大・縮小はハードウェアでおこないます。
プリケーション作成時は、Cameraに登録する
SurfaceViewのサイズとPreviewのサイズを同じものにしてくだ...
- 動作確認アプリケーション
ビルド済みAndroidに搭載されている
Cameraアプリケションではカメラモードの撮影のみで
動作確認をしています。
カメラモードのオプションとビデオモードは
それぞれハードウェア、ソフトウェアの対応をしていません。
- 動作確認デバイス
この変更点の動作確認はLogicool Orbit AFで行っていますが、
Linux UVCに対応したUSBカメラであればどれでも動作可能です。
本体内蔵カメラは現在調整中です。
- 未解決事項
USBカメラ接続時にUSBデバイスがdisconnectされ
USBデバイスが動作しないことがあります。
その際は電源を切り再度電源を入れなおしてください。
この現象はAC給電のUSBハブ経由でも起こることがあります。
詳細は現在調査中です。
~
--- USB WiFi(RT3070USB)ドライバー対応
- 動作確認
動作確認はAndroid起動の際にシリアルで
insmod、netcfgコマンドで動作確認をしています。
注:Android GUI上からのWifi ON/OFF機能は実装していません。
- 動作確認デバイス
prebuilt-20110127にはUSB WiFi (RT3070USB)のドライバーを
含めています、動作確認デバイスは以下のとおりです。
メーカー 型番 対応 Device ID
Buffalo WLI-UC-GN 0411:015d
~
COLOR(red){ 一部デバイスに対応中の箇所があります。予告無...
** bc10/TI-Android-FroYo-Devkit-V2 [#pd6dc9a3]
~
2010年10月27日にテキサスインスツルメンツ社より ~
TI-Android-FroYo-Devkit-V2がリリースされました。~
TI-Android-FroYo-Devkit-V2は主にTI製品向けのfroyoの安定版...
~
*** TI-Android-FroYo-Devkit-V2のfroyo について [#c49ebe8b]
前述のとおりTI-Android-FroYo-Devkit-V2 は、~
主にTI製品向けのfroyoの安定版になります。 ~
またlunchコマンド実行時に以下のような表示がされます。~
BUILD_ID=MASTER
TI-Android-FroYo-Devkit-V2のfroyoはmaster branch~
にあったころの安定版に相当します。~
そのためAOSP Android 2.2_r1.1 とは複数箇所で差異がありま...
(略)
/TI-Android-FroYo-DevKit-V2$ lunch bc10-eng
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=2.2
TARGET_PRODUCT=bc10
TARGET_BUILD_VARIANT=eng
TARGET_SIMULATOR=false
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
HOST_ARCH=x86
HOST_OS=linux
HOST_BUILD_TYPE=release
BUILD_ID=MASTER
============================================
** 主な特徴 [#g21c8b3e]
TI-Android-FroYo-Devkit-V2は、OMAP35x EVM, AM35x EVM, ~
AM37x EVM, Beagleboard Rev CxやBeagleboard XM向けのSDKパ...
~
また、TI-Android-Froyo-Devkit-V2.xmlは各プロダクトの~
特定のバージョンを取得できるようにxml内に~
各プロダクトごとのリビジョンを含んでいます。~
以下、TI-Android-FroYo-Devkit-V2 の開発環境、bc10用へ変更...
prebuiltイメージ作成について記載します。~
~
(注):開発マシンのメモリが 1GB未満の場合repo sync実行時にp...
エラーが起こります。以下の手順は1GB以上のメモリで動作確認...
~
[[TI-Android-FroYo-DevKit-V2_ReleaseNotes>http://processo...
[[TI-Android-FroYo-DevKit-V2_UserGuide>http://processors....
* prebuilt イメージの作成手順 [#kceb09db]
* 開発環境 [#p209889b]
今回の開発環境の概略は以下のとおりです。~
-OS: Ubuntu 10.04(32bit版)~
-JAVA: java 1.5x ~
-Android Version: TI-Android-FroYo-Devkit-V2 froyo ~
** パッケージインストール [#de53ff68]
Ubuntuのリポジトリから必要なパッケージを取得してインスト...
$ sudo apt-get install git-core gnupg flex bison gperf l...
libwxgtk2.6-dev build-essential zip curl libncurses5-d...
** java5 [#ef8bd7c6]
TI-Android-FroYo-Devkit-V2 のビルドに必要なsun-java5-jdk...
リポジトリから外されていますので/etc/apt/sources.listに、~
一時的に古いリポジトリを追加します。~
$ sudo vi /etc/apt/sources.list
## respective vendors as a service to Ubuntu users.
deb http://archive.canonical.com/ubuntu lucid partner
deb-src http://archive.canonical.com/ubuntu lucid part...
deb http://archive.ubuntu.com/ubuntu lucid-security ma...
deb-src http://archive.ubuntu.com/ubuntu lucid-securit...
deb http://archive.ubuntu.com/ubuntu lucid-security un...
deb http://archive.ubuntu.com/ubuntu lucid-security mu...
+ deb http://us.archive.ubuntu.com/ubuntu/ jaunty multiv...
+ deb http://us.archive.ubuntu.com/ubuntu/ jaunty-update...
追加完了後、apt-get updateコマンドでリポジトリ情報の取得...
sun-java5-jdkをインストールします。~
$ sudo apt-get update
$ sudo apt-get install sun-java5-jdk
インストール完了後、誤って他の古いパッケージをインストー...
上記で追加したリポジトリを削除しておきます。~
$ sudo vi /etc/apt/sources.list
## respective vendors as a service to Ubuntu users.
deb http://archive.canonical.com/ubuntu lucid partner
deb-src http://archive.canonical.com/ubuntu lucid part...
deb http://archive.ubuntu.com/ubuntu lucid-security ma...
deb-src http://archive.ubuntu.com/ubuntu lucid-securit...
deb http://archive.ubuntu.com/ubuntu lucid-security un...
deb http://archive.ubuntu.com/ubuntu lucid-security mu...
- deb http://us.archive.ubuntu.com/ubuntu/ jaunty multiv...
- deb http://us.archive.ubuntu.com/ubuntu/ jaunty-update...
もう一度apt-get updateで現状のリポジトリ情報の取得をして...
$ sudo apt-get update
* Android ソースファイル取得 [#nea0dd19]
** repo 設定 [#o0b0c850]
androidのソースコードを取得するためにrepoの設定を行います...
ホームディレクトリにbinというディレクトリを作成しrepoを取...
注:以後、/home/beatをホームディレクトリとして記載します。~
$ cd ~
$ mkdir bin
$ curl http://android.git.kernel.org/repo >~/bin/repo
$ chmod a+x ~/bin/repo
Ubuntuでは、一度ログアウトしてログインし直すと~/binへのPA...
ログアウトせずそのまま作業したい場合は、以下のようにして~...
環境変数のPATH に追加します。~
$ export PATH=~/bin:$PATH
** ファイルの取得 [#ka26666a]
TI-Android-Froyo-Devkit-V2の取得方法を記載します。~
Androidのソースファイルを取得するのためにTI-Android-FroYo...
~
[[TI_Android_DevKit 02_00_00 Product Download Page>http:/...
[[TI-Android-FroYo-DevKit-V2.xml>http://software-dl.ti.co...
~
(注):ファイル取得完了までに時間がかかることがあります。~
また、作業には1GB以上のメモリを必要とします。開発マシンの...
1GB未満の場合repo syncでprebuiltやsdk のfetch の際にエラ...
$ cd ~
$ mkdir TI-Android-FroYo-DevKit-V2
$ cd TI-Android-FroYo-DevKit-V2
$ wget http://software-dl.ti.com/dsps/dsps_public_sw/sdo...
$ repo init -u git://gitorious.org/rowboat/manifest.git ...
$ repo sync
** bc10 用 DevKit V2 patch [#n52377d4]
添付ファイルにあるbc10用DevKit V2 patchのdevkitv2-patches...
取得しファイルを展開します。~
~
#ref(devkitv2-patches-for-bc10.tar.gz);~
$ cd ~
$ tar xvfz devkitv2-patches-for-bc10.tar.gz
$ cd devkitv2-patches-for-bc10
bc10-devkitV2-patch.sh 内のANDROID_DIR、SETUP_DIRと~
PATCH_DIRは以下のように設定しています。~
bc10-devkitV2-patch.sh の中の以下の環境変数を~
ファイルの PATH に合うよう修正してください。~
### Settings
#ANDROID_DIR=${HOME}/TI_Android_FroYo_DevKit-V2/Android_...
ANDROID_DIR=${HOME}/prebuilt-20110122-DevkitV2/TI-Androi...
SETUP_DIR=${HOME}/prebuilt-20110122-DevkitV2/devkitv2-pa...
PATCH_DIR=${SETUP_DIR}/patches
###
patch適用後、device/ti以下にbc10ディレクトリが作成されま...
$ cd ~
$ tar xvfz devkitv2-patches-for-bc10.tar.gz
$ cd ~/devkitv2-patches-for-bc10
$ ./bc10-devkitV2-patch.sh
$ ls TI-Android-FroYo-DevKit-V2/device/ti/
am3517evm bc10 beagleboard igepv2 omap3evm
** Android のビルド [#df16b7a8]
bc10用設定ファイルを読み込みビルドします。~
$ cd ~/TI-Android-FroYo-DevKit-V2
$ source build/envsetup.sh
$ lunch bc10-eng
$ make
** イメージの作成 [#lcb0a86c]
ビルドが終了したらビルドされたuserlandのバイナリを起動可...
userlandを整えるスクリプトmkbc10-image.shを使用します。~
mkbc10-image.sh内の ANDROID_DIR は以下のように設定してい...
ファイルのPATHに合うよう修正してください。
### Settings
#ANDROID_DIR=${HOME}/bc10
ANDROID_DIR=${HOME}/prebuilt-20110122-DevkitV2/TI-Androi...
###
$ cd ~/devkitv2-patches-for-bc10
$ ./mkbc10-image.sh
実行後、TI-Android-FroYo-DevKit-V2/out/target/product/bc1...
bc10-imageディレクトリが作成されます。~
このディレクトリ内にandroid userlandが配置されます。~
** 環境変数の設定 [#qce4f67a]
bootに必要なx-loader、u-boot、kernelはAndroidのソースコー...
配布されているtoolchainを使用してビルドを実行します。~
ビルド時に以下のtoolchainでcross compileが実行されるように~
環境変数の設定をします。~
~
PATHのディレクトリ位置は上記の設定に合わせています。~
$ export PATH=/home/beat/TI-Android-FroYo-DevKit-V2/preb...
$ export ARCH=arm
$ export CROSS_COMPILE=arm-eabi-
** kernel のビルド [#w755860b]
$ cd ~
$ git clone git://gitorious.org/~bc-dev/rowboat/bc10-row...
$ cd bc10-rowboat-kernel/
bc10向けリリースブランチに切り替えます。~
$ git checkout -t -b bc10-2.6.32 origin/bc10-2.6.32
$ make omap3_bc10_defconfig
$ make uImage
$ make modules
ビルド完了後以下のディレクトリにuImageが作成されます。~
$ ls arch/arm/boot/
Image Makefile bootp compressed install.sh uImage ...
** USB Wifi (RT3070USB) ドライバー ビルド [#qef844a3]
ここでは、RT3070USBを使用している無線LAN USBデバイス、~
Baffalo WLI-UG-G301N について記載します。~
~
ドライバーは[[RALINK Web>http://www.ralinktech.com/suppor...
Linux ドライバー2011_0107_RT3070_RT3370_Linux_STA_v2.5.0....
ファームウェアRT28XX/RT30XX USB series (RT2870/RT2770/RT3...
~
ドライバー及びファームウェアの入手はメールアドレスと氏名...
またドライバーのバージョンアップが行われた際過去のドライ...
下記にドライバーを添付します。~
~
toolchainは上記kernelビルド時に設定したAndroidソースファ...
prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin を使用し...
#ref(2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO.tar.b...
#ref(RT3370USB.diff);~
~
bc10用に下記のように2011_0107_RT3070_RT3370_Linux_STA_v2....
もしくは添付のRT3370USB.diffからのpatchコマンドを実行して...
patchを当てることで bc10 向けにクロスコンパイルできるよう...
~
変更内容は、~
- bc10 向けのコンパイル設定の追加(platform、toolchain の...
- ファームウェアのリージョン設定を日本にし、設定項目例を...
- USB Wifi のベンダーID、製品IDの追加 ~
です。~
~
Makefile内のLINUX_SRCおよびCROSS_COMPILE部分は以下のよう...
ファイルの PATH に合うよう修正してください ~
+LINUX_SRC = /home/beat/prebuilt-20110122-DevkitV2/bc10-...
+CROSS_COMPILE = /home/beat/prebuilt-20110122-DevkitV2/T...
$ cd ~
$ tar xvfz 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DP...
$ patch -p0 < RT3370USB.diff
$ cd 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO/
修正が完了したら、makeを実行します。make 完了後 os/linux ...
$ make
$ ls -l os/linux/rt3070sta.ko
-rw-r--r-- 1 beat beat 10871281 2011-01-20 14:50 os/linu...
diff -urpN 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DP...
--- 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO-orig/...
+++ 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO/Makef...
@@ -23,7 +23,8 @@ endif
RTMP_SRC_DIR = $(RT28xx_DIR)/RT$(CHIPSET)
#PLATFORM: Target platform
-PLATFORM = PC
+#PLATFORM = PC
+PLATFORM = BC10
#PLATFORM = 5VT
#PLATFORM = IKANOS_V160
#PLATFORM = IKANOS_V180
@@ -176,6 +177,11 @@ LINUX_SRC_MODULE = /lib/modules/$(s...
CROSS_COMPILE =
endif
+ifeq ($(PLATFORM),BC10)
+LINUX_SRC = /home/beat/prebuilt-20110122-DevkitV2/bc10-...
+CROSS_COMPILE = /home/beat/prebuilt-20110122-DevkitV2/T...
+endif
+
ifeq ($(PLATFORM),IXP)
LINUX_SRC = /project/stable/Gmtek/snapgear-uclibc/linux...
CROSS_COMPILE = arm-linux-
@@ -384,6 +390,10 @@ ifeq ($(OSABL),YES)
cp -f $(RT28xx_DIR)/os/linux/rtnet$(CHIPSET)apst...
/tftpboot
endif
else
+ifeq ($(PLATFORM),BC10)
+ $(MAKE) ARCH=arm CROSS_COMPILE=$(CROSS_COMPILE) ...
+else
+
cp -f $(RT28xx_DIR)/os/linux/rt$(CHIPSET)sta.ko ...
ifeq ($(OSABL),YES)
cp -f $(RT28xx_DIR)/os/linux/rtutil$(CHIPSET)sta....
@@ -392,7 +402,7 @@ endif
endif
endif
endif
-
+endif
release:
$(MAKE) -C $(RT28xx_DIR)/striptool -f Makefile.re...
@@ -423,6 +433,9 @@ ifeq ($(TARGET), LINUX)
$(MAKE) -C os/linux clean
rm -rf os/linux/Makefile
endif
+ifneq ($(TARGET), THREADX)
+ $(MAKE) -C tools clean
+endif
ifeq ($(TARGET), UCOS)
$(MAKE) -C os/ucos clean MODE=$(RT28xx_MODE)
endif
diff -urpN 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DP...
--- 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO-orig/...
+++ 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO/RT287...
@@ -1,8 +1,10 @@
#The word of "Default" must not be removed
Default
CountryRegion=5
-CountryRegionABand=7
-CountryCode=
+#CountryRegionABand=7
+CountryRegionABand=1
+#CountryCode=
+CountryCode=JP
ChannelGeography=1
SSID=11n-AP
NetworkType=Infra
diff -urpN 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DP...
--- 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO-orig/...
+++ 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO/commo...
@@ -104,6 +104,13 @@ USB_DEVICE_ID rtusb_dev_id[] = {
{USB_DEVICE(0x13D3,0x3321)}, /* Azurewave */
{USB_DEVICE(0x07FA,0x7712)}, /* Edimax */
{USB_DEVICE(0x0789,0x0166)}, /* Edimax */
+ {USB_DEVICE(0x2019,0xED14)}, /* PLANEX*/
+ {USB_DEVICE(0x2019,0xAB29)}, /* PLANEX*/
+ {USB_DEVICE(0x0789,0x0164)}, /* Logitec*/
+ {USB_DEVICE(0x0789,0x0168)}, /* Logitec*/
+ {USB_DEVICE(0x0411,0x01a2)}, /* Buffalo*/
+ {USB_DEVICE(0x0411,0x016f)}, /* Buffalo*/
+ {USB_DEVICE(0x0411,0x015d)}, /* Buffalo*/
#endif /* RT3070 */
{ }/* Terminating entry */
};
diff -urpN 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DP...
--- 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO-orig/...
+++ 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO/inclu...
@@ -1,28 +1,5 @@
-/*
- ******************************************************...
- * Ralink Tech Inc.
- * 5F., No.36, Taiyuan St., Jhubei City,
- * Hsinchu County 302,
- * Taiwan, R.O.C.
- *
- * (c) Copyright 2002-2010, Ralink Technology, Inc.
- *
- * This program is free software; you can redistribute ...
- * it under the terms of the GNU General Public License...
- * the Free Software Foundation; either version 2 of th...
- * (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will...
- * but WITHOUT ANY WARRANTY; without even the implied w...
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE....
- * GNU General Public License for more details. ...
- * *
- * You should have received a copy of the GNU General P...
- * along with this program; if not, write to the ...
- * Free Software Foundation, Inc., *
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307,...
- * *
- ******************************************************...
+/* AUTO GEN PLEASE DO NOT MODIFY IT */
+/* AUTO GEN PLEASE DO NOT MODIFY IT */
UCHAR FirmwareImage [] = {
diff -urpN 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DP...
--- 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO-orig/...
+++ 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO/os/li...
@@ -11,7 +11,8 @@ HAS_QA_SUPPORT=n
HAS_XLINK=n
# Support Wpa_Supplicant
-HAS_WPA_SUPPLICANT=n
+#HAS_WPA_SUPPLICANT=n
+HAS_WPA_SUPPLICANT=y
# Support Native WpaSupplicant for Network Maganger
HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=n
@@ -415,6 +416,10 @@ ifeq ($(PLATFORM),PC)
endif
endif
+ifeq ($(PLATFORM),BC10)
+EXTRA_CFLAGS := $(WFLAGS) -I$(RT28xx_DIR)/include -DMOD...
+endif
+
#If the kernel version of RMI is newer than 2.6.27, ple...
ifeq ($(PLATFORM),RMI)
EXTRA_CFLAGS := -D__KERNEL__ -DMODULE=1 -I$(LINUX_SRC)/...
-I$(RT28xx_DIR)/include -Wall -Wstrict-...
-DCONFIG_IFX_ALG_QOS -DCONFIG_WAN_VLAN_...
-mno-abicalls -mlong-calls -pipe -finli...
-msoft-float -march=xlr -ffreestanding ...
diff -urpN 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DP...
--- 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO-orig/...
+++ 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO/os/li...
@@ -40,6 +40,7 @@ MODULE_DESCRIPTION("RT2870 Wireless L...
#ifdef CONFIG_STA_SUPPORT
#ifdef MODULE_VERSION
MODULE_VERSION(STA_DRIVER_VERSION);
+MODULE_LICENSE("GPL");
#endif
#endif /* CONFIG_STA_SUPPORT */
注: EXTRA_CFLAGS := -D__KERNEL__ -DMODULE=1 -I$(LINUX_...
** USB Wifi (RT3070USB) ドライバー 配置について [#adbdb5c3]
- rt3070sta.ko~
上記で作成したドライバーファイルです。
~
rt3070sta.koをandroid userlandの~
bc10/out/target/product/bc10/bc10-image/system/lib/以下に~
modulesというディレクトリを作成し配置します。~
~
- RT2870STA.dat~
Wifiの設定ファイルです。~
RT2870STA.datはSSID、認証形式などの設定を記載します。~
RT2870STA.datはandroid userland の~
bc10/out/target/product/bc10/bc10-image/system/etc/以下に~
Wireless/RT2870STAというディレクトリを作成し配置します。~
~
設定例:
SSID:XXX-BC、認証方式:AuthMode OPEN、暗号化方式:EncrypTy...
暗号キーの文字タイプ:Key1Type 1(acsii)、暗号キー:Key1Str ...
の接続例~
~
SSID=XXX-BC
(略)
AuthMode=OPEN
EncrypType=WEP
WPAPSK=
DefaultKeyID=1
Key1Type=1
Key1Str=xxx.testessid
Key2Type=0
接続設定の詳細については 2011_0107_RT3070_RT3370_Linux_ST...
をご覧ください。~
- rt2870.bin ~
ファームウェアファイルとライセンステキストがあります。~
rt2870.binとLICENSE.ralink-firmware.txtをandroid userland...
bc10/out/target/product/bc10/bc10-image/system/etc/以下に~
firmwareというディレクトリを作成し配置します。~
~
ファイルのオーナーと権限は mkbc10-image.sh にあわせて roo...
$ sudo mkdir ~/TI-Android-FroYo-DevKit-V2/out/target/pro...
$ sudo mkdir -p ~/TI-Android-FroYo-DevKit-V2/out/target/...
$ sudo cp -afr os/linux/rt3070sta.ko ~/TI-Android-FroYo-...
$ sudo cp -afr RT2870STA.dat ~/TI-Android-FroYo-DevKit-V...
$ cd ~
$ unzip RT2870_Firmware_V22.zip
$ cd RT2870_Firmware_V22/
$ sudo mkdir ~/TI-Android-FroYo-DevKit-V2/out/target/pro...
$ sudo cp -afr * ~/TI-Android-FroYo-DevKit-V2/out/target...
$ sudo chown -R root.root ~/TI-Android-FroYo-DevKit-V2/o...
$ sudo chmod -R 777 ~/TI-Android-FroYo-DevKit-V2/out/tar...
** SGX SDK のビルド [#g555a2b6]
[[bc10/froyo]]と同じ手順でTI Android SGX SDKを取得します。~
~
(注):取得完了までに時間がかかることがあります。~
[[bc10/froyo]]にてOMAP35x_Android_Graphics_SDK_3_01_00_03...
同じファイルなので転用しても問題ありません、Rules.makeの...
注意してください。再度ダウンロードの際は任意にバックアッ...
$ cd ~
$ git clone git://gitorious.org/rowboat/ti_android_sgx_s...
$ cd ti_android_sgx_sdk/
$ ./OMAP35x_Android_Graphics_SDK_setuplinux_3_01_00_03.bin
インストールディレクトリ位置を聞かれるので今回はデフォル...
の${HOME}/OMAP35x_Android_Graphics_SDK_3_01_00_03を指定し...
~
[[To download TI's Android SGX SDK>http://code.google.com...
~
*** Rules.make の変更 [#ke48d729]
Rules.make のHOME、GRAPHICS_INSTALL_DIR、ANDROID_ROOT、CS...
KERNEL_INSTALL_DIRをそれぞれのファイルPATHに合うよう修正...
以下のRules.makeは上記設定にあわせています。~
$ cd ~/OMAP35x_Android_Graphics_SDK_3_01_00_03
$ vi Rules.make
Rules.make
PLATFORM=LinuxOMAP3
################# FIELDS MODIFIABLE BY THE USER ########...
###################
#set home area HOME (relative location for all SDK opera...
#HOME=INVALIDVAL
HOME=/home/beat
#Current Directory where Graphics SDK is installed
GRAPHICS_INSTALL_DIR=$(HOME)/OMAP35x_Android_Graphics_SD...
#Android Specific
#Path of Android Root FS
#ANDROID_ROOT=$(HOME)/INVALIDVAL
ANDROID_ROOT=$(HOME)/TI-Android-FroYo-DevKit-V2/out/targ...
#set toolchain root path for arm-eabi
#CSTOOL_DIR=INVALIDVAL
CSTOOL_DIR=$(HOME)/TI-Android-FroYo-DevKit-V2/prebuilt/l...
CSTOOL_PREFIX=arm-eabi-
CSTOOL_PATH=$(CSTOOL_DIR)/bin
CSTOOL_LIBSTDC++_PATH=$(CSTOOL_DIR)/arm-none-linux-gnuea...
#set the kernel installation path
#KERNEL_INSTALL_DIR=$(HOME)/INVALIDVAL
KERNEL_INSTALL_DIR=$(HOME)/bc10-rowboat-kernel
TARGETFS_INSTALL_DIR=$(ANDROID_ROOT)
GFX_TARGETFS_KERMOD_PATH=$(TARGETFS_INSTALL_DIR)/lib/mod...
#Android
ANDROID_DISCIMAGE=$(TARGETFS_INSTALL_DIR)/
RULE.make 変更完了後 make、make install を実行します。~
$ make
$ make OMAPES=3.x install
** u-boot [#w583bb25]
bc10(omap3530)でLinuxを動作させる場合、電源の投入後一般...
1. BootROM code
2. X-Loader
3. U-Boot
4. Linux kernel(uImage)
u-bootはbc10起動時に実行される2段目のブートローダです。~
bc10のブートプロセスについての情報は[[bc10/booting]]を参...
$ cd ~
$ git clone git://gitorious.org/bc10/u-boot-bc10.git u-b...
$ cd u-boot-bc10
$ make mrproper
$ make omap3_bc10_config
$ make
ビルド後出来たu-boot.binはSDカードFATパーティションにMLO...
SDカードイメージ作成についてはページ下部にあります[[SDカ...
** x-loader [#r82ab56e]
x-loaderはbc10起動時に実行される第一段ブートローダです。~
$ cd ~
$ git clone git://gitorious.org/~bc-dev/x-load-omap3/x-l...
$ cd x-load-bc10
$ git checkout -t -b bc10 origin/bc10
$ make omap3530bc10_config
$ make
x-load.binはOMAP BootROMの仕様とフォーマットが合っていな...
SDカードに書きこんでもブートローダとして動作させることが...
この問題を解決するためsignGPというツールでx-load.binを加...
~
signGPの実行ファイルは以下の場所からダウンロードすること...
http://beagleboard.googlecode.com/files/signGP ~
ダウンロードしたsignGPを以下のように実行します。~
$ signGP x-load.bin
ビルド後出来たx-load.bin.iftはMLOという名前でSDカードのFA...
書き込むためのファイルです。~
~
SDカードイメージ作成についてはページ下部にあります[[SDカ...
** boot.scr [#g1d02e0d]
このファイルはシリアルコンソールでu-bootのコマンドプロン...
設定するのと同じ内容を作成し、起動時に毎回手動で設定する...
また、メモリマッピングを変えないよう設定します。~
boot.scrを配置することで bc10起動時にu-boot.bin内に設定し...
bc10の起動内容(setenvの内容)をboot.scrに記載した起動内容(...
~
boot.scr作成のためにboot.scriptというファイルを作成し以下...
(setenvからcli6010.enable=0'までは1行で記載してください ...
mkimageでboot.scriptをboot.scrに変換し完了です。~
$ vi boot.script
if fatload mmc 0 84000000 uImage
then
echo ***** Kernel: /dev/mmcblk0p1/uImage.bin *****
fi
echo ***** RootFS: /dev/mmcblk0p2 *****
setenv bootargs 'mem=256M androidboot.console=ttyS2 cons...
root=/dev/mmcblk0p2 init=/init rootwait omapfb.mode=dvi:...
bootm 84000000
注:setenvからcli6010.enable=0'までは1行です。
$ mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n...
以上の作成ファイルを圧縮したものがprebuiltイメージになり...
* prebuilt イメージの配置手順 [#ka543379]
* prebuilt-image [#ab8cb783]
上記手順にて作成しましたイメージをsourceforge.jpからダウ...
ダウンロードしてきたファイルはホームディレクトリの/home/b...
以下のURLからbc10-boot-sd-image--release20110127.tar.gzを...
http://sourceforge.jp/projects/bc10-dev/releases/50734 ~
bc10-boot-sd-image--release20110127.tar.gz を展開すると ~
FAT.tar.gz
EXT3.tar.gz
上記の二つのアーカイブが入っています。 ~
それぞれをSDカードのFAT32パーティションとEXT3パーティショ...
書き込みの手順は以下のようになります。~
* SD カードイメージ作成 [#o13ac30f]
[[bc10/booting 起動用SDカード作成 >http://labs.beatcraft....
なお、この作成手順はSDカード用です。bc10は設計上マイクロS...
SDカードの概略は以下のようになります。~
- FAT32パーティション
-- X- Loader
-- U-Boot
-- Linux kernel
-- boot.scr
- Linuxパーティション
-- Linuxルートファイルシステム(TI-Android-FroYo-DevKit-V...
作業環境はLinuxを想定しています。~
作業手順は以下のようになります。
+ パーティションの初期化・設定
+ ファイルシステムのフォーマット
+ ファイルの配置
以下の説明は主に[[LinuxBootDiskFormat(code.google.com):...
** SDカードのアンマウント [#s015a679]
このあとパーティション操作やフォーマット作業をおこなうた...
SDカードがマウントされている場合には、まずアンマウントを...
以下のようにSDカードがマウントされているとします。~
$ df -h
Filesystem Size Used Avail Use% Mounted on
...
/dev/sdc1 400M 94M 307M 24% /media/disk
...
アンマウントをおこないます。~
$ umount /media/disk
** パーティションの初期化・設定 [#y9078f7c]
fdiskコマンドを実行します。~
引数にはSDカードのデバイスファイルを指定します。~
この位置は作業環境によって変わりますので、~
事前に確認しておいてください。以下は実行例です。~
$ sudo fdisk /dev/sdc
Command (m for help): [p]
Disk /dev/sdc: 2021 MB, 2021654528 bytes
255 heads, 63 sectors/track, 245 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id ...
/dev/sdc1 * 1 246 1974240+ c ...
Partition 1 has different physical/logical endings:
phys=(244, 254, 63) logical=(245, 200, 19)
パーティションを全て削除します。~
Command (m for help): [d]
Selected partition 1
エキスパートモードにモード変更します。~
Command (m for help): [x]
ヘッダ数を255に設定します。~
Expert Command (m for help): [h]
Number of heads (1-256, default xxx): [255]
セクタ数を63に設定します。~
Expert Command (m for help): [s]
Number of sectors (1-63, default xxx): [63]
シリンダ数の設定は使用するSDカードごとに異なります。~
以下の計算式でシリンダ数を計算します。(小数点以下切り捨...
#シリンダ数 = 小数点以下切り捨て (SDカードのバイト数 / 2...
~
今回の例で使用しているSDカードでは以下のようになります。
2021654528 / 255 / 63 / 512 = 245.79
-> 245
シリンダ数を設定します。今回の例では245になります。
Expert Command (m for help): [c]
Number of cylinders (1-256, default xxx): [上式で求めた値]
ノーマルモードにモード変更します。~
Expert Command (m for help): [r]
FAT32パーティションを作成します。~
Command (m for help): [n]
Command action
e extended
p primary partition (1-4)
[p]
Partition number (1-4): [1]
First cylinder (1-245, default 1): [(press Enter)]
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-245, defau...
Command (m for help): [t]
Selected partition 1
Hex code (type L to list codes): [c]
Changed system type of partition 1 to c (W95 FAT32 (LBA))
ブートフラグを設定します。~
Command (m for help): [a]
Partition number (1-4): [1]
Linuxのファイルシステム用パーティションを作成します。~
Command (m for help): [n]
Command action
e extended
p primary partition (1-4)
[p]
Partition number (1-4): [2]
First cylinder (52-245, default 52): [(press Enter)]
Using default value 52
Last cylinder or +size or +sizeM or +sizeK (52-245, defa...
Using default value 245
パーティション設定を確認します。~
Command (m for help): [p]
Disk /dev/sdc: 2021 MB, 2021654528 bytes
255 heads, 63 sectors/track, 245 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id ...
/dev/sdc1 * 1 51 409626 c ...
/dev/sdc2 52 245 1558305 83 ...
パーティションテーブルの変更を保存します。~
Command (m for help): [w]
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with erro...
The kernel still uses the old table.
The new table will be used at the next reboot.
WARNING: If you have created or modified any DOS 6.x
partitions, please see the fdisk manual page for additio...
information.
Syncing disks.
** ファイルシステムのフォーマット [#g51c7516]
FAT32パーティションとLinuxパーティションをそれぞれフォー...
FAT32とEXT3の文字列の部分はパーティションのラベルになりま...
お好きな名前で設定してください。~
$ [sudo mkfs.msdos -F 32 /dev/sdc1 -n FAT32]
mkfs.msdos 2.11 (12 Mar 2005)
$ [sudo mkfs.ext3 -L EXT3 /dev/sdc2]
mke2fs 1.40-WIP (14-Nov-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
195072 inodes, 389576 blocks
19478 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=402653184
12 block groups
32768 blocks per group, 32768 fragments per group
16256 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting informatio...
* prebuilt-image のファイルの配置 [#a5b17eea]
**FAT32パーティションへのファイルの配置 [#g32d86a9]
FAT32パーティションのファイルには配置方法に制限があります...
作業環境でアーカイブを一旦展開します。~
$ mkdir ~/FAT
$ [tar xvfz FAT.tar.gz -C FAT/]
展開すると以下のファイルが含まれています。~
$ ls FAT
MLO boot.scr u-boot.bin uImage
1段目のブートローダであるX-Loader(MLO)は、~
SDカード上の配置方法に制限があります。~
必ず以下のように配置してください。~
~
- FAT32パーティションのフォーマット後、最初に配置するよう...
- パーティション内のトップディレクトリに配置します。
$ [cp MLO /media/FAT32/]
他のファイルには配置方法に特に制限はありません。~
そのままSDカード上にコピーしてください。~
$ [cp u-boot.bin boot.scr uImage /media/FAT32/]
配置する順序を間違えたり、手順に失敗したりした場合には、~
FAT32パーティションのフォーマットからやり直すのが確実です...
***EXT3パーティションへのファイルの配置 [#g73e209f]
ext3パーティションのファイルの配置には特に制限はありませ...
アーカイブを直接SDカード上に展開します。~
$ [sudo tar xvfz ext3.tar.gz -C /media/EXT3]
~
以上で prebuild イメージのSDカード上への配置は完了です。~
念のため sync を行ってからアンマウントしてください。
$ [sudo sync]
$ [umount /media/EXT3]
$ [umount /media/FAT32]
* SDカードからの起動 [#w6faa303]
用意できたSDカードをbc10のSDカードスロットに挿入して電源...
Androidは初回起動時にSQLite3設定DBの作成やDalvik EXecutab...
それらの起動ディスクへの書き込みを行いますので、初回起動...
* 補足 [#ceeee919]
** 制限事項について [#b46cce0b]
*** USBデバイスの認識について [#xa427e90]
USBカメラ接続時にUSBデバイスがdisconnectされUSBデバイスが...
その際は電源を切り再度電源を入れなおしてください。~
またAC給電のUSBハブ経由でも起こることがあります。~
詳細は現在調査中です。~
** CameraPreview Overlayについて [#hedf8add]
- カメラのプレビュー表示時に、ハードウェアオーバレイを使...
- 仕様・制限は以下のとおりです。
-- V4L2カメラで動作します。
-- カメラ解像度の設定は640*480固定です。
-- 表示領域に合わせて、画面の拡大・縮小が可能です。拡大・...
-- アプリケーション作成時は、Cameraに登録するSurfaceView...
-- ビルド済みAndroidに搭載されているCameraアプリケション...
カメラモードのオプションとビデオモードはそれぞれハードウ...
-- この変更点の動作確認はLogicool Orbit AFで行っています...
Linux UVCに対応したUSBカメラであればどれでも動作可能です。
** Android 起動時の build.prop [#oc206437]
デフォルトの表示デバイスro.sf.lcd_densityは120に設定して...
DVIに出力の際はアイコン表示など画面に比べて小さく表示され...
ro.sf.lcd_densityを160に変更して再起動してください。~
$ cd ~/TI_Android_FroYo_DevKit-V2/Android_Source_Manife...
$ vi build.prop
(略)
ro.sf.lcd_density=120
** Performance_Apps の導入について [#pa0d4ada]
注:このPerformance_Appsの導入については必須ではありませ...
Performance_Appsは 2D、3Dの描画やCPUベンチマークソフト群...
ベンチマークを導入したい場合は以下の手順をご覧ください。~
デフォルト設定の状態でインストールすると、LuncherからLunc...
Contacts、Mms、SpeechRecorderが削除されます。~
[[TI_Android_DevKit 02_00_00 Product Download Page>http:/...
上記WebページにあるPerformance_Apps.tar.gzをダウンロード...
Performance_Appsはapkで提供されています。
また標準で Luncher2 もコピーされContactsが削除されるため~
HOME画面上のボタン表示が変化します。~
(電話アイコンの位置にPerformance_Apps アイコンが表示され...
$ wget http://software-dl.ti.com/dsps/dsps_public_sw/sdo...
$ tar xvfz Performance_Apps.tar.gz
$ cd Performance_Apps
install_rowboperf.shを実行時にエラーが発生します、~
以下のように修正をします。~
$ vi install_rowboperf.sh
*** 13,18 ****
--- 13,19 ----
echo "Error: Rootfs location `basename $1` does not exist"
exit $E_BADARGS
fi
+ cd -
echo "Rootfs location is $1"
完了後Android userlandを指定してスクリプトを実行します。~
$ ./install_rowboperf.sh ~/TI_Android_FroYo_DevKit-V2/An...
install_rowboperf.shで追加されるapkと削除されるapkは以下...
cp -r ./0xbench/Benchmark-release.apk $1/system/app/
cp -r ./0xbench/armeabi/* $1/system/bin/
cp ./3D/OGLES* $1/system/app/
cp ./3D/lib* $1/system/lib/
cp ./StorageIO/StorageIO.apk $1/system/app/
cp ./rowboatBench/rowboat.benchmark.runner-debug.apk $1/...
cp -r ./RowboPERF/bin/armeabi-v7a/* $1/system/bin/
cp ./RowboPERF/RowboPERF.apk $1/system/app/
cp ./StorageIO/StorageIO.apk $1/system/app/
cp ./Launcher2/Launcher2.apk $1/system/app/
rm $1/system/app/Contacts.apk
rm $1/system/app/Mms.apk
rm $1/system/app/SpeechRecorder.apk
** Android SGX について [#b80953e2]
init.rc の最終行に記載のとおりSGX 機能が有効の設定になっ...
不要の場合はコメントアウトで無効にしてください。~
注:無効にした際にGUIの再描画が行われているため画面に若干...
~
またkernel 、userland更新時は更新されたkernel、userlandを...
SGXのリビルドが必要になります。~
$ vi /media/LABEL2/init.rc
# Start PowerVR SGX DDK
service pvr /system/bin/sgx/rc.pvr start
** bc10 Wifi 設定手順 [#a7be2574]
Android GUI上からのWifi ON/OFF機能を実装していません。~
起動の際にシリアルコンソールでinsmod、netcfgコマンドで動...
対象となるUSB-Wifi機器はRT3070 搭載の以下の機器になります...
メーカー 型番 対応 Device ID
Buffalo WLI-UC-GN 0411:015d
上記のRT3070USBデバイスをbc10 に接続し起動します。~
シリアルコンソールで以下のようなデバイス認識を確認します。~
以下の例はWLI-UC-GNでの接続例です。~
...
usb 1-2.4: new high speed USB device using ehci-omap and...
usb 1-2.4: New USB device found, idVendor=0411, idProduc...
usb 1-2.4: New USB device strings: Mfr=1, Product=2, Ser...
usb 1-2.4: Product: 802.11 n WLAN
usb 1-2.4: Manufacturer: Ralink
usb 1-2.4: SerialNumber: 1.0
...
rt3070sta.koファイルをinsmod し、netcfgコマンドでデバイス...
RT2870STA.datはファイル内で指定したSSID への接続に使用し...
以下にシリアルコンソールからのnetcfg dhcp接続までの例を記...
(出力されるログは省略しています)~
# cd /system/lib/modules
# ls
rt3070sta.ko
# netcfg
lo UP 127.0.0.1 255.0.0.0 0x00000049
# insmod rt3070sta.ko
...
# netcfg
lo UP 127.0.0.1 255.0.0.0 0x00000049
ra0 DOWN 0.0.0.0 0.0.0.0 0x00001002
# netcfg ra0 up
...
# netcfg
lo UP 127.0.0.1 255.0.0.0 0x00000049
ra0 UP 0.0.0.0 0.0.0.0 0x00001043
# netcfg ra0 dhcp
# netcfg
lo UP 127.0.0.1 255.0.0.0 0x00000049
ra0 UP 192.168.13.4 255.255.255.0 0x00001043
#
- RT2870STA.datについて~
RT2870STA.dat はSSID の指定、認証方式、暗号化方式などを設...
~
以下にXXX-BCというSSID(認証方式:AuthMode OPEN、暗号化方...
暗号キーの文字タイプ:Key1Type 1(acsii)、暗号キー:Key1Str ...
の接続設定例を記載します。~
~
接続設定の詳細については 2011_0107_RT3070_RT3370_Linux_ST...
をご覧ください。~
SSID=XXX-BC
(略)
AuthMode=OPEN
EncrypType=WEP
WPAPSK=
DefaultKeyID=1
Key1Type=1
Key1Str=xxx.testessid
Key2Type=0
** SDカードについて [#oaa7b071]
bc10でSDカード動作確認をとったSDカードは以下のものになり...
- SanDisk Ultra CLASS4 15MB/s 2GB
-- 型番:SDSDH-002G-J95
-- http://www.sandisk.co.jp/products/sd-sdhc-sdxc-cards/s...
同タイプのCLASS 2では起動、および動作が遅いという報告を受...
~
記載されている全てのSDカードの動作確認は取っておりません...
TI-Android-FroYo-DevKit-V2.2 UserGuide(本バージョンはV2...
~
[[SD_Card_Recommendations>http://processors.wiki.ti.com/i...
~
* 参照URL [#e90654f8]
- rowboatコミュニティー ~
-- http://code.google.com/p/rowboat/
- rowboat ConfigureAndBuild ~
-- http://code.google.com/p/rowboat/wiki/ConfigureAndBuil...
- TI-Android-FroYo-DevKit-V2_ReleaseNotes ~
-- http://processors.wiki.ti.com/index.php/TI-Android-Fro...
- TI-Android-FroYo-DevKit-V2_UserGuide ~
--http://processors.wiki.ti.com/index.php/TI-Android-FroY...
- [Armadillo:06309] Re: Armadillo-440 で使用可能な無線LA...
-- http://lists.atmark-techno.com/pipermail/armadillo/201...
* 更新記録 [#ya37e16c]
2011/01/27 初稿記載、文言修正~
2011/02/01 文言追加および修正~
2011/04/21 SDカードについてを追記~
終了行:
[[labs.beatcraft.com]]~
[[bc10]]~
~
#contents
~
* bc10/prebuilt-20110127 概要 [#t3cd6613]
COLOR(red){bc10/prebuilt-20110127は、rowboat コミュニティ...
~
TI-Android-FroYo-Devkit-V2のfroyoはmaster branchにあった...
そのためAOSP Android 2.2_r1.1とは複数箇所で差異があります...
~
[[bc10/prebuilt-20110107]]のAndroidベースバージョンは~
AOSP Android 2.2_r1.1です。~
この[[bc10/prebuilt-20110127]]の項目は~
''TI-Android-FroYo-Devkit-V2のfroyo''という別バージョンと...
~
[[bc10/TI-Android-FroYo-Devkit-V2]]に追加、修正を加えた~
TI-Android-FroYo-Devkit-V2 prebuiltイメージ作成手順~
について記載しています。~
~
大きな項目としては以下のものがあります。~
~
- [[prebuilt イメージの作成手順>http://labs.beatcraft.com...
-- イメージの作成手順は prebuilt-20110127 作成のための~
開発環境作成、ビルド手順について記載しています。~
~
- [[prebuilt イメージの配置手順>http://labs.beatcraft.com...
-- イメージの配置手順はprebuilt-20110127のイメージ~
[[bc10-boot-sd-image--release20110127.tar.gz>http://sourc...
ダウンロード、SDへの配置について記載しています。~
主な変更は以下のとおりです。~
---USBカメラドライバー対応
カメラのプレビュー表示時に、
ハードウェアオーバレイを使用するように変更しました。
仕様・制限は以下のとおりです。
- 動作・解像度
V4L2カメラで動作します。
カメラ解像度の設定は640*480固定です。
- 画面拡大・縮小
表示領域に合わせて、画面の拡大・縮小が可能です。
拡大・縮小はハードウェアでおこないます。
プリケーション作成時は、Cameraに登録する
SurfaceViewのサイズとPreviewのサイズを同じものにしてくだ...
- 動作確認アプリケーション
ビルド済みAndroidに搭載されている
Cameraアプリケションではカメラモードの撮影のみで
動作確認をしています。
カメラモードのオプションとビデオモードは
それぞれハードウェア、ソフトウェアの対応をしていません。
- 動作確認デバイス
この変更点の動作確認はLogicool Orbit AFで行っていますが、
Linux UVCに対応したUSBカメラであればどれでも動作可能です。
本体内蔵カメラは現在調整中です。
- 未解決事項
USBカメラ接続時にUSBデバイスがdisconnectされ
USBデバイスが動作しないことがあります。
その際は電源を切り再度電源を入れなおしてください。
この現象はAC給電のUSBハブ経由でも起こることがあります。
詳細は現在調査中です。
~
--- USB WiFi(RT3070USB)ドライバー対応
- 動作確認
動作確認はAndroid起動の際にシリアルで
insmod、netcfgコマンドで動作確認をしています。
注:Android GUI上からのWifi ON/OFF機能は実装していません。
- 動作確認デバイス
prebuilt-20110127にはUSB WiFi (RT3070USB)のドライバーを
含めています、動作確認デバイスは以下のとおりです。
メーカー 型番 対応 Device ID
Buffalo WLI-UC-GN 0411:015d
~
COLOR(red){ 一部デバイスに対応中の箇所があります。予告無...
** bc10/TI-Android-FroYo-Devkit-V2 [#pd6dc9a3]
~
2010年10月27日にテキサスインスツルメンツ社より ~
TI-Android-FroYo-Devkit-V2がリリースされました。~
TI-Android-FroYo-Devkit-V2は主にTI製品向けのfroyoの安定版...
~
*** TI-Android-FroYo-Devkit-V2のfroyo について [#c49ebe8b]
前述のとおりTI-Android-FroYo-Devkit-V2 は、~
主にTI製品向けのfroyoの安定版になります。 ~
またlunchコマンド実行時に以下のような表示がされます。~
BUILD_ID=MASTER
TI-Android-FroYo-Devkit-V2のfroyoはmaster branch~
にあったころの安定版に相当します。~
そのためAOSP Android 2.2_r1.1 とは複数箇所で差異がありま...
(略)
/TI-Android-FroYo-DevKit-V2$ lunch bc10-eng
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=2.2
TARGET_PRODUCT=bc10
TARGET_BUILD_VARIANT=eng
TARGET_SIMULATOR=false
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
HOST_ARCH=x86
HOST_OS=linux
HOST_BUILD_TYPE=release
BUILD_ID=MASTER
============================================
** 主な特徴 [#g21c8b3e]
TI-Android-FroYo-Devkit-V2は、OMAP35x EVM, AM35x EVM, ~
AM37x EVM, Beagleboard Rev CxやBeagleboard XM向けのSDKパ...
~
また、TI-Android-Froyo-Devkit-V2.xmlは各プロダクトの~
特定のバージョンを取得できるようにxml内に~
各プロダクトごとのリビジョンを含んでいます。~
以下、TI-Android-FroYo-Devkit-V2 の開発環境、bc10用へ変更...
prebuiltイメージ作成について記載します。~
~
(注):開発マシンのメモリが 1GB未満の場合repo sync実行時にp...
エラーが起こります。以下の手順は1GB以上のメモリで動作確認...
~
[[TI-Android-FroYo-DevKit-V2_ReleaseNotes>http://processo...
[[TI-Android-FroYo-DevKit-V2_UserGuide>http://processors....
* prebuilt イメージの作成手順 [#kceb09db]
* 開発環境 [#p209889b]
今回の開発環境の概略は以下のとおりです。~
-OS: Ubuntu 10.04(32bit版)~
-JAVA: java 1.5x ~
-Android Version: TI-Android-FroYo-Devkit-V2 froyo ~
** パッケージインストール [#de53ff68]
Ubuntuのリポジトリから必要なパッケージを取得してインスト...
$ sudo apt-get install git-core gnupg flex bison gperf l...
libwxgtk2.6-dev build-essential zip curl libncurses5-d...
** java5 [#ef8bd7c6]
TI-Android-FroYo-Devkit-V2 のビルドに必要なsun-java5-jdk...
リポジトリから外されていますので/etc/apt/sources.listに、~
一時的に古いリポジトリを追加します。~
$ sudo vi /etc/apt/sources.list
## respective vendors as a service to Ubuntu users.
deb http://archive.canonical.com/ubuntu lucid partner
deb-src http://archive.canonical.com/ubuntu lucid part...
deb http://archive.ubuntu.com/ubuntu lucid-security ma...
deb-src http://archive.ubuntu.com/ubuntu lucid-securit...
deb http://archive.ubuntu.com/ubuntu lucid-security un...
deb http://archive.ubuntu.com/ubuntu lucid-security mu...
+ deb http://us.archive.ubuntu.com/ubuntu/ jaunty multiv...
+ deb http://us.archive.ubuntu.com/ubuntu/ jaunty-update...
追加完了後、apt-get updateコマンドでリポジトリ情報の取得...
sun-java5-jdkをインストールします。~
$ sudo apt-get update
$ sudo apt-get install sun-java5-jdk
インストール完了後、誤って他の古いパッケージをインストー...
上記で追加したリポジトリを削除しておきます。~
$ sudo vi /etc/apt/sources.list
## respective vendors as a service to Ubuntu users.
deb http://archive.canonical.com/ubuntu lucid partner
deb-src http://archive.canonical.com/ubuntu lucid part...
deb http://archive.ubuntu.com/ubuntu lucid-security ma...
deb-src http://archive.ubuntu.com/ubuntu lucid-securit...
deb http://archive.ubuntu.com/ubuntu lucid-security un...
deb http://archive.ubuntu.com/ubuntu lucid-security mu...
- deb http://us.archive.ubuntu.com/ubuntu/ jaunty multiv...
- deb http://us.archive.ubuntu.com/ubuntu/ jaunty-update...
もう一度apt-get updateで現状のリポジトリ情報の取得をして...
$ sudo apt-get update
* Android ソースファイル取得 [#nea0dd19]
** repo 設定 [#o0b0c850]
androidのソースコードを取得するためにrepoの設定を行います...
ホームディレクトリにbinというディレクトリを作成しrepoを取...
注:以後、/home/beatをホームディレクトリとして記載します。~
$ cd ~
$ mkdir bin
$ curl http://android.git.kernel.org/repo >~/bin/repo
$ chmod a+x ~/bin/repo
Ubuntuでは、一度ログアウトしてログインし直すと~/binへのPA...
ログアウトせずそのまま作業したい場合は、以下のようにして~...
環境変数のPATH に追加します。~
$ export PATH=~/bin:$PATH
** ファイルの取得 [#ka26666a]
TI-Android-Froyo-Devkit-V2の取得方法を記載します。~
Androidのソースファイルを取得するのためにTI-Android-FroYo...
~
[[TI_Android_DevKit 02_00_00 Product Download Page>http:/...
[[TI-Android-FroYo-DevKit-V2.xml>http://software-dl.ti.co...
~
(注):ファイル取得完了までに時間がかかることがあります。~
また、作業には1GB以上のメモリを必要とします。開発マシンの...
1GB未満の場合repo syncでprebuiltやsdk のfetch の際にエラ...
$ cd ~
$ mkdir TI-Android-FroYo-DevKit-V2
$ cd TI-Android-FroYo-DevKit-V2
$ wget http://software-dl.ti.com/dsps/dsps_public_sw/sdo...
$ repo init -u git://gitorious.org/rowboat/manifest.git ...
$ repo sync
** bc10 用 DevKit V2 patch [#n52377d4]
添付ファイルにあるbc10用DevKit V2 patchのdevkitv2-patches...
取得しファイルを展開します。~
~
#ref(devkitv2-patches-for-bc10.tar.gz);~
$ cd ~
$ tar xvfz devkitv2-patches-for-bc10.tar.gz
$ cd devkitv2-patches-for-bc10
bc10-devkitV2-patch.sh 内のANDROID_DIR、SETUP_DIRと~
PATCH_DIRは以下のように設定しています。~
bc10-devkitV2-patch.sh の中の以下の環境変数を~
ファイルの PATH に合うよう修正してください。~
### Settings
#ANDROID_DIR=${HOME}/TI_Android_FroYo_DevKit-V2/Android_...
ANDROID_DIR=${HOME}/prebuilt-20110122-DevkitV2/TI-Androi...
SETUP_DIR=${HOME}/prebuilt-20110122-DevkitV2/devkitv2-pa...
PATCH_DIR=${SETUP_DIR}/patches
###
patch適用後、device/ti以下にbc10ディレクトリが作成されま...
$ cd ~
$ tar xvfz devkitv2-patches-for-bc10.tar.gz
$ cd ~/devkitv2-patches-for-bc10
$ ./bc10-devkitV2-patch.sh
$ ls TI-Android-FroYo-DevKit-V2/device/ti/
am3517evm bc10 beagleboard igepv2 omap3evm
** Android のビルド [#df16b7a8]
bc10用設定ファイルを読み込みビルドします。~
$ cd ~/TI-Android-FroYo-DevKit-V2
$ source build/envsetup.sh
$ lunch bc10-eng
$ make
** イメージの作成 [#lcb0a86c]
ビルドが終了したらビルドされたuserlandのバイナリを起動可...
userlandを整えるスクリプトmkbc10-image.shを使用します。~
mkbc10-image.sh内の ANDROID_DIR は以下のように設定してい...
ファイルのPATHに合うよう修正してください。
### Settings
#ANDROID_DIR=${HOME}/bc10
ANDROID_DIR=${HOME}/prebuilt-20110122-DevkitV2/TI-Androi...
###
$ cd ~/devkitv2-patches-for-bc10
$ ./mkbc10-image.sh
実行後、TI-Android-FroYo-DevKit-V2/out/target/product/bc1...
bc10-imageディレクトリが作成されます。~
このディレクトリ内にandroid userlandが配置されます。~
** 環境変数の設定 [#qce4f67a]
bootに必要なx-loader、u-boot、kernelはAndroidのソースコー...
配布されているtoolchainを使用してビルドを実行します。~
ビルド時に以下のtoolchainでcross compileが実行されるように~
環境変数の設定をします。~
~
PATHのディレクトリ位置は上記の設定に合わせています。~
$ export PATH=/home/beat/TI-Android-FroYo-DevKit-V2/preb...
$ export ARCH=arm
$ export CROSS_COMPILE=arm-eabi-
** kernel のビルド [#w755860b]
$ cd ~
$ git clone git://gitorious.org/~bc-dev/rowboat/bc10-row...
$ cd bc10-rowboat-kernel/
bc10向けリリースブランチに切り替えます。~
$ git checkout -t -b bc10-2.6.32 origin/bc10-2.6.32
$ make omap3_bc10_defconfig
$ make uImage
$ make modules
ビルド完了後以下のディレクトリにuImageが作成されます。~
$ ls arch/arm/boot/
Image Makefile bootp compressed install.sh uImage ...
** USB Wifi (RT3070USB) ドライバー ビルド [#qef844a3]
ここでは、RT3070USBを使用している無線LAN USBデバイス、~
Baffalo WLI-UG-G301N について記載します。~
~
ドライバーは[[RALINK Web>http://www.ralinktech.com/suppor...
Linux ドライバー2011_0107_RT3070_RT3370_Linux_STA_v2.5.0....
ファームウェアRT28XX/RT30XX USB series (RT2870/RT2770/RT3...
~
ドライバー及びファームウェアの入手はメールアドレスと氏名...
またドライバーのバージョンアップが行われた際過去のドライ...
下記にドライバーを添付します。~
~
toolchainは上記kernelビルド時に設定したAndroidソースファ...
prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin を使用し...
#ref(2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO.tar.b...
#ref(RT3370USB.diff);~
~
bc10用に下記のように2011_0107_RT3070_RT3370_Linux_STA_v2....
もしくは添付のRT3370USB.diffからのpatchコマンドを実行して...
patchを当てることで bc10 向けにクロスコンパイルできるよう...
~
変更内容は、~
- bc10 向けのコンパイル設定の追加(platform、toolchain の...
- ファームウェアのリージョン設定を日本にし、設定項目例を...
- USB Wifi のベンダーID、製品IDの追加 ~
です。~
~
Makefile内のLINUX_SRCおよびCROSS_COMPILE部分は以下のよう...
ファイルの PATH に合うよう修正してください ~
+LINUX_SRC = /home/beat/prebuilt-20110122-DevkitV2/bc10-...
+CROSS_COMPILE = /home/beat/prebuilt-20110122-DevkitV2/T...
$ cd ~
$ tar xvfz 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DP...
$ patch -p0 < RT3370USB.diff
$ cd 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO/
修正が完了したら、makeを実行します。make 完了後 os/linux ...
$ make
$ ls -l os/linux/rt3070sta.ko
-rw-r--r-- 1 beat beat 10871281 2011-01-20 14:50 os/linu...
diff -urpN 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DP...
--- 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO-orig/...
+++ 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO/Makef...
@@ -23,7 +23,8 @@ endif
RTMP_SRC_DIR = $(RT28xx_DIR)/RT$(CHIPSET)
#PLATFORM: Target platform
-PLATFORM = PC
+#PLATFORM = PC
+PLATFORM = BC10
#PLATFORM = 5VT
#PLATFORM = IKANOS_V160
#PLATFORM = IKANOS_V180
@@ -176,6 +177,11 @@ LINUX_SRC_MODULE = /lib/modules/$(s...
CROSS_COMPILE =
endif
+ifeq ($(PLATFORM),BC10)
+LINUX_SRC = /home/beat/prebuilt-20110122-DevkitV2/bc10-...
+CROSS_COMPILE = /home/beat/prebuilt-20110122-DevkitV2/T...
+endif
+
ifeq ($(PLATFORM),IXP)
LINUX_SRC = /project/stable/Gmtek/snapgear-uclibc/linux...
CROSS_COMPILE = arm-linux-
@@ -384,6 +390,10 @@ ifeq ($(OSABL),YES)
cp -f $(RT28xx_DIR)/os/linux/rtnet$(CHIPSET)apst...
/tftpboot
endif
else
+ifeq ($(PLATFORM),BC10)
+ $(MAKE) ARCH=arm CROSS_COMPILE=$(CROSS_COMPILE) ...
+else
+
cp -f $(RT28xx_DIR)/os/linux/rt$(CHIPSET)sta.ko ...
ifeq ($(OSABL),YES)
cp -f $(RT28xx_DIR)/os/linux/rtutil$(CHIPSET)sta....
@@ -392,7 +402,7 @@ endif
endif
endif
endif
-
+endif
release:
$(MAKE) -C $(RT28xx_DIR)/striptool -f Makefile.re...
@@ -423,6 +433,9 @@ ifeq ($(TARGET), LINUX)
$(MAKE) -C os/linux clean
rm -rf os/linux/Makefile
endif
+ifneq ($(TARGET), THREADX)
+ $(MAKE) -C tools clean
+endif
ifeq ($(TARGET), UCOS)
$(MAKE) -C os/ucos clean MODE=$(RT28xx_MODE)
endif
diff -urpN 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DP...
--- 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO-orig/...
+++ 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO/RT287...
@@ -1,8 +1,10 @@
#The word of "Default" must not be removed
Default
CountryRegion=5
-CountryRegionABand=7
-CountryCode=
+#CountryRegionABand=7
+CountryRegionABand=1
+#CountryCode=
+CountryCode=JP
ChannelGeography=1
SSID=11n-AP
NetworkType=Infra
diff -urpN 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DP...
--- 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO-orig/...
+++ 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO/commo...
@@ -104,6 +104,13 @@ USB_DEVICE_ID rtusb_dev_id[] = {
{USB_DEVICE(0x13D3,0x3321)}, /* Azurewave */
{USB_DEVICE(0x07FA,0x7712)}, /* Edimax */
{USB_DEVICE(0x0789,0x0166)}, /* Edimax */
+ {USB_DEVICE(0x2019,0xED14)}, /* PLANEX*/
+ {USB_DEVICE(0x2019,0xAB29)}, /* PLANEX*/
+ {USB_DEVICE(0x0789,0x0164)}, /* Logitec*/
+ {USB_DEVICE(0x0789,0x0168)}, /* Logitec*/
+ {USB_DEVICE(0x0411,0x01a2)}, /* Buffalo*/
+ {USB_DEVICE(0x0411,0x016f)}, /* Buffalo*/
+ {USB_DEVICE(0x0411,0x015d)}, /* Buffalo*/
#endif /* RT3070 */
{ }/* Terminating entry */
};
diff -urpN 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DP...
--- 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO-orig/...
+++ 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO/inclu...
@@ -1,28 +1,5 @@
-/*
- ******************************************************...
- * Ralink Tech Inc.
- * 5F., No.36, Taiyuan St., Jhubei City,
- * Hsinchu County 302,
- * Taiwan, R.O.C.
- *
- * (c) Copyright 2002-2010, Ralink Technology, Inc.
- *
- * This program is free software; you can redistribute ...
- * it under the terms of the GNU General Public License...
- * the Free Software Foundation; either version 2 of th...
- * (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will...
- * but WITHOUT ANY WARRANTY; without even the implied w...
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE....
- * GNU General Public License for more details. ...
- * *
- * You should have received a copy of the GNU General P...
- * along with this program; if not, write to the ...
- * Free Software Foundation, Inc., *
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307,...
- * *
- ******************************************************...
+/* AUTO GEN PLEASE DO NOT MODIFY IT */
+/* AUTO GEN PLEASE DO NOT MODIFY IT */
UCHAR FirmwareImage [] = {
diff -urpN 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DP...
--- 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO-orig/...
+++ 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO/os/li...
@@ -11,7 +11,8 @@ HAS_QA_SUPPORT=n
HAS_XLINK=n
# Support Wpa_Supplicant
-HAS_WPA_SUPPLICANT=n
+#HAS_WPA_SUPPLICANT=n
+HAS_WPA_SUPPLICANT=y
# Support Native WpaSupplicant for Network Maganger
HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=n
@@ -415,6 +416,10 @@ ifeq ($(PLATFORM),PC)
endif
endif
+ifeq ($(PLATFORM),BC10)
+EXTRA_CFLAGS := $(WFLAGS) -I$(RT28xx_DIR)/include -DMOD...
+endif
+
#If the kernel version of RMI is newer than 2.6.27, ple...
ifeq ($(PLATFORM),RMI)
EXTRA_CFLAGS := -D__KERNEL__ -DMODULE=1 -I$(LINUX_SRC)/...
-I$(RT28xx_DIR)/include -Wall -Wstrict-...
-DCONFIG_IFX_ALG_QOS -DCONFIG_WAN_VLAN_...
-mno-abicalls -mlong-calls -pipe -finli...
-msoft-float -march=xlr -ffreestanding ...
diff -urpN 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DP...
--- 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO-orig/...
+++ 2011_0107_RT3070_RT3370_Linux_STA_v2.5.0.1_DPO/os/li...
@@ -40,6 +40,7 @@ MODULE_DESCRIPTION("RT2870 Wireless L...
#ifdef CONFIG_STA_SUPPORT
#ifdef MODULE_VERSION
MODULE_VERSION(STA_DRIVER_VERSION);
+MODULE_LICENSE("GPL");
#endif
#endif /* CONFIG_STA_SUPPORT */
注: EXTRA_CFLAGS := -D__KERNEL__ -DMODULE=1 -I$(LINUX_...
** USB Wifi (RT3070USB) ドライバー 配置について [#adbdb5c3]
- rt3070sta.ko~
上記で作成したドライバーファイルです。
~
rt3070sta.koをandroid userlandの~
bc10/out/target/product/bc10/bc10-image/system/lib/以下に~
modulesというディレクトリを作成し配置します。~
~
- RT2870STA.dat~
Wifiの設定ファイルです。~
RT2870STA.datはSSID、認証形式などの設定を記載します。~
RT2870STA.datはandroid userland の~
bc10/out/target/product/bc10/bc10-image/system/etc/以下に~
Wireless/RT2870STAというディレクトリを作成し配置します。~
~
設定例:
SSID:XXX-BC、認証方式:AuthMode OPEN、暗号化方式:EncrypTy...
暗号キーの文字タイプ:Key1Type 1(acsii)、暗号キー:Key1Str ...
の接続例~
~
SSID=XXX-BC
(略)
AuthMode=OPEN
EncrypType=WEP
WPAPSK=
DefaultKeyID=1
Key1Type=1
Key1Str=xxx.testessid
Key2Type=0
接続設定の詳細については 2011_0107_RT3070_RT3370_Linux_ST...
をご覧ください。~
- rt2870.bin ~
ファームウェアファイルとライセンステキストがあります。~
rt2870.binとLICENSE.ralink-firmware.txtをandroid userland...
bc10/out/target/product/bc10/bc10-image/system/etc/以下に~
firmwareというディレクトリを作成し配置します。~
~
ファイルのオーナーと権限は mkbc10-image.sh にあわせて roo...
$ sudo mkdir ~/TI-Android-FroYo-DevKit-V2/out/target/pro...
$ sudo mkdir -p ~/TI-Android-FroYo-DevKit-V2/out/target/...
$ sudo cp -afr os/linux/rt3070sta.ko ~/TI-Android-FroYo-...
$ sudo cp -afr RT2870STA.dat ~/TI-Android-FroYo-DevKit-V...
$ cd ~
$ unzip RT2870_Firmware_V22.zip
$ cd RT2870_Firmware_V22/
$ sudo mkdir ~/TI-Android-FroYo-DevKit-V2/out/target/pro...
$ sudo cp -afr * ~/TI-Android-FroYo-DevKit-V2/out/target...
$ sudo chown -R root.root ~/TI-Android-FroYo-DevKit-V2/o...
$ sudo chmod -R 777 ~/TI-Android-FroYo-DevKit-V2/out/tar...
** SGX SDK のビルド [#g555a2b6]
[[bc10/froyo]]と同じ手順でTI Android SGX SDKを取得します。~
~
(注):取得完了までに時間がかかることがあります。~
[[bc10/froyo]]にてOMAP35x_Android_Graphics_SDK_3_01_00_03...
同じファイルなので転用しても問題ありません、Rules.makeの...
注意してください。再度ダウンロードの際は任意にバックアッ...
$ cd ~
$ git clone git://gitorious.org/rowboat/ti_android_sgx_s...
$ cd ti_android_sgx_sdk/
$ ./OMAP35x_Android_Graphics_SDK_setuplinux_3_01_00_03.bin
インストールディレクトリ位置を聞かれるので今回はデフォル...
の${HOME}/OMAP35x_Android_Graphics_SDK_3_01_00_03を指定し...
~
[[To download TI's Android SGX SDK>http://code.google.com...
~
*** Rules.make の変更 [#ke48d729]
Rules.make のHOME、GRAPHICS_INSTALL_DIR、ANDROID_ROOT、CS...
KERNEL_INSTALL_DIRをそれぞれのファイルPATHに合うよう修正...
以下のRules.makeは上記設定にあわせています。~
$ cd ~/OMAP35x_Android_Graphics_SDK_3_01_00_03
$ vi Rules.make
Rules.make
PLATFORM=LinuxOMAP3
################# FIELDS MODIFIABLE BY THE USER ########...
###################
#set home area HOME (relative location for all SDK opera...
#HOME=INVALIDVAL
HOME=/home/beat
#Current Directory where Graphics SDK is installed
GRAPHICS_INSTALL_DIR=$(HOME)/OMAP35x_Android_Graphics_SD...
#Android Specific
#Path of Android Root FS
#ANDROID_ROOT=$(HOME)/INVALIDVAL
ANDROID_ROOT=$(HOME)/TI-Android-FroYo-DevKit-V2/out/targ...
#set toolchain root path for arm-eabi
#CSTOOL_DIR=INVALIDVAL
CSTOOL_DIR=$(HOME)/TI-Android-FroYo-DevKit-V2/prebuilt/l...
CSTOOL_PREFIX=arm-eabi-
CSTOOL_PATH=$(CSTOOL_DIR)/bin
CSTOOL_LIBSTDC++_PATH=$(CSTOOL_DIR)/arm-none-linux-gnuea...
#set the kernel installation path
#KERNEL_INSTALL_DIR=$(HOME)/INVALIDVAL
KERNEL_INSTALL_DIR=$(HOME)/bc10-rowboat-kernel
TARGETFS_INSTALL_DIR=$(ANDROID_ROOT)
GFX_TARGETFS_KERMOD_PATH=$(TARGETFS_INSTALL_DIR)/lib/mod...
#Android
ANDROID_DISCIMAGE=$(TARGETFS_INSTALL_DIR)/
RULE.make 変更完了後 make、make install を実行します。~
$ make
$ make OMAPES=3.x install
** u-boot [#w583bb25]
bc10(omap3530)でLinuxを動作させる場合、電源の投入後一般...
1. BootROM code
2. X-Loader
3. U-Boot
4. Linux kernel(uImage)
u-bootはbc10起動時に実行される2段目のブートローダです。~
bc10のブートプロセスについての情報は[[bc10/booting]]を参...
$ cd ~
$ git clone git://gitorious.org/bc10/u-boot-bc10.git u-b...
$ cd u-boot-bc10
$ make mrproper
$ make omap3_bc10_config
$ make
ビルド後出来たu-boot.binはSDカードFATパーティションにMLO...
SDカードイメージ作成についてはページ下部にあります[[SDカ...
** x-loader [#r82ab56e]
x-loaderはbc10起動時に実行される第一段ブートローダです。~
$ cd ~
$ git clone git://gitorious.org/~bc-dev/x-load-omap3/x-l...
$ cd x-load-bc10
$ git checkout -t -b bc10 origin/bc10
$ make omap3530bc10_config
$ make
x-load.binはOMAP BootROMの仕様とフォーマットが合っていな...
SDカードに書きこんでもブートローダとして動作させることが...
この問題を解決するためsignGPというツールでx-load.binを加...
~
signGPの実行ファイルは以下の場所からダウンロードすること...
http://beagleboard.googlecode.com/files/signGP ~
ダウンロードしたsignGPを以下のように実行します。~
$ signGP x-load.bin
ビルド後出来たx-load.bin.iftはMLOという名前でSDカードのFA...
書き込むためのファイルです。~
~
SDカードイメージ作成についてはページ下部にあります[[SDカ...
** boot.scr [#g1d02e0d]
このファイルはシリアルコンソールでu-bootのコマンドプロン...
設定するのと同じ内容を作成し、起動時に毎回手動で設定する...
また、メモリマッピングを変えないよう設定します。~
boot.scrを配置することで bc10起動時にu-boot.bin内に設定し...
bc10の起動内容(setenvの内容)をboot.scrに記載した起動内容(...
~
boot.scr作成のためにboot.scriptというファイルを作成し以下...
(setenvからcli6010.enable=0'までは1行で記載してください ...
mkimageでboot.scriptをboot.scrに変換し完了です。~
$ vi boot.script
if fatload mmc 0 84000000 uImage
then
echo ***** Kernel: /dev/mmcblk0p1/uImage.bin *****
fi
echo ***** RootFS: /dev/mmcblk0p2 *****
setenv bootargs 'mem=256M androidboot.console=ttyS2 cons...
root=/dev/mmcblk0p2 init=/init rootwait omapfb.mode=dvi:...
bootm 84000000
注:setenvからcli6010.enable=0'までは1行です。
$ mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n...
以上の作成ファイルを圧縮したものがprebuiltイメージになり...
* prebuilt イメージの配置手順 [#ka543379]
* prebuilt-image [#ab8cb783]
上記手順にて作成しましたイメージをsourceforge.jpからダウ...
ダウンロードしてきたファイルはホームディレクトリの/home/b...
以下のURLからbc10-boot-sd-image--release20110127.tar.gzを...
http://sourceforge.jp/projects/bc10-dev/releases/50734 ~
bc10-boot-sd-image--release20110127.tar.gz を展開すると ~
FAT.tar.gz
EXT3.tar.gz
上記の二つのアーカイブが入っています。 ~
それぞれをSDカードのFAT32パーティションとEXT3パーティショ...
書き込みの手順は以下のようになります。~
* SD カードイメージ作成 [#o13ac30f]
[[bc10/booting 起動用SDカード作成 >http://labs.beatcraft....
なお、この作成手順はSDカード用です。bc10は設計上マイクロS...
SDカードの概略は以下のようになります。~
- FAT32パーティション
-- X- Loader
-- U-Boot
-- Linux kernel
-- boot.scr
- Linuxパーティション
-- Linuxルートファイルシステム(TI-Android-FroYo-DevKit-V...
作業環境はLinuxを想定しています。~
作業手順は以下のようになります。
+ パーティションの初期化・設定
+ ファイルシステムのフォーマット
+ ファイルの配置
以下の説明は主に[[LinuxBootDiskFormat(code.google.com):...
** SDカードのアンマウント [#s015a679]
このあとパーティション操作やフォーマット作業をおこなうた...
SDカードがマウントされている場合には、まずアンマウントを...
以下のようにSDカードがマウントされているとします。~
$ df -h
Filesystem Size Used Avail Use% Mounted on
...
/dev/sdc1 400M 94M 307M 24% /media/disk
...
アンマウントをおこないます。~
$ umount /media/disk
** パーティションの初期化・設定 [#y9078f7c]
fdiskコマンドを実行します。~
引数にはSDカードのデバイスファイルを指定します。~
この位置は作業環境によって変わりますので、~
事前に確認しておいてください。以下は実行例です。~
$ sudo fdisk /dev/sdc
Command (m for help): [p]
Disk /dev/sdc: 2021 MB, 2021654528 bytes
255 heads, 63 sectors/track, 245 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id ...
/dev/sdc1 * 1 246 1974240+ c ...
Partition 1 has different physical/logical endings:
phys=(244, 254, 63) logical=(245, 200, 19)
パーティションを全て削除します。~
Command (m for help): [d]
Selected partition 1
エキスパートモードにモード変更します。~
Command (m for help): [x]
ヘッダ数を255に設定します。~
Expert Command (m for help): [h]
Number of heads (1-256, default xxx): [255]
セクタ数を63に設定します。~
Expert Command (m for help): [s]
Number of sectors (1-63, default xxx): [63]
シリンダ数の設定は使用するSDカードごとに異なります。~
以下の計算式でシリンダ数を計算します。(小数点以下切り捨...
#シリンダ数 = 小数点以下切り捨て (SDカードのバイト数 / 2...
~
今回の例で使用しているSDカードでは以下のようになります。
2021654528 / 255 / 63 / 512 = 245.79
-> 245
シリンダ数を設定します。今回の例では245になります。
Expert Command (m for help): [c]
Number of cylinders (1-256, default xxx): [上式で求めた値]
ノーマルモードにモード変更します。~
Expert Command (m for help): [r]
FAT32パーティションを作成します。~
Command (m for help): [n]
Command action
e extended
p primary partition (1-4)
[p]
Partition number (1-4): [1]
First cylinder (1-245, default 1): [(press Enter)]
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-245, defau...
Command (m for help): [t]
Selected partition 1
Hex code (type L to list codes): [c]
Changed system type of partition 1 to c (W95 FAT32 (LBA))
ブートフラグを設定します。~
Command (m for help): [a]
Partition number (1-4): [1]
Linuxのファイルシステム用パーティションを作成します。~
Command (m for help): [n]
Command action
e extended
p primary partition (1-4)
[p]
Partition number (1-4): [2]
First cylinder (52-245, default 52): [(press Enter)]
Using default value 52
Last cylinder or +size or +sizeM or +sizeK (52-245, defa...
Using default value 245
パーティション設定を確認します。~
Command (m for help): [p]
Disk /dev/sdc: 2021 MB, 2021654528 bytes
255 heads, 63 sectors/track, 245 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id ...
/dev/sdc1 * 1 51 409626 c ...
/dev/sdc2 52 245 1558305 83 ...
パーティションテーブルの変更を保存します。~
Command (m for help): [w]
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with erro...
The kernel still uses the old table.
The new table will be used at the next reboot.
WARNING: If you have created or modified any DOS 6.x
partitions, please see the fdisk manual page for additio...
information.
Syncing disks.
** ファイルシステムのフォーマット [#g51c7516]
FAT32パーティションとLinuxパーティションをそれぞれフォー...
FAT32とEXT3の文字列の部分はパーティションのラベルになりま...
お好きな名前で設定してください。~
$ [sudo mkfs.msdos -F 32 /dev/sdc1 -n FAT32]
mkfs.msdos 2.11 (12 Mar 2005)
$ [sudo mkfs.ext3 -L EXT3 /dev/sdc2]
mke2fs 1.40-WIP (14-Nov-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
195072 inodes, 389576 blocks
19478 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=402653184
12 block groups
32768 blocks per group, 32768 fragments per group
16256 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting informatio...
* prebuilt-image のファイルの配置 [#a5b17eea]
**FAT32パーティションへのファイルの配置 [#g32d86a9]
FAT32パーティションのファイルには配置方法に制限があります...
作業環境でアーカイブを一旦展開します。~
$ mkdir ~/FAT
$ [tar xvfz FAT.tar.gz -C FAT/]
展開すると以下のファイルが含まれています。~
$ ls FAT
MLO boot.scr u-boot.bin uImage
1段目のブートローダであるX-Loader(MLO)は、~
SDカード上の配置方法に制限があります。~
必ず以下のように配置してください。~
~
- FAT32パーティションのフォーマット後、最初に配置するよう...
- パーティション内のトップディレクトリに配置します。
$ [cp MLO /media/FAT32/]
他のファイルには配置方法に特に制限はありません。~
そのままSDカード上にコピーしてください。~
$ [cp u-boot.bin boot.scr uImage /media/FAT32/]
配置する順序を間違えたり、手順に失敗したりした場合には、~
FAT32パーティションのフォーマットからやり直すのが確実です...
***EXT3パーティションへのファイルの配置 [#g73e209f]
ext3パーティションのファイルの配置には特に制限はありませ...
アーカイブを直接SDカード上に展開します。~
$ [sudo tar xvfz ext3.tar.gz -C /media/EXT3]
~
以上で prebuild イメージのSDカード上への配置は完了です。~
念のため sync を行ってからアンマウントしてください。
$ [sudo sync]
$ [umount /media/EXT3]
$ [umount /media/FAT32]
* SDカードからの起動 [#w6faa303]
用意できたSDカードをbc10のSDカードスロットに挿入して電源...
Androidは初回起動時にSQLite3設定DBの作成やDalvik EXecutab...
それらの起動ディスクへの書き込みを行いますので、初回起動...
* 補足 [#ceeee919]
** 制限事項について [#b46cce0b]
*** USBデバイスの認識について [#xa427e90]
USBカメラ接続時にUSBデバイスがdisconnectされUSBデバイスが...
その際は電源を切り再度電源を入れなおしてください。~
またAC給電のUSBハブ経由でも起こることがあります。~
詳細は現在調査中です。~
** CameraPreview Overlayについて [#hedf8add]
- カメラのプレビュー表示時に、ハードウェアオーバレイを使...
- 仕様・制限は以下のとおりです。
-- V4L2カメラで動作します。
-- カメラ解像度の設定は640*480固定です。
-- 表示領域に合わせて、画面の拡大・縮小が可能です。拡大・...
-- アプリケーション作成時は、Cameraに登録するSurfaceView...
-- ビルド済みAndroidに搭載されているCameraアプリケション...
カメラモードのオプションとビデオモードはそれぞれハードウ...
-- この変更点の動作確認はLogicool Orbit AFで行っています...
Linux UVCに対応したUSBカメラであればどれでも動作可能です。
** Android 起動時の build.prop [#oc206437]
デフォルトの表示デバイスro.sf.lcd_densityは120に設定して...
DVIに出力の際はアイコン表示など画面に比べて小さく表示され...
ro.sf.lcd_densityを160に変更して再起動してください。~
$ cd ~/TI_Android_FroYo_DevKit-V2/Android_Source_Manife...
$ vi build.prop
(略)
ro.sf.lcd_density=120
** Performance_Apps の導入について [#pa0d4ada]
注:このPerformance_Appsの導入については必須ではありませ...
Performance_Appsは 2D、3Dの描画やCPUベンチマークソフト群...
ベンチマークを導入したい場合は以下の手順をご覧ください。~
デフォルト設定の状態でインストールすると、LuncherからLunc...
Contacts、Mms、SpeechRecorderが削除されます。~
[[TI_Android_DevKit 02_00_00 Product Download Page>http:/...
上記WebページにあるPerformance_Apps.tar.gzをダウンロード...
Performance_Appsはapkで提供されています。
また標準で Luncher2 もコピーされContactsが削除されるため~
HOME画面上のボタン表示が変化します。~
(電話アイコンの位置にPerformance_Apps アイコンが表示され...
$ wget http://software-dl.ti.com/dsps/dsps_public_sw/sdo...
$ tar xvfz Performance_Apps.tar.gz
$ cd Performance_Apps
install_rowboperf.shを実行時にエラーが発生します、~
以下のように修正をします。~
$ vi install_rowboperf.sh
*** 13,18 ****
--- 13,19 ----
echo "Error: Rootfs location `basename $1` does not exist"
exit $E_BADARGS
fi
+ cd -
echo "Rootfs location is $1"
完了後Android userlandを指定してスクリプトを実行します。~
$ ./install_rowboperf.sh ~/TI_Android_FroYo_DevKit-V2/An...
install_rowboperf.shで追加されるapkと削除されるapkは以下...
cp -r ./0xbench/Benchmark-release.apk $1/system/app/
cp -r ./0xbench/armeabi/* $1/system/bin/
cp ./3D/OGLES* $1/system/app/
cp ./3D/lib* $1/system/lib/
cp ./StorageIO/StorageIO.apk $1/system/app/
cp ./rowboatBench/rowboat.benchmark.runner-debug.apk $1/...
cp -r ./RowboPERF/bin/armeabi-v7a/* $1/system/bin/
cp ./RowboPERF/RowboPERF.apk $1/system/app/
cp ./StorageIO/StorageIO.apk $1/system/app/
cp ./Launcher2/Launcher2.apk $1/system/app/
rm $1/system/app/Contacts.apk
rm $1/system/app/Mms.apk
rm $1/system/app/SpeechRecorder.apk
** Android SGX について [#b80953e2]
init.rc の最終行に記載のとおりSGX 機能が有効の設定になっ...
不要の場合はコメントアウトで無効にしてください。~
注:無効にした際にGUIの再描画が行われているため画面に若干...
~
またkernel 、userland更新時は更新されたkernel、userlandを...
SGXのリビルドが必要になります。~
$ vi /media/LABEL2/init.rc
# Start PowerVR SGX DDK
service pvr /system/bin/sgx/rc.pvr start
** bc10 Wifi 設定手順 [#a7be2574]
Android GUI上からのWifi ON/OFF機能を実装していません。~
起動の際にシリアルコンソールでinsmod、netcfgコマンドで動...
対象となるUSB-Wifi機器はRT3070 搭載の以下の機器になります...
メーカー 型番 対応 Device ID
Buffalo WLI-UC-GN 0411:015d
上記のRT3070USBデバイスをbc10 に接続し起動します。~
シリアルコンソールで以下のようなデバイス認識を確認します。~
以下の例はWLI-UC-GNでの接続例です。~
...
usb 1-2.4: new high speed USB device using ehci-omap and...
usb 1-2.4: New USB device found, idVendor=0411, idProduc...
usb 1-2.4: New USB device strings: Mfr=1, Product=2, Ser...
usb 1-2.4: Product: 802.11 n WLAN
usb 1-2.4: Manufacturer: Ralink
usb 1-2.4: SerialNumber: 1.0
...
rt3070sta.koファイルをinsmod し、netcfgコマンドでデバイス...
RT2870STA.datはファイル内で指定したSSID への接続に使用し...
以下にシリアルコンソールからのnetcfg dhcp接続までの例を記...
(出力されるログは省略しています)~
# cd /system/lib/modules
# ls
rt3070sta.ko
# netcfg
lo UP 127.0.0.1 255.0.0.0 0x00000049
# insmod rt3070sta.ko
...
# netcfg
lo UP 127.0.0.1 255.0.0.0 0x00000049
ra0 DOWN 0.0.0.0 0.0.0.0 0x00001002
# netcfg ra0 up
...
# netcfg
lo UP 127.0.0.1 255.0.0.0 0x00000049
ra0 UP 0.0.0.0 0.0.0.0 0x00001043
# netcfg ra0 dhcp
# netcfg
lo UP 127.0.0.1 255.0.0.0 0x00000049
ra0 UP 192.168.13.4 255.255.255.0 0x00001043
#
- RT2870STA.datについて~
RT2870STA.dat はSSID の指定、認証方式、暗号化方式などを設...
~
以下にXXX-BCというSSID(認証方式:AuthMode OPEN、暗号化方...
暗号キーの文字タイプ:Key1Type 1(acsii)、暗号キー:Key1Str ...
の接続設定例を記載します。~
~
接続設定の詳細については 2011_0107_RT3070_RT3370_Linux_ST...
をご覧ください。~
SSID=XXX-BC
(略)
AuthMode=OPEN
EncrypType=WEP
WPAPSK=
DefaultKeyID=1
Key1Type=1
Key1Str=xxx.testessid
Key2Type=0
** SDカードについて [#oaa7b071]
bc10でSDカード動作確認をとったSDカードは以下のものになり...
- SanDisk Ultra CLASS4 15MB/s 2GB
-- 型番:SDSDH-002G-J95
-- http://www.sandisk.co.jp/products/sd-sdhc-sdxc-cards/s...
同タイプのCLASS 2では起動、および動作が遅いという報告を受...
~
記載されている全てのSDカードの動作確認は取っておりません...
TI-Android-FroYo-DevKit-V2.2 UserGuide(本バージョンはV2...
~
[[SD_Card_Recommendations>http://processors.wiki.ti.com/i...
~
* 参照URL [#e90654f8]
- rowboatコミュニティー ~
-- http://code.google.com/p/rowboat/
- rowboat ConfigureAndBuild ~
-- http://code.google.com/p/rowboat/wiki/ConfigureAndBuil...
- TI-Android-FroYo-DevKit-V2_ReleaseNotes ~
-- http://processors.wiki.ti.com/index.php/TI-Android-Fro...
- TI-Android-FroYo-DevKit-V2_UserGuide ~
--http://processors.wiki.ti.com/index.php/TI-Android-FroY...
- [Armadillo:06309] Re: Armadillo-440 で使用可能な無線LA...
-- http://lists.atmark-techno.com/pipermail/armadillo/201...
* 更新記録 [#ya37e16c]
2011/01/27 初稿記載、文言修正~
2011/02/01 文言追加および修正~
2011/04/21 SDカードについてを追記~
ページ名:
BC::labsへの質問は、bc9-dev @ googlegroups.com までお願い致します。