[Armadillo:05754] Armadillo-440 カーネルをXIPにしている場合のフレームバッファーとネットワークの不具合

Jeff Sun email@hidden
2010年 8月 29日 (日) 21:42:00 JST


皆さん、
初めまして、孫と申します。

最近Armadillo-440のボードを使って、LinuxカーネルをXIPで動かそうとしています。
ブートローダとカーネルを修正して、XIPでブートはできましたが、フレームバッ
ファーとネットワークに不具合があって、原因がなかなか分からないので、困ってい
ます。

XIPでブートするために、ブートローダとカーネルに、具体的に以下のことをしま
した。

 * ブートローダ:hermit-at-2.0.1
    - 大きなカーネルをサポートするために、カーネルの最大サイズを2Mから5Mにし
      ました。
    - xipという新しいコマンドを追加して、xip <addr> で addrに置いてある
      XIPカーネルイメージをブートするようにしました。

 * カーネル:linux-2.6.26-at10
   - MTD_XIPをサポートしていないため、armadillo400_mtd_nor_init()をコメント
     アウトしました。

 * カーネルコンフィグレーション
   - CONFIG_XIP_KERNELをyにしました。
   - CONFIG_XIP_PHYS_ADDRを0xa0020000にしました。
   - CMDLINEの修正。メモリサイズ、IPアドレスなどを指定しました。NFSが使えな
     いため、ルートファイルシステムをSDカードに指定しました。

ブートローダとカーネルの修正及びコンフィグファイルを添付しています。

ルートファイルシステムをSDカードに置いて、この修正したブートローダで以下のコ
マンドを実行して、XIPカーネルをブートします。

 hermit> tftpdl 10.1.137.2 10.0.29.100 --kernel=armadillo/xipImage
 # xipImageが0xa0020000に書き込まれます。

 hermit> xip 0xa0020000

カーネルがボートできますが、以下の症状が起きています。

 * フレームバッファー
   - 画像が表示されていますが、画面にノイズがあります。カサカサする点々が出
     ています。

 * ネットワーク
   - NFSが使えません。telnetなどでボードにも繋げないです。
   - ホストからping -s <packet size> <board addr>で、ボードをpingする時、
     packet sizeが100以下の場合しか成功できません。

しかし、他の一切を修正せずに、ただXIPのアドレスを0xa0020000の様なNOR flash区間で
はなくて、0x82000000の様なSDRAMの区間にして、そこからブートすれば、何の問題
もないです。

これはハードウェアの電波障害に見えますが、ソフトウェアの問題かハードウェアの
問題か、そして何の問題であるか、こっちは判断しにくいので、この現象に心当たり
のある方居らっしゃらないでしょうか。


以上、よろしくお願い致します。

ソン キンヒ
孫 勁飛
-------------- next part --------------
HTMLの添付ファイルを保管しました...
URL: <http://lists.atmark-techno.com/pipermail/armadillo/attachments/20100829/38f8f60c/attachment.html>
-------------- next part --------------
テキスト形式以外の添付ファイルを保管しました...
ファイル名: hermit-xip.patch
型:         text/x-diff
サイズ:     3061 バイト
説明:       無し
URL:        <http://lists.atmark-techno.com/pipermail/armadillo/attachments/20100829/38f8f60c/attachment.patch>
-------------- next part --------------
テキスト形式以外の添付ファイルを保管しました...
ファイル名: kernel.patch
型:         text/x-diff
サイズ:     730 バイト
説明:       無し
URL:        <http://lists.atmark-techno.com/pipermail/armadillo/attachments/20100829/38f8f60c/attachment-0001.patch>
-------------- next part --------------
テキスト形式以外の添付ファイルを保管しました...
ファイル名: kernel_config
型:         application/octet-stream
サイズ:     43016 バイト
説明:       無し
URL:        <http://lists.atmark-techno.com/pipermail/armadillo/attachments/20100829/38f8f60c/attachment.obj>


armadillo メーリングリストの案内