Texas Instruments DVEVM(未検証)

DVEVMは、本家Texas Instrumentsが提供するBeaglebord用の開発環境です。
元の記事は、ここにあります。
DVEVMの概要は、ホストマシン上の開発ディレクトリをNFSファイルとして公開し、Beagleboardのカーネルとルートファイルシステムを、NFSからロードすると言うものです。
ホストの開発ディレクトリ上で開発修正を行い、Beagleboardをリブートするだけでターゲット上のテストができるので便利です。 また、多くのデモも含まれているようですしカーネルソースも最新のものが置かれているようです。
NFSサーバー方式は、AMR9などボード上のフラッシュメモリしかなかった頃によく使われた手法ですね。
BeagleboardでのSDカードを使ったオフライン開発が手軽で気に入っているのと、DVEMVの手順が長いのでこの内容は、全くテストしていません。 ただ、せっかく調べたので一応、載せておきます。
実行される場合は、くれぐれも自己責任で行ってください。

DVEVM Software Setup

アプリケーションの開発を始めるには、DVEVM開発環境をインストールする必要が有ります。
このセクションでは、開発ホスト上にDVEVMソフトウェアをロードするために必要な手順の概要を説明します。
始めるにはダウンロードページからファイルをダウンロードする必要があります。

OMAP35xソフトアプローチは、ビデオやオーディオのコーデックの最適化や、製作準備を提供します。
これらのコーデックは、構成可能なフレームワークに組み込まれ、そして迅速なソフトウェアの実装のための一般的なオペレーティングシステム(Linuxなど) 内で公開されているAPIを介して表示されています。
以下のソフトがダウンロードページで提供されています。

