[Armadillo:08619] Armadillo-440のADC/TSCのドライバについて

Hiroki Ishiura email@hidden
2013年 2月 14日 (木) 15:53:13 JST


石浦です。
お世話になっております。


Armadillo-440にA4サイズのLCDタッチパネル(4線式)をつけたターゲッ
トと付属のATDE3を使ってGUIアプリを開発しています。

このターゲット、電源を入れてから当方が作成したGUIアプリが使える
ようになるまでの途中で、時折ですが xfbdev が異常終了していること
があります。

調べてみたところ、xfbdevがタッチパネルデバイスのオープンに失敗し
ていて、さらにカーネルのADC/TSCを制御している辺りのソースを読ん
でみたところ、これは推測ですが、ADCの値がFIFOに入ってきていない
か壊れた値が入ってきて、止まっているようです。

ここから本題ですが、ソースをi.MX25のデータシートと見比べたところ、
値が食い違っているところがありました。

ATDE3のソースでは、
  linux-2.6.26-at13/drivers/mxc/adc/imx_adc_reg.h
      #define TSC_4WIRE_PRECHARGE    0x150c
      #define TSC_4WIRE_TOUCH_DETECT 0x570e

データシート(IMX25RM_Rev1.pdf)の44.2.5 Example Programsでは、
  2. config tcq as 4-wire touch-screen measurement
      #define TSC_4WIRE_PRECHARGE    0x158C
      #define TSC_4WIRE_TOUCH_DETECT 0x578E

となっています。
これはやはり、ATDE3のソース側の値が間違っているのでしょうか?。
そして、この値が間違っていると、タッチパネルの座標が読めない(値
がFIFOに入ってこない)という可能性はあるのでしょうか?。


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




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