スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

OpenDinguxミニ解析

/etc/inittabには
># Launch the main application
>tty1::respawn:/usr/sbin/frontend_start

となっていて/usr/sbin/frontend_start を実行する

frontend_startでは、
/usr/local/sbin/frontend_startがあればそちらを実行し、
無ければgmenu2xが立ち上がる。
スポンサーサイト

dingux インストーラ作成

■u-boot編

svn checkout http://dingoo-linux.googlecode.com/svn/trunk/u-boot-1.1.6 u-boot-1.1.6

svn diff > ../u-boot-patch-svn.diff
patch -p0 < ../u-boot-patch-svn.diff


make a320_nand_config
make


■既存のインストーラを書き換える
toolchain_build_mipsel/linux-2.6.24.3-dingux/scripts

http://clogging.web.fc2.com/dingoo/extract-initrd.txt
をダウンロード

sh extract-initrd.txt zImage-???
とすると
initrd.extracted
が抽出される

次にfakerootを使用し、cpioを展開する。(mknodの作成が必要な為)
書き換え後、
再度cpioを作成する場合、fakerootを終了させる前に行う。

■SPLソーイングセット
これらの長くて面倒なSPLのインストーラ作成を自動的に行うキットを作成。

http://code.google.com/p/dingux-code/downloads/detail?name=SPL_sewing_set.zip&can=2&q=

dinguxのためのbuildrootによるrootfs構築方法

dingux : how to build your own rootfs with buidroot.

buildrootにより環境を構築することで、以下が可能になります。

1.rootfsの構築
2.linux kernelのコンパイル
3.hwinitなどのバイナリの構築

1はこのプロセスで行われ、
2と3は追加作業が必要になります。
(ここでは書きません…)

■必要なファイル
buildroot-2009.05-dingux.patched.tar.bz2
http://buildroot-2009.05-dingux.patched.tar.bz2

linux-2.6.24.3-dingux.tar.bz2


■基本環境
ネット接続環境
ubuntu 11.10を利用
VirtualBoxなどのVM利用をおすすめ
環境用HDDは空き容量20GB程度
ディスクイメージからのインストール&アップデート

■手順
まずは各種ツールのインストールです。
sudo apt-get install g++などとして、以下のツールをインストールします。

g++
bison
flex
gettext
patch
libtinfo-dev(terminfo)
subversion
libncurses5-dev
makeinfo(必要なら?)

次に、buildroot本体をダウンロード、
tar xjvfで解凍します。

buildroot.configを.configに上書きコピーします。

make menuconfigとして、
ESCを二回押し、設定を保存して終了します。

/optディレクトリのアクセス権限を変更します。
sudo chmod a+rwx /opt

linux-2.6.24.3-dingux.tar.bz2をダウンロード、
buildrootのフォルダ直下にdlディレクトリを作成し、コピーします。

そしてmakeを行います。

binariesフォルダにrootfsの生成物が、
/opt以下にコンパイラやライブラリ等の出来上がります。

■このbuildrootで変更されたもの
linux kernel、uClibc用のunidef.cに対するパッチが取り込まれた。
libmikmod.mkのパッチの自動化。
Tremorをsvnからではなくサイトからのダウンロードに変更。(automakeに不具合があったため)
ダウンロードサイトをeasynewsから、sources.buildroot.netに変更。

■tips
これは自動化の作業の際のメモです。

linux kernelのソースコードは、
svn checkout http://dingoo-linux.googlecode.com/svn/trunk/ dingoo-linux-read-only
で入手。

ディレクトリのリネーム
mv linux-2.6.24.3 linux-2.6.24.3-dingux

unidefのパッチを当てます。
cd linux-2.6.24.3-dingux/extra/scripts
patch < unidef.patch

パッチはuClibc-0.9.30.1のextra/scriptsにも、同じものを利用します。