・Decode demonstration software これは、EVMのNANDフラッシュ上に設けられている。ハードワイヤードの例では、オーディオとビデオをデコードする。
・TI DVSDK Software これは、デモアプリケーション、コーデックエンジンソフトウェア、例のコーデックのサーバ、DVTBとDVSDKドキュメントが含まれています。 それには、次のファイルが含まれています。
・Getting Started Guide (this link)
・DVSDK Product Release Notes
・DVSDK Product Installer (dvsdk_#_##_##_##_Setup.bin)
・OMAP3525/OMAP3530 DVSDK 関連
・Linux TSPA DSP Codec サーバーインストーラ (cs1omap3530_setupLinux_1_00_01-03.bin)
・Linux TSPA DSP Codec サーバーリリースノート
・Demonstration Multimedia Files-containing audio and video clips (data_dvsdk_#_##_##_##.tar.gz)
・DVSDK OMAP3525/3530 Demo Overlay containing prebuilt DVSDK Binaries/Multimedia files. これは既存のPSPファイルシステムに追加する必要が有ります。
・Complete DVSDK file system including Pre-built DVSDK Binaries [overlay] and self starting DVSDK demos - NFSマウントに適しています
・Complete DVSDK file system including Pre-built DVSDK Binaries [overlay] and self starting DVSDK demos - JFFS2 ファイルシステムフォーマット
・Prebuilt Kernel image for OMAP3525 and OMAP3530 default configuration (uImage-omap35x-evm.bin -これはバイナリのインストーラではなく、 OMAP3x EVMに起動するためにそれを使用するuImage - omap35x - EVMに名前を変更する必要があることに注意してください
・Prebuilt u-boot image for OMAP3525 and OMAP3530 default configuration (u-boot-omap35x-evm.bin)

・Linux Platform SupportPackage
・PSP Release Notes
・PSP User Guide
・PSP Data Sheet
・PSP Product Installer(AM35x-OMAP353x-PSP-SDK-seuplinux-##.##.##.##.bin) このインストールファイルは、Linuxソースと OMAP353xプラットホーム用バイナリー、OMAP35x用Linux開発に必要なツースが含まれます>

コマンドプロンプトガイド


host $ ホストLinuxワークステーションのシェルウィンドウに入力するコマンドを示します。
EVM # EVMボードのシリアルポートに接続されたコンソールウィンドウ内のU - Bootシェルに入力するコマンドを示します。
target $ EVMボードのシリアルポートに接続した端末ウィンドウで、Linuxシェルに入力するコマンドを示します。

インストールの準備


ホストシステム上で、以下の.binファイルをダウンロードします。少なくとも1 GBの空き容量が必要です。 インストールした後、インストールファイルを削除することができますので、/ tmpなどのディレクトリを推奨します。

AM35x-OMAP35x-PSP-SDK-##.##.##.##.tgz
dvsdk_#_##_##_##_Setup.bin
TI-C6x-CGT-v#.#.##.bin
cs1omap3530_setupLinux_#_##_##-##.bin
overlay_dvsdk_#_##_##_##.tar.gz
nfs_dvsdk_#_##_##_##.tar.gz
rootfs_dvsdk_#_##_##_##.jffs2
data_dvsdk_#_##_##_##.tar.gz

3.00.00.02まで、代わりにAM35x - OMAP35x - PSP - SDK - ##.##.##.##. tgz形式のDVSDKバージョンの場合には、 OMAP35x - PSP - SDK - setuplinux - ##.##.をダウンロードする必要があります。さらに、次のファイルも必要です。

xdctools_setuplinux_#_##_##.bin
bios_setuplinux_#_##_##.bin

すべてのbinファイルが実行可能なパーミッションを設定します。
host $ chmod +x *.bin

ソフトウエアのインストール


次の手順でDVEVM関連に使用されているソフトウェアをインストールします。
各リンク
・ Installing the Target Linux Software
・ Installing the DVSDK Software
・ Installing the A/V demo diles
・ Installing the toolchain
・ Exporting a Share File System for Target Access

ターゲットLinuxソフトのインストール


このセクションでは、ターゲットボード上で使用するためにLinuxをインストールする方法について説明します。
ターゲットとホストのLinuxワークステーションでLinuxの別のバージョンが使用されているることに注意してください。 OMAP35x DVEVMでは次のLinuxホストオペレーティングシステムが使用されています。
Red Hat Enterprise Linux, Workstation V4, x86 32 bit

Linuxソフトウェアをインストールするには、次の手順を実行します。
1. DVSDK 3.01以降では、AM35x - OMAP35x - PSP - SDK - ##.##.##.##. tgzを解凍する必要があります。それらを一時的な場所にコピーし展開する

host $ cd /tmp
host $ tar -xvfz AM35x-OMAP35x-PSP-SDK-##.##.##.##.tgz

1. DVSDK3.00以前の説明あり (略)

注)OMAP35x DVEVMに付属のLinuxサポートパッケージ(LSP)は、マルチプラットフォームのLSPであり、特定のプラットフォーム用に構成されていません。 それは最初のユーザーエリアにコピーして設定/のOMAP35x EVMを構築する必要があります。 再構築の手順については、Linuxカーネルのセクションを参照してください。

DVSDK Softwareのインストール (DVSDK version 3.01.00.09 以降)


DVSDKには、デモ、サンプルソフト、エンジニアコンポーネントコーデック、DSP/BIOSリンク、xDAIS xDMヘッダファイル。 ローカルパワーモジュール、フレームワークコンポーネント、が含まれています。 また、DVSDKは、コーデックのテストを可能にするデジタルビデオのテストベンチ、そして、ボックスのデモの外では不可能な様々な構成を持つLSPが含まれています。
注)XDC、DSP / BIOSとコード生成ツールのインストーラは(コード生成)別のデフォルトのインストール場所を持っている。 しかし、我々は強く(あなたが既に別の場所でこれらのコンポーネントのLinuxバージョンをインストールしていない場合)一緒にコンポーネントを配置するためにデフォルトのインストール場所を変更することをお勧めします。 これは、ビルドのセットアップ手順を簡素化します。
DVSDK Linuxインストーラを使用してDVSDKソフトウェアをインストールするには、次の手順を実行します。

1. ユーザーアカウントを使用してログインします。次の手順では、我々は"?"としてホームディレクトリを参照してください。
2. ダウンロードしたDVSDKのインストーラを実行します。

host $ ./dvsdk_#_##_##_##_Setup.bin

インストーラは、GUIアプリケーションとして起動されます。
ダイアログボックスの指示に従ってください。あなたは、エンドユーザライセンス契約に同意するように求められます。 あなたがインストール場所を求めるプロンプトが表示されたら、デフォルトのインストール場所として、 /home/[useracct]/dvsdk/dvsdk_#_##_##_##を指定してください。
この場所は、この文書全体を通してDVSDKのインストールフォルダとして使用されます。 また、cgtools、CodeSourcery、toolchaiin、Codec server、PSPのインストールディレクトリの場所も要求されます。 これはまたデフォルトでパスを設定した後、Rules.makeで適切にインストール場所を編集することができます。
注)この段階ではCodec serverパッケージはインストールされていません。 もう一度コーデックサーバーをインストールするためにデフォルトのパスを指定することをお勧めします。

1. コーデックサーバーのインストーラを実行します。

host $ ./cs1omap3530_setupLinux_#_##_##-##.bin

インストール場所を求めるプロンプトが表示されたら、ステップ2で作成したディレクトリの下の場所にインストールしてください。 例えば /home/[useracct]/dvsdk/dvsdk_#_##_##_##

1. コードジェネレーションツールをインストールします。例えば

host $ ./TI-C6x-CGT-v#.#.##.bin

インストール場所を求めるプロンプトが表示されたら、ステップ2で作成したディレクトリの下の場所にインストールしてください。
手順2で作成したDVSDKのインストールフォルダの下にそれをインストールする場合は、DVSDKのインストールフォルダの下に新しいフォルダを作成し、インストールに進みます。 例えば /home/[useracct]/dvsdk/dvsdk_#_##_##_##/cg6x_#_#_##

1. インストーラの指示に従って環境変数を設定することを忘れないでください。例えば、 bash

host $ export=C6X_DIR=/home/[useracct]/dvsdk/dvsdk_#_##_##_##/cg6x_#_#_#/include:/home/[useracct]/dvsdk/dvsdk_#_##_##_##/cg6x_#_#_#/lib

これで、一時ディレクトリにロードされた。binファイルを削除することができます。
注)それぞれのインストールディレクトリにアンインストールファイルを使用してこれらのコンポーネントをアンインストールすることができます。

host $ cd /home/[useracct]/dvsdk/dvsdk_#_##_##_##/xdctools_#_#_#
host $ ./unistall

