[Armadillo:05571] Re: armadillo-9 上での GPIO アクセスについて

nakai email@hidden
2010年 8月 4日 (水) 21:56:04 JST


nakaiです。

> 最初に 10/185 で /dev/gpio を mknod したところ、open はできるが
> ioctl で NGでした。そこで 10/186 も試したという経緯になります。
> 他に何か確認することはありますでしょうか。

そうでしたか。
それでは、ビルド環境だと思います。
sampleはどのようにビルドしましたか?

たぶん、
カーネルが知っているEP93XX_GPIO_OUTと、
ビルド時のEP93XX_GPIO_OUTが違うために問題が起きていると推測します。



(2010/08/04 21:52), t wrote:
> nakaiさま
> 
> 返答ありがとうございました。
> 
> 10/08/04 nakai<email@hidden>:
>> nakaiです。
>>
>>> mailing list archive みまして /dev/gpio の major/minor
>>> が違うかもしれないと思いましたが、10/186 の dev file では
>>> open error でそもそも dev file が open できませんでした。
>>
>> デバイスノードは、miscの
>>    19 #ifndef GPIO_MINOR
>>    20 #define GPIO_MINOR 185
>>    21 #endif
>> のため、10, 185だと思います。
>> この番号で試してもらえますか?
> 
> 最初に 10/185 で /dev/gpio を mknod したところ、open はできるが
> ioctl で NGでした。そこで 10/186 も試したという経緯になります。
> 他に何か確認することはありますでしょうか。
> 
> 宜しくお願い致します。
> 
>>> 最近 armadillo-9 を購入しまして、gpio を使って I/F する
>>> プログラムを開発しようとしております。
>>>
>>> 付属の CD-R に gpio の sample program がありましたので
>>> 下記環境下 (debian on CF) でコンパイルし動作させました。
>>> access したのは sample と同じ CON4 #7&8 です。
>>> まずは方向を決め
>>>           d.device = EP93XX_GPIO_PBDDR;
>>>           d.mask   = 0x00000003;
>>>           d.data   = 0x00000002;
>>>           st=ioctl(fd, EP93XX_GPIO_OUT,&d);
>>> gpio 動作検証のため、このうち #8 に 0 を書きました
>>>           d.device = EP93XX_GPIO_PBDR;
>>>           d.mask   = 0x00000002;
>>>           d.data   = 0x00000000;
>>>           ioctl(fd, EP93XX_GPIO_OUT,&d);
>>> が、オシロで確認したところ H のままでした。ちなみに、他の
>>> ビットが変わっていないか COM4/COM5 の POWER/GND 以外の
>>> 全てのピンをあたりましたが、L のピンはありませんでした。
>>>
>>> debug 目的でioctl 部の return value を確認したところ
>>> DDR の設定部 (上記 1 つめの ioctl) で -1 が返ってきました。
>>> perror で error 内容を確認すると
>>>         Unknown error 515
>>> が戻ってきました。以上のことから、register access が
>>> 正常にできていないと判断しました。
>>>
>>> マニュアルを読みましたが、GPIO を使うために、特に、
>>> 設定を変更する部分もないように思われます。
>>>
>>> もし当方の operation での問題点や、他に確認することなど
>>> ありましたらご指摘願えませんでしょうか。宜しくお願い致します。
>>>
>>> 当方の環境です。
>>> 単体で compile を含めた作業環境を構築するために、software
>>> manual の section 12 を参照して作業しました。
>>> CF に
>>> http://armadillo.atmark-techno.com/armadillo-9/downloads
>>> から debian 環境構築用ファイルを download&   展開し、
>>> kernel は同じ directory の v2.6.12.3-a9-17 を
>>> download し /boot におきました。念の為、
>>> ブートローダ (eth対応) も Hermit-At で download
>>> しました。uname は
>>> # uname -a
>>> Linux debian 2.6.12.3-a9-17 #1 Thu Mar 19 13:47:09 JST 2009 armv4tl
>>> GNU/Linux
>>> です。
>>> on-chip の kernel/userland も同サイトの
>>> v2.6.12.3-a9-17 / v2.3-a9-17
>>> を download しました。JP1/JP2 ともに open として
>>> on-chip に download した kernel から起動しています。
>>>
>>> もしかすると kernel で gpio off になっているのかと
>>> atmark-dist + kernel source
>>> を download しまして make config しましたが、
>>> gpio は default で on になっているようです。
>>> (make all するには package がたりず今はできて
>>> おりません)
>>>
>>> mailing list archive みまして /dev/gpio の major/minor
>>> が違うかもしれないと思いましたが、10/186 の dev file では
>>> open error でそもそも dev file が open できませんでした。
>>>
>>> 以上です。宜しくお願い致します。
>>> _______________________________________________
>>> armadillo mailing list
>>> email@hidden
>>> http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/armadillo
>>>
>>
>> _______________________________________________
>> armadillo mailing list
>> email@hidden
>> http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/armadillo
>>
> _______________________________________________
> armadillo mailing list
> email@hidden
> http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/armadillo
> 




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