[Suzaku:01413] 追加IPに対するLinumドライバエラー

浅野 email@hidden
2009年 3月 2日 (月) 16:47:19 JST


浅野です。

SUZAKU-Vを購入して開発を進めておりますが
EDK環境で追加したIPが、新規作成Linuxドライバから
アクセスできません。
マニュアルを見てもうまくいかないので、お手数ですが、
方法について教えて下さい。


■環境
 SZ410 EDK 10.1i
※スターターキット付ですが、機能は不要なため、
 SZ410-SILでなくSZ410で立ち上げ
----------------------------------------------------------------
■ハードウエア開発
 1) sz410-20080718.zip 展開し、xps_proj.xmp立ち上げ
 2) GPIO新規追加
    0xF0FF_A400 - 0xF0FF_A5FF
3) Software Generate Libraries ..........
  xparameters.h 生成
4) Hardware Netlist
5) Generate Bitstream

 6) SUZAKU Board JP2ショートし、
   DeviceConfiguration Download Bitstream
----------------------------------------------------------------
■ドライバ、ファーム開発
 1) test_driver.c 生成
DeviceMajorNo 60
2) /linux-2.6.x/arch/ppc/platforms/4xx/xparameters/xparameters_sz410.h
をEDKで生成した\ppc405_sysytem\include\xparameters.h
   に差し替え
3) make 実行し、
romfs/lib/modules/2.6.18-at7/kernel/drivers/char に登録

 4) テストファーム test_fw.c 生成
   make 、 make romfs 実行

 5) make image
 6) image ファイルをhermit でダウンロード
--------------------------------------------------------------------
■実機デバッグ
 1)modprobe test_driver
実行すると、クラッシュしたようなメッセージが出力されます。

〜〜〜 以下、メッセージ 〜〜〜
  ops: machine check, sig: 7 [#1]
NIP: C0021168 LR: C500F1F0 CTR: C0021160
REGS: c0205f50 TRAP: 0202 Not tainted (2.6.18-at7)
MSR: 00029030 <EE,ME,IR,DR> CR: 35005533 XER: C000007F
TASK = c0562410[161] 'exe' THREAD: c3e60000
GPR00: C500F1F0 C3E61E40 C0562410 C500F62C 000000D0 00000100 00000000
C006F6A0
GPR08: 80808081 C5012404 00000001 C0021160 95005533 100417C0 00000010
C500CECC
GPR16: C057EF40 C500CBEC 00000124 00000000 C0041350 C500C8D4 C500CC3C
C500FCC8
GPR24: C500C000 00000012 00000012 C500FC80 C3E49ED8 C500FC80 C5010000
C5010000
NIP [C0021168] printk+0x8/0x60
LR [C500F1F0] init_module+0xc0/0x3c0 [i2c_c]
Call Trace:
[C3E61E40] [C0505840] 0xc0505840 (unreliable)
[C3E61E80] [C500F1B8] init_module+0x88/0x3c0 [i2c_c]
[C3E61E90] [C0042444] sys_init_module+0x174/0x1590
[C3E61F40] [C0002EF4] ret_from_syscall+0x0/0x3c
Instruction dump:
39200001 387787a4 913787a4 38630004 900a41c0 48017f45 4bfffcd4 60000000
60000000 60000000 7c0802a6 9421ffc0 <90010044> 91210030 38000001 39200000
Bus error
modprobe: failed to load module test_driver
〜〜〜〜

※但し、追加IPでなくもともとの用意されているIPだと問題なくアクセスできます。
※追加IPでもEDK環境だとアクセスできるので、ハードウエアは問題なく生成でき
るように
 思えます。


宜しくお願いします。





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