DVSDK Softwareのインストール (DVSDK version 3.01.00.02以前)
省略

A/Vデモファイルのインストール


TI DVSDKソフトウェアのインストーラは、それ自体がデモで使用されているメディアファイルが含まれていません。 あなたはDVSDKのダウンロードページからデータファイルをダウンロードすることができます。 目的の場所にメディアファイルを抽出するために下記の手順を使用してください。 ダウンロードページには、デモで使用されているオーディオ/ビデオファイルが含まれています。 前のセクションの手順を実行した後、A / Vファイルをインストールするには、次の手順に従います。

1. 以前に設定したDVSDKディレクトリに移動します。
host $ cd ~/dvsdk/dvsdk_#_##_##_##/clips
2. あなたのDVSDKクリップディレクトリにダウンロードページからダウンロードしているA / Vデータをコピーします。
host $ cp data_dvsdk_#_##_##_##.tar.gz .
3. A/V dataファイルを展開します
host $ tar -xvzf data_dvsdk_#_##_##_##.tar.gz

ツールチェーンのインストール


このガイドでは、ツールチェインCodeSourcery社のLiteバージョンの使用を想定しています。 このEVMでまたは他のケースの付属の評価版を使用している場合は、CodeSourceryのマニュアルを参照してください。

DVSDK 3.01に使用するツールチェインバージョン
ツールチェーンはARM GNU/Linux EABI 2009q1 を使います。

ツールチェインをインストールするには、以下のシーケンスに従ってください。これらは、Linuxホストのプラットフォーム上で実行されることです。

$ mkdir ?p /home/[useracct]/toolchain
$ cp arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 /home/[useracct]/toolchain
$ cd /home/[useracct]/toolchain
$ tar -jxvf arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
$ rm arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2

DVSDK v3.00用のツールチェーンバージョン


省略

ターゲットアクセス用共有ファイルシステムのエクスポート


ボードのNANDフラッシュは、ファイルシステムが含まれていますが、開発時にはターゲットボードの NFSマウントのホストのLinuxワークステーション上のファイルシステムを用意した方が便利です。一度アプリケーションをテストするには、 スタンドアロンのデモ用ボードのフラッシュに保存することができます。 ボードは、ターゲットファイルシステムをマウントする前に、ホストのLinuxワークステーションで、 そのターゲットファイルシステムをエクスポートする必要があります。ファイルシステムがNFS(ネットワークファイルシステム)サーバを使用しています。 エクスポートされたファイルシステムは、ターゲットのファイルシステムとexecutabが含まれます。

NFSサーバからファイルシステムをエクスポートするには、次の手順を実行します。あなたは一度だけ、次の手順を実行する必要があります。

1. ホストのLinuxワークステーション上のユーザーアカウントでログインします。
2. OMAP35x EVMのターゲットファイルシステムの場所を準備するには、次のコマンドを実行します。

host $ cd ~
host $ mkdir -p workdir/filesys
host $ cd workdir/filesys

3. ホストLinuxワークステーション上でrootにユーザーを切り替えます。

host $ su
password:
上記のようにパスワードを入力するためのプロンプトが表示されます。 root権限を取得するため、rootのパスワードを入力します
4. 既に(NFSイメージを再構築の項を参照)、NFSルートファイルシステムに使用するディレクトリツリーを用意している場合には、 次のステップに進むことができます。
それ以外の場合は、ダウンロードページから、手順2で作成した新しいディレクトリにOMAP3530 DVSDKから準備されたバージョン (nfs_dvsdk_ #_##_##_##. tar.gzを)コピーする。次のコマンドを実行します。注)Un-tarはルート権限が必要です。

$ cd /tmp/nfs_dvsdk_#_##_##_##.tar.gz .
$ tar -xvzf nfs_dvsdk_#_##_##_##.tar.gz

5. あなたのユーザーアカウントを使用してターゲットファイルシステム内のoptフォルダのアクセス権を設定することにより、 ファイルシステム内のoptフォルダに書き込むことができることを確認してください。

host $ chown -R [useracct] /home/[useracct]/workdir/filesys/opt

また、あなたはNFSとしてエクスポートするターゲットのファイルシステム内のフォルダを書き込みまたは作成する権限を持たせる場合、次のコマンドを実行

host $ chown -R [useracct] /home/[useracct]/workdir/filesys

6. NFSサーバが正しく設定され、機能していることを確認してください。サーバの/ etc / exportsファイルに次の行を追加します。 このファイルを編集する前にroot権限を持っていることを確認します。

/home/[useracct]/workdir/filesys

注)いくつかのシステムでは、次のような警告を避けるためにno_subtree_checkコマンドのオプションを追加したい場合があります。
exportfs: /etc/exports [3]: Neither 'subtree_check' or 'no_subtree_check' specified for export [export listed here].
Assuming default behaviour ('no_subtree_check').
NOTE: this default has changed since nfs-utils version 1.0.x

7. 次に、新しいエクスポートされたディレクトリについてのNFSサーバを通知するために、次のコマンドを発行します。

host $ /usr/sbin/exportfs -a

Redhat Linuxの場合
host $ /sbin/sevice nfs restart

Ubuntuの場合
host $ /etc/init.d/nfs-kernel-server restart

8. サーバのファイアウォールがオフになっていることを確認します。

host $ /etc/init.d/iptables status
ファイアウォールが実行されている場合、それを無効にします。
hodt $ /etc/init.d/iptables stop

9. 上記のすべてのステップを完了した後、rootから出ることを確認してください

host $ exit

共有ファイルシステムのテスト


NFSのセットアップをテストするために、次のステップに従ってください。

1. 次のようにホストのLinuxワークステーションのIPアドレスを取得します。 eth0イーサネットポートに関連付けられたIPアドレスを探します。

host $ /sbin/ifconfig

2. セットアップのターミナルをRS-232経由でEVMボードに接続する端末エミュレーションウィンドウを開きます。 Windowsワークステーションを持っていれば、ハイパーターミナルを使用することができます。 あなたがLinuxワークステーションをお持ちの場合は、Minicomを使用することができます。
3. EVMボードの電源入れます。そして自動ブートシーケンス中にコンソールウィンドウでキーを押して、 U - BootがLinuxカーネルをブートする方法を設定するためのU - Bootのプロンプトを取得します。
4. コンソールウィンドウで次の環境変数を設定します。
EVN # setenv nfshost [ip address of nfs host ]
EVN # setenv rootpath [directory to mount ]

DVSDK release 3.01.00.09の場合 以下のbootargsを使います。
EVM # setenv bootargs "console=ttyS0,115200n8 noinitrd rw ip=dhcp root=/dev/nfs nfsroot=$(nfshost):$(rootpath),nolock mem=99M
mpurate=720 omapfb.rotate=1 omapfb.vrfb=y vram=10M omapfb.vram=0:10M omap_vout.vid1_static_vrfb_alloc=y"

注)setenv bootargsのコマンドは1行で入力する必要があること。それは時々余分な目に見えない文字を挿入することがあるので、 数字を入力するテンキーの使用を避ける必要があることに注意してください。これらの環境変数が完全に税込で入力する必要があります
[directory to mount]はステップ5でExportした共有ファイルシステムでなければなりません。例えば
/home/[user]/workdir/filesys

ヒント:EVMのNANDフラッシュメモリに保存されているカーネルのバージョンが古い場合は、 最新のカーネルイメージ(/ home /useracct>/AM35x-OMAP35x-PSP-SDK-##.##.##.##/images/kernelディレクトリ内のuImage) またはTFTPブートを使う必要が有ります。
ヒント;ご使用の環境変数のリストを表示するにはprintenvコマンドを使用することができます。 また、将来的にそれらを貼り付けることができますから。txtファイルでこれらのsetenvコマンドを保存することができます。

5. これらのコマンドのEVMボード上では、電源を入れ直すたびに再入力する必要がないように環境を保存します。

EVN # saveenv

6. NFSを使ってブートします

EVN # boot

7. これで、パスワードの必要ない"root"としてログインすることができます。 TFTP、NFS、またはボードのNANDフラッシュによるブートについては、代替の起動方法のセクションを参照してください。

プロダクトコーデック使用上の注意


省略

ビルド/開発環境のセットアップ


開発環境を設定し、環境を構築するには、次の手順を実行します。

1. NFSホストシステム上のユーザーアカウント(rootではありません)にログインします。
2. パスに/host/[useracct]/toolchain/[toolchain_version]/binを追加します。 これは通常、シェルのリソースファイルに追加の行を追加することによって行われます。(~/.bashrc)

PATH="/home/[useracct]/toolchain/[toolchain_version]/bin:$PATH"

これはパスにCadeSourcerytoolsを追加し、arm-none-linux-gnueabi-gccを実行できるようにします。

3. .bashを編集後、sourceコマンドを実行するのを忘れないでください。

host $ source .bashrc

4. 次のコマンドを使用して、正しくインストールされていることをテストすることができます。

host $ arm-none-linux-gnueabi-gcc -v

このコマンドを実行すると、以下のようなアウトプットが表示されるでしょう

Using built-in specs.
Target: arm-none-linux-gnueabi
Configured with: /scratch/sandra/lite/src/gcc-4.2/configure --build=i686-pc-linux-gnu --host=i686-pc-linux-gnu --target=arm-none-linux-gnueabi --enable-threads --disable-libmudflap --disable-libssp --disable-libgomp --disable-libstdcxx-pch --with-gnu-as --with-gnu-ld --enable-languages=c,c++ --enable-shared --enable-symvers=gnu --enable-__cxa_atexit --with-pkgversion=Sourcery G++ Lite 2008q1-126 --with-bugurl=https://support.codesourcery.com/GNUToolchain/ --disable-nls --prefix=/opt/codesourcery --with-sysroot=/opt/codesourcery/arm-none-linux-gnueabi/libc --with-build-sysroot=/scratch/sandra/lite/linux/install/arm-none-linux-gnueabi/libc --enable-poison-system-directories --with-build-time-tools=/scratch/sandra/lite/linux/install/arm-none-linux-gnueabi/bin --with-build-time-tools=/scratch/sandra/lite/linux/install/arm-none-linux-gnueabi/bin
Thread model: posix
gcc version 4.2.3 (Sourcery G++ Lite 2008q1-126)

簡単なプログラムを書いてEVN上での実行



あなたがターゲットアクセスのセクションとこの項の手順を続行する前にビルド/開発環境のセクションまでの設定のエクスポート、 共有ファイルシステムの手順を実行していることを確認してください。
ユーザーとして(rootでなく)、NFSホストシステム上で次の手順を実行します。

1. host $ mkdir -p ~/workdir/filesys/opt/hello
2. host $ cd ~/workdir/filesys/opt/hello
3. 次のhello.cコードを作成します。
#include [stdio.h]

int main() {
printf("Welcome to OMAP35x World!\n");
return 0;
}

4. ビルドします

host $ arm-none-linux-gnueabi-gcc hello.c -o hello

ターゲットボード上で次の手順を実行します。いずれかのターゲットのコンソールウィンドウ(セットアップのターミナルプログラムを参照) またはTelnetセッションを使用することができます。
1. ターゲットのディレクトリに移動します。

target $ cd /opt/hello

2. 実行します

./hello

実行結果は

Welcome to OMAP35x World!

ソフトのリビルド


このセクションでは、ソフトウェアデリバリーの作品を再構築する方法について説明します。 toolchainのセットアップとインストールが完了していることを確認してください(ツールチェインのインストールを参照)。

U-bootのリビルド


U-bootのリビルドがAM35x-OMAP35x-PSP-SDK-##.##.##.##/ docs/omap3530で利用可能なLSPユーザーガイドで詳細に記載されています。
UserGuide-##.##.##.##.pdf
ワークディレクトリ内のAM35x-PSP-SDK-##.##.##.##/src/u-bootからU-Bootソースアーカイブをコピーします。

host $ cd ~
host $ mkdir -p workdir /opt
host $ cp /home/[useracct]/AM35x-OMP35x-PSP-SDK-#.##.##.##/src/u-boot/u-boot-##.##.##.##.tar/gz ~/workdir/opt/.

U-Bootソースアーカイブを解凍します。

host $ cd workdir/opt
host $ tar -zxvf u-boot-##.##.##.##.tar.gz

U-Bootをビルドするために、コンフィガーします。

host $ cd uboot-##.##.##.##
host $ make CROSS_COMPILE=arm-none-linux-gnueagi- ARCH=arm distclean
host $ make CROSS_COMPILE=arm-none-linux-gnueagi- ARCH=arm omap3_evm_config

makeします

host $ make CROSS_COMPILE=arm-none-linux-gnueagi- ARCH=arm

現在のディレクトリ内にU - BootイメージのU - boot.binが出来上がります。

カーネルのリビルド


カーネルの再構築について、AM35x-OMAP35x-PSP-SDK-##.##.##.##/docs/omap3530/UserGuide- ##.##.##.#pdfユーザーガイドで詳しく説明しています。
注)カーネルを構築するためのmkimageは、U - BootのMakefileで構築されたホスト側のユーティリティにあるものを使用する。 もしまだ行っていない場合などの再構築のU - Bootのセクションの手順を使用してU - Bootのビルドしてください。
あなたのパスにU - bootとmkimageの場所を設定する必要があります。以下のようなコマンドを使用することができます。 もしbashシェルを使用している場合は、bashrcファイルに以下を追加します。

export PATH=/[path_to_uboot]/toosl:$PATH

作業ディレクトリにAM35x-OMAP35x-PSP-SDK-##.##.##.##/srcディレクトリからLinuxカーネルのソースアーカイブをコピーします。

host $ cd ~
host $ mkdir -p workdir/opt
host $ cp /home/[useracct]/AM35x-OMAP35x-PSP-SDK-##.##.##.##/src/kernel/linux-##.##.##.##.tar.gz ~/workdir/opt/.

以下のコマンドを実行することにより、Linuxカーネルのソースアーカイブを解凍します。

host $ cd /home/[useracct]/workdir/opt
host $ tar -zxvf linux-##.##.##.##.tar.gz

カーネルのビルドのための準備するためには、これらのコマンドは、次のとおりです。

host $ cd linux-##.##.##.##
host $ make CROSS_COMPILE=arm-none-linux-gnueabi- ARCH=amr omap3_evm_defconfig

デフォルトの設定を変更する必要がある場合は、次のコマンドを実行します。

host $make CROSS_COMPILE=arm-none-linux-gnueabi- ARCH=arm menuconfig

arch/arm/boot内にカーネルイメージのuImageが作成されます

次のコマンドは、ターゲットファイルシステムにモジュールをインストールしてモジュールの依存関係ファイルを作成します。

host $ su root
host $ make CROSS_COMPILE=arm-none-linux-gnueabi- INSTALL_MOD_PATH=[target filesys dir] ARCH=arm modules_install

あなたがスタートアップガイドに従ってきた場合、/ home/[useracct]/WORKDIR/filesysを作成しておく必要が有ります。 上記のコマンドでは、[target filesys dir]を/home/[useracct]/WORKDIR/filesys置き換えます。

DVSDKソフトウエアをターゲット用にリビルド


/ opt / DVSDKディレクトリにデモファイルを配置するには、DVSDKソフトウェアを再構築する必要があります。これを行うには、次の手順を実行します。
1. まだ行っていない場合はLinuxカーネル再構築のセクションで説明したように、Linuxカーネルを再構築します。
2. dvsdk_##_##_##_##にディレクトリを変更
3. Rule.makeファイルを変更します

host $ vi Rule.make

