[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 メーリングリストの案内