MINI2440標準Linuxカーネルのext3対応2009年08月19日 18時59分20秒

viviから起動させる標準のLinux2.6.29カーネルですが、ext3に対応していないようです。

標準状態

SDメモリーカードに対してfdiskで以下のパーティションを作成。

  • fat
  • linux
  • swap

linuxパーティションについてはmkfs.ext3でファイルシステムを構築。 なぜext3なのかといえば、先人の残骸のubootの状態としてrootfsをSDメモリーカードの第2パーティションでかつext3という指定だったから。

個人的にはext2で十分だと思いますが、とりあえずなぞるという意味でext3を選択。

しかし、標準のカーネルはext3に対応していないため、viviでブート後にマウントすることができませんでした。 マウントポイントとしてはあらかじめ「mkdir /sdext3」を実行して準備しています。 以下は、起動後にSDメモリーカードを入れたところ。 FATパーティションのマウントは自動で行われることがわかります。

[root@FriendlyARM /]#
[root@FriendlyARM /]# s3c2440-sdi s3c2440-sdi: running at 0kHz (requested: 0kHz).
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
s3c2440-sdi s3c2440-sdi: running at 16875kHz (requested: 25000kHz).
s3c2440-sdi s3c2440-sdi: running at 16875kHz (requested: 25000kHz).
mmc0: new SD card at address b368
mmcblk0: mmc0:b368 SD    1.86 GiB
 mmcblk0: p1 p2 p3
FAT: utf8 is not a recommended IO charset for FAT filesystems, filesystem will be case sensitive!

[root@FriendlyARM /]# df
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/root                63152     48656     14496  77% /
tmpfs                    30400         0     30400   0% /dev/shm
/dev/sdcard             207396      2048    205348   1% /sdcard
[root@FriendlyARM /]# ls
bin         home        lost+found  root        sdext3      usr
dev         lib         opt         sbin        sys         var
etc         linuxrc     proc        sdcard      tmp         www
[root@FriendlyARM /]# mount -t ext3 /dev/mmcblk0p2 /sdext3
mount: mounting /dev/mmcblk0p2 on /sdext3 failed: No such device
[root@FriendlyARM /]#

ext3対応のカーネルの作成

  1. クロス環境の構築(arm-linux-gcc-4.3.2.tgzの展開)
  2. .bashrcにPATH追加
  3. カーネルソースの取得(linux-2.6.29-mini2440-20090609.tgz)と展開
  4. zImage_N35のconfigファイルを.configにコピー
  5. meke menuconfigを実行し、ext3fsを追加
  6. make zImage

ちなみに、欲張ってNTFS対応なども選択してみたのですが、NAND FLashのカーネル用の領域をオーバーしたので断念。 ext3の追加だけならかろうじて大丈夫でした。

新しいカーネルをNAND Flashに書き込み

  1. TeraTerm起動
  2. NOR Flash起動
  3. USB接続
  4. DNW起動
  5. TeraTerm(vivi)で「k」コマンド選択
  6. DNWで作成したzImageを選択して書き込み

新しいカーネルで起動してext3のマウントを試す

[root@FriendlyARM /]# s3c2440-sdi s3c2440-sdi: running at 0kHz (requested: 0kHz).
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
s3c2440-sdi s3c2440-sdi: running at 198kHz (requested: 197kHz).
s3c2440-sdi s3c2440-sdi: running at 16875kHz (requested: 25000kHz).
s3c2440-sdi s3c2440-sdi: running at 16875kHz (requested: 25000kHz).
mmc0: new SD card at address b368
mmcblk0: mmc0:b368 SD    1.86 GiB
 mmcblk0: p1 p2 p3
FAT: utf8 is not a recommended IO charset for FAT filesystems, filesystem will be case sensitive!

[root@FriendlyARM /]# df
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/root                63152     48656     14496  77% /
tmpfs                    30332         0     30332   0% /dev/shm
/dev/sdcard             207396      2048    205348   1% /sdcard
[root@FriendlyARM /]# ls
bin         home        lost+found  root        sdext3      usr
dev         lib         opt         sbin        sys         var
etc         linuxrc     proc        sdcard      tmp         www
[root@FriendlyARM /]# mount -t ext3 /dev/mmcblk0p2 /sdext3
kjournald starting.  Commit interval 5 seconds
EXT3 FS on mmcblk0p2, internal journal
EXT3-fs: recovery complete.
EXT3-fs: mounted filesystem with ordered data mode.
[root@FriendlyARM /]# df
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/root                63152     48656     14496  77% /
tmpfs                    30332         0     30332   0% /dev/shm
/dev/sdcard             207396      2048    205348   1% /sdcard
/dev/mmcblk0p2         1412816     89376   1251672   7% /sdext3
[root@FriendlyARM /]#

コメント

コメントをどうぞ

※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。

※なお、送られたコメントはブログの管理者が確認するまで公開されません。

※投稿には管理者が設定した質問に答える必要があります。

名前:
メールアドレス:
URL:
次の質問に答えてください:
このブログでは「組込み」と「組み込み」のどちらを使っている?

コメント:

トラックバック

このエントリのトラックバックURL: http://kumikomi.asablo.jp/blog/2009/08/19/4524370/tb

※なお、送られたトラックバックはブログの管理者が確認するまで公開されません。