4. 次のディレクトリの定義を確認してください。あなたがデフォルトの場所にコンポーネントをインストールした場合、 ディレクトリの定義が既に正しいかもしれないが、あなたはどのような場合でもそれらを確認する必要があります。

・次のようにターゲットEVMボードに設定します
PLATFORM=omap3530
・DVSDK_INSTALL_DIRにDVSDKをインストールしたトップレベルディレクトリを指定します。デフォルトの${HOME}は/home/[useracct]を指します。
DVSDK_INSTALL_DIR=/home/[useracct]/dvsdk_#_##_##_##
・Linuxホスト上でXDCtoolsの場所と一致するように、必要に応じて次の変数を変更します。 我々はXDCtoolsが/ home/にインストールされることをお勧めします[useracct]/DVSDK/dvsdk_ #_##_##_##のディレクトリが、 他の場所にインストールしている可能性があります。
XDC_INSTALL_DIR=/home/[useracct]/dvsdk_#_##_##_##/xdctools_#_##_##_##
・NFSエクスポートされたファイルシステム上のoptディレクトリをEXEC_DIRで指定します。 NFSエクスポートファイルシステムをセットアップするための ターゲットからのアクセス用に共有ファイルシステムのエクスポートを参照してください。
EXEC_DIR=/home/[useracct]/workdir/filesys/opt/dvsdk/omap3530
・UBOOT_INSTALL_DIRにコピーしたubootのソース位置を指定します。
UBOOT_INSTALL_DOR=/home/[useracct]/workdir/opt/uboot-##.##.##.##
・LINUXKERNELINSTALL_DIRにビルドしたカーネルツリーのディレクトリを指定します。
LINUXKERNEL_INSTALL_DIR=/home/[useracct]/workdir/opt/linux-##.##.##.##
・OMAP3530_SDK?INSTALL_DIRを指定します
OMAP3530_SDK_INSTALL_DIR=/home/[useracct]/AM35c-PSP-SDK-##.##.##.##
・CSTOOL_DIRにツールチェーンの位置を指定指定します
CSTOOL_DIR=/hme/[useacct]/toolchain/[toolchain_version]
・CODEGEN_INSTALL_DIRを指定します
CODEGEN_INSTALL_DIR=/home/[useracct]/dvsdk/dvsdk_#_##_##_##/cg6x_#_#_##

注)PSP_INSTALL_DIRはアップデートする必要は有りません。これらはDVSDKがインストールされたディレクトリに指定されます。
インストール元として指定する場所と一致するすべてのコンポーネントのインストールディレクトリのパスを確認してください。 指定されたデフォルトの場所は、DVSDKのインストールの一部としてインストールされているコンポーネントのバージョンを選択します。

5. トップレベルDVSDK のMakefileはカーネルリビルド時にはDVSDKデモソフトウェア(CMEMとLPM)で必要とされる、 したがってそれは、少なくとも次のコマンドを(場合にはLinuの再構築の手順を実行していない実行するために非常に重要であるモジュール

host $ cd /home/[useracct]/workdir/opt/linux-##.##.##.##
host $ make CROSS_COMPILE=arm-none-linux-gnueabi- ARCH=arm omap3_evm_defconfig
host $ make CROSS_COMPILE=arm-none-linux-gnueabi- ARCH=arm modules

6. インストールが完了したら、DVSDKにインストールされているRules.makeがやコンポーネントに設定されたパスが適切であることを確認するには、 次のコマンドを使用してください。

host $ cd /home/[useracct]/dvsdk/dvsdk_#_##_##_##
host $ make check
host $ make info

7. Rules.makeがを含む同じディレクトリにある間、DVSDKデモアプリケーションを構築し、EXEC_DIRで指定されたターゲットファイルシステム上で生成された バイナリを置くために、次のコマンドを使用してください。

host $ make clean
host $ make all
host $ make install

注)make allコマンドは、DVSDKデモだけをビルドします、それはコンポーネントとDVTBに依存します

8. すべてのコンポーネントを洗浄し、構築するための追加のコマンドは、以下に記載されています。
注)AM35x - OMAP35x - PSP - SDK - ##.##.##.##/のsrc / examplesの下にPSPの例では、コマンドの下に使用する前に抽出する必要があります。

host $ make clobber
host $ make everything

9. コンポーネントを個別に構築する方法については以下のコマンドを使用してください。
注)特定のコンポーネントは、他のコンポーネントに依存しています。なので個々のコンポーネントのビルドに進む前に、make allコマンドを実行してください。

host $ make help

注)個々のコンポーネントのビルド用の依存関係は、最上位レベルのDVSDKのMakefileでは扱われていません。 make clobberか make clean を実行したとき、それから、個々のコンポーネントを make dmaiのようにビルドしようとしたとき、ビルドはファールになるでしょう。
一方、make clober そしてmake everythingを実行するならビルドは通りでしょう。それに加えて、個々のコンポーネントをcleaningしようとして、 同じようにもう一度ビルドするときも、ビルドは通るでしょう。例えば、make everythingを実行後、make dmai_clenを実行するならmake dmaiは動くでしょう。

DSP側サーバー実行のリビルド


