[Armadillo:00766] Re: PC104バスの16ビットアクセスについて

井上 崇 email@hidden
2005年 12月 26日 (月) 17:51:02 JST


お世話になります。井上です。

peek16とpoke16でのPC/104バスの動作を確認いたしました。
リード&ライトとも、16ビット1パルスでの動作でした。

この事により、PC/104バスはハード的には
問題の無いことが確認できました。
ありがとうございます。

しかし、Linuxが起動後には、16ビットでのアクセスが出来ません。
以下に確認した手順を記載します。

使用ソース
atmark-dist-20051017
linux-2.4.31-a9-2

ソース moduletest.c
#define MODULE
#define __KERNEL__

#include <linux/module.h>

int init_module(void)
{
 unsigned short i;
 unsigned short *map;

 map=(unsigned short *)(0xf700f000);

 i = (*map);
 i = ~i;
 (*map) = i;

 return 0;
}

単独でのビルド
arm-linux-gcc -c moduletest.c -Wall -Wstrict-prototypes -O -I 
/home/guest/linux-2.4.31-a9-2/include/

ビルドして作成した、moduletest.oファイルをarmadillo-9に転送し
insmod moduletest.o
を実行して、PC/104バスの波形より確認しています。
リード&ライトが2回づつ出力されています。

以上、宜しくお願いします。


----- Original Message ----- 
From: "Fumito Morishima" <email@hidden>
To: "Armadillo series general discussion list" 
<email@hidden>
Sent: Monday, December 26, 2005 4:54 PM
Subject: [Armadillo:00765] Re: PC104バスの16ビットアクセスについて


> 森島です。
>
> 16ビットアクセスは可能です。
> hermit(bootloader)の任意のアドレスを読書きする機能を使って
> 実際に確認しました。
>
> この方法ですが、まずJP2をショートさせhermitのプロンプトを
> 表示させてから、"frob"と入力します。
> これで、任意のアドレスの読書きが可能なモードになります。
> readは peek <addr>, writeは poke <addr> <value> で行います。
> (help と入力するとコマンドの説明が表示されます。)
>
> 今回は、peek16 0x22000000 と入力してPC/104の16bitアクセスを
> 確認しています。
>
> この機能は、簡単にレジスタの値を読書きする方法として
> とても重宝します。
>
> 井上 崇 wrote:
>> お世話になります。井上です。
>>
>> Armadillo-9でPC/104バスに16ビットでアクセスできずに困っています。
>> PC/104 16bit−I/O仮想エリア
>> PC/104 16bit−メモリ仮想エリア
>> 両アドレスとも偶数アドレスと奇数アドレスを8ビットづつアクセスしてしまいます。
>>
>>
>> データバスの(D15〜D0)を使用した16ビットアクセスさせる方法を
>> ご教授いただけないでしょうか?
>>
>> よろしくお願いします。
>>
>> 使用ソース
>> atmark-dist-20051017
>> linux-2.4.31-a9-2
>>
>>
>> _______________________________________________
>> armadillo mailing list
>> email@hidden
>> http://lists.atmark-techno.com/mailman/listinfo/armadillo
> _______________________________________________
> armadillo mailing list
> email@hidden
> http://lists.atmark-techno.com/mailman/listinfo/armadillo 




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