圧縮
tar cjvf linux-2.6.24.3-dingux.tar.bz2 linux-2.6.24.3-dingux

libmikmod.mk
最後の一行をpackageからpackage/multimediaに変更することで自動パッチが可能に。

libvorbis.mk
Tremor最新版ではautoconfに難があった。

■buildrootメモ
make distcleanだけではconfig部分のオブジェクトが削除されないので、
cd package/configで
make distcleanとすることで初期化が可能になります。

OpenDingux開発者向けプレリリース

OpenDinguxの主に開発者に向けたバイナリがリリースされました。

http://www.treewalker.org/opendingux/

上記リンクよりリリースされました。
主に開発者向けではありますが、Linux 3.0をベースに高機能化が進められています。

http://dingoowiki.com/index.php?title=Dingux:OpenDinguxより、特性一覧の日本語訳

特性:
1) RTCとアラーム機能 (もしdingooがサスペンドモードであれば復帰する。誰かクロックラジオを…?
3) オーバークロック問題のないTV出力、スクリーンと内蔵スピーカーの電源がオフになります。
5) Swap-Fileサポート
6) NAND読み出しサポート (4GB内蔵メモリへのリードオンリーアクセス) とNANDレイアウトの自動認識(1x4GB , 2x2GBをサポート)
7) zRAMサポート
8) ALSAを利用した新しいオーディオドライバ ( OSSは無効化されている )
10) ダブルバッファをサポートした新しいビデオドライバ
11) オーバクロックのためのCPUFreq
12) Watchdog(ウォッチドッグ): システムがクラッシュした場合に一定時間後リブートする
13) サスペンド/レジューム support new
14) メモリサイズの自動認識 ( A320とA330の両方を一つのカーネルで )
15) 新しいILI9338 LCDパネルのサポート

http://dingoowiki.com/index.php?title=Dingux:OpenDingux:FAQ#Power_Switch_Daemon

OpenDinguxではパワースイッチデーモンを搭載することによって、
パワースライダーをボタンの同時押しでいくつかの機能のショートカットとして利用できます。

方向キー上下 : ボリュームの増減
方向キー左右 : バックライトの増減
Bボタン : マウスエミュレーションモードへの移行、通常に戻す際はpower+Bボタンをもう一度
Aボタン : dingooをサスペンドさせる。dingooは一日以上サスペンド可能。パワースライダーにより復帰(レジューム)
Yボタン : TV-outの有効化、無効化。有効化で内蔵スピーカーのミュートと本体画面の電源がオフになります。
Xボタン : スクリーンショットの撮影。SDカードのlocal/home/screenshotsに"screenshotX.png"として保存されます。

Lボタン + Rボタン : シャットダウン
スタート + セレクト : 再起動

なお、ショートカットは、パワースライダーをスライド後にボタンを入力、
スライドを離すことで起動するようです。タイミングをお間違えのないようにお気をつけを。

A320基本メモ

人は使わない記憶は重要であっても忘れてしまうので記録を残すんですね。
頭で覚えておくっていうのはこの情報量が多い社会では通用しないのかもしれません苦笑

というわけで、A320に関するメモです。

基本スペック
dingoo A320
CPU:jz4740(MIPS互換)
RAM:32MB

jz4740はCPUにROMとしてIPLを内蔵している。
NANDやNORにあるSPL読み出しモードと、
USBモードがあって、RESET時の入力状態で選択できる。

A320が選べるのはB+RESETのUSBモードと、
NAND読み出しモード。

USBモードはUSBからのコマンド待機状態になり、
usb bootやusbtoolから初期化コードなどを送ってプログラムを実行することができる。

プロフィール

BouKiCHi

Author:BouKiCHi
ABOUT ME
MAIL:alf_byncyou at hotmail.com

WEB:http://clogging.web.fc2.com/
TWITTER:@bkc_alf

月別アーカイブ

FC2カウンター

ブロとも申請フォーム

ブログ内検索

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。