DSP側のコーデックライブラリは、/ home/[useracct]/DVSDK/dvsdk_#_##_##_##/ cs1omap3530_ #_##_##のディレクトリか、 それをインストール済みの場合CODEC_INSTALL_DIRで指定された別の場所に有ります。
トップレベルのMakefileとconfig.bldファイルは、上述したようにトップレベルディレクトリの下に提供されています。 コーデックのバイナリ、ヘッダファイルだけでなく、ドキュメントは、RTSCパッケージと利用可能な home/¥[useracct]/DVSDK/dvsdk_#_##_##_##/ cs1omap3530_#_##_##/packages/ti/sdo/codecsフォルダの下にあります。
DSP側のコード生成ツールのパスの設定はconfig.bldファイルが正しく設定されていることを確認してください。

C64P.rootDir = /home/[useracct]/dvsdk/dvsdk_#_##_##_##/cg6x_#_#_# OR
C64P.rootDir=java.lang.System.getenv("CODEGEN_INSTALL_DIR");
cd /home/[useracct]/dvsdk/dvsdk_#_##_##_##/cs1omap3530_#_##_##
host $ make clean
host $ mak

サーバの実行ファイルのリビルドは/ home/[useracct]/DVSDK/dvsdk_ #_##_##_##/cs1omap3530_#_##_##/package/ti/sdo/serve/binディレクトリの中にあります、
そして、cs.x64Pという名前が付けられています。
DSPサイドサーバの実行可能ファイルは、以下のコマンドに従って、DVSDKのインストールディレクトリからビルドすることもできます。
DSP側のコード生成ツールはDVSDKのインストールディレクトリにRules.makeがで正しく設定されていることを確認します。

CODEGEN_INSTALL_DIR=/home/[useracct]/dvsdk/dvsdk_#_##_##_##/cg6x_#_#_##

DVSDKのインストールディレクトリからサーバーのりビルドは、次のコマンドを使用して行うことができます。

host $ cd /home/[useracct]/dvsdk/dvsdk_#_##_##_##
host $ make codrecs_clean
host $ make codecs
host $ make install

Initail NAND Xloaderのりビルド


作業ディレクトリのOMAP35x-PSP-SDK-##.##.##.##/src /boo-strapディレクトリからにX -ローダーのソースアーカイブをコピーします。

host $ cd ~
host $ mkdir -p workdir/opt
host $ cp x-loader-##.##.##.##.tar.gz ~/workdir/opt/.

X-Loaderソースアーカイブを展開

host $ cd xloader-##.##.##.##
host $ make omap3evm_config

X-Loaderのビルド

host $ make CROSS_COMPILE=arm-none-linux-gnueabi- ARCH=arm

上記のコマンドでx-loader.binが作成されます。しかし、OMAP35x ROMからブートされるためには、 AM35x-OMAP35x-PSP-SDK-##.##.##.##/host-tools/linuxディレクトリから、signGPで署名される必要が有ります。

host $ /home/[useracct]AM35x-OMAP35x-PSP-SDK-#.##.##.##/host-tools/linux/signGP x-loader.bin

結果の符号付きX -ローダーは、X - load.bin.iftと名づけられており、ターゲットのための準備ができているはずです。 このファイルをMMC / SDカードからブートするためにはMLOという名前になっている必要があります。

host $ cp x-loader.bin.if MLO

ターゲット側のUART ローダーのリビルド


注)これはDVSDK3.00.02.44以降で有効です
ワーキングディレクトリのAM35x-PSP-SDK-##.##.##.##/src/utilsディレクトリから UARTローダー dnld_util_target.tar.bz2をコピーします。

host $ cd ~
host $ makdir -p workdir/opt
host $ cp dnld-util-target.tar.bz2 ~/workdir/opt/.

UARTローダを展開します

host $ tar -jxvf dnld_util_target.tar.bz2
host $ cd dnld_util_target

ビルドします

host $ make CROSS_COMPILE=arm-none-linux-gnueabi- ARCH=arm

この結果、dnld_start_omap3_evm.binが作成されます。コノファイルは、UART周辺ブート用のDownloadUtility.exeで使われます。

NFSイメージのリビルド



AM35x SDKをNFS用にリビルドするには、詳しくはGSG_AM35x_EVM_Software_Setup#Rebuilding_the_NFS_Image(AM35xの一部入門ガイド)を参照してください。 これはにはデモやサンプルアプリケーションの別のセットが含まれます。
OMAP3535/OMAP3530 DVSDKのインストーラは、/DVSDK/dvsdk_#_##_##_##/targetfsフォルダの下にOMAP3525/OMAP3530 DVSDKデモを含むNFSイメージを構築するための スクリプトを持っています。
OMAP3530 DVSDKデモでNFSイメージを再構築するためには、OMAP35x DVEVN Software Setupセッションとターゲット用DVSDKのりビルドセッションの
ステップを実行してください。 注)また、overlay_dvsdk_#_##_##_##.tar.gzファイルを/ home/[useracct]/DVSDK/dvsdk_#_##_##_##/targetfsフォルダにコピーしたことを確認してください。


古いNFSタルボールイメージを削除します。
host $ cd /home/[useracct]/dvsdk_#_##_##_##/tagetfs
host $ sudo make -f targetfs_make clean_old_reboot DVSDKVER=[your version nember #_##_##_##]

新しいNFSタルボールイメージを作成します

host $ cd /home/[useracct]/dvsdk/dvsdk_#_##_##_##/targetfs>
host $ sudo make -f targetfs_make omap3530_dvsk_nfs DVSDKVER=[your version number #_##_##_##]

NFSクリエートログとテンポラリNFSディレクトリを削除します。

host $ cd /home/[useracct]/dvsdk/dvsdk_#_##_##_##/targetfs
host $ sudo make -f targefs_make clean_nfs DVSDKVER=[your version number #_##_##_##]

手順に関するhelpを見るには、以下のコマンドを実行してください

host $ make -f targetfs_make help

上記コマンドを実行するroot権限が必要です。ユーザーパスワードを要求されますので入力してください。 ユーザーは彼が/ etc / sudoersファイルに次の行を含めることにより、sudoのアクセス権を持っていることを確認することができます。

[useracct] ALL=(ALL) ALL

上記のコマンドを実行すると、DVSDKデモ実行可能ファイルとデモで必要とされるすべてのメディアファイルを新しいNFSファイルシステムを作成します。
カレントフォルダ(/home/[useracct]/dvsdk_#_##_##_##/targetfs)の下にnfs_dvsdk_#_##_##_##.tar.gzが作成されます。

フルRamdisk イメージのリビルド


AM35xSDK用のフルRamDiskイメージをリビルドするには、GSG:_AM35xEVM_Software_Setup#Rebuilding_the_Full_Ramdisk_Imageを実行してください。
これには、別のデモとサンプルセットが含まれています。
このフルRamDiskイメージは、解凍後に40MBを超えるOMAP3530 DVSDKデモを含んでのビルドが出来ません。そして、 ステップ5のRunning the Re-flash Procedureセッションのbootargsは動かないでしょう。

最小Ramdiskイメージのリビルド


AM35x SDK用最小RamdiskイメージとしてGSG:_AM35x_EVM_Software_Setup(AM35x Getting Start Guideパート)と実行してください。
最小Ramdiskは、デモやサンプルは含みません。

JFFS2ファイルシステムイメージのリビルド


AM35x SDK用jffs2イメージをリビルドするためには、GSG:_AM35x_EVM_Software_Setup#Rebuilding_the_JFFS2_File-System_Imageを実行してください。
これには、別のデモセットとサンプルアプリケーションが含まれます。
OMAP3525/OMPA3530 DVSDKインストーラはJFFS2のルートファイルシステムイメージのピュアビルドを持ちます。~/dvsdk/dvsdk_#_##_##_##/targetfsフォルダ下に OMAP3530/OMAP3530 DVSDKデモが含まれます。
ホストPC上のLinuxディストリビューションがmkfs.jffs2ユーティリティが含まれているかどうかを確認します。 されていない場合は、ftp://sources.redhat.com/pub/jffs2/mkfs.jffs2からバイナリをダウンロードしてください。
Linuxホストの開発用PCでの/ sbinディレクトリの下にこのバイナリを置き、。bashrcファイル内のPATH環境変数に/ sbinを含めるようにしてください。
OMAP3530 DVSDKデモでJFFS2ルートファイルシステムイメージを再構築するためには、あなたがターゲットにDVSDKソフトウェアを 再構築セクションOMAP35x DVEVMソフトウェアのセットアップとセクションの手順を実行したことを確認してください。その後、次の手順を実行します。
注)また、/home/[useracct]/dvsdk/dvsdk_#_##_##_##/targetfs フォルダに、overlay_dvsdk_#_##_##_##.tar.gzをコピーしていることを確認してください。

古いファイルシステムイメージを削除します

host $ cd /home/[useracct]/dvsdk/dvsdk_#_##_##_##/targetfs
host $ sudo make -f targetfs_make clean_old_rootfs DVSDKVER=[your version number #_##_##_##]

JFFS2イメージを作成します(これは、JFFS2イメージを作成するために、NFSイメージをビルドすることを求めます)

host $ cd /home/[useracct]/dvsdk/dvsdk_#_##_##_##/targetfs
host $ sudo make -f targetfs_make omap3530_dvsfk_jffs2 MKJFF2=[your_jffs2_install_path] DVSDKVER=[your version number #_##_##_##

現在のNFSファイルシステムのディレクトリを削除します

host $ cd /home/[useracct]/dvsdk/dvsdk_#_##_##_##/targetfs
host $ sudo make -f targetfs_make clean_nfs DVSDKVER=[your version number #_##_##_##

手順に関する説明については、以下のコマンドを実行してください

host $ make -f targetfs_make help

上記コマンドの実行にはルート権限が必要です。パスワードを要求されるので入力してください。
ユーザーは彼が/etc/sudoersファイルに次の行を含めることにより、sudoのアクセス権を持っていることを確認することができます。

[useracct] ALL=(ALL) ALL

上記のコマンドを実行すると、DVSDKデモ実行可能ファイルとデモで必要とされるすべてのメディアファイルを新しいNFSとJFFS2ルートファイルシステムを作成します。
カレントフォルダ(/home/[useracct]/dvsdk/dvsdk_#_##_##_##/targetfs)に nfs_dvsdk#_##_##_##.tar.gzと rootfs_dvsdk_#_##_##_##.jffs2ファイルが作成されます。

inserted by FC2 system