[Armadillo:03891] Re: Quixunのタッチパネルで同じ座標データしか読めない
email@hidden
2009年 1月 11日 (日) 01:54:26 JST
zzztakemituです。
【質問】
>> tkUSBという名前で追加されたが、
>insmodでモジュールのインストールはできたが、
>> デバイス認識してくれない。
>USBポートにQT-702を挿しても、dmesgに何も表示されない
という意味合いでしょうか?
【回答】
insmodでモジュールのインストールとありますが、
その方法は使用しておりません。
下記に行った手順を記しました。
USBポートにQT-702を挿すと下記メッセージが出ます。
usb 1-1.3: new low speed USB device using ep93xxusb and address 5
input: USB HID v1.12 Pointer [eGalax Inc. Touch] on
しかしながら、QT-701のドライバと同じ現象になります。
[email@hidden (ttyAM0) ~]# mknod /dev/input/ts0 c 13 128
[email@hidden (ttyAM0) ~]# cat /dev/input/ts0 |od -x
0000000 0001 fff4 ffef 1e94 0001 fff4 ffef
1f83
---------------------------------------------
下記の手順で行いました。
1、クイックサンのサイトからドライバを入手
LINUX用/約11MB/ZIP形式
<http://www.quixun.co.jp/support/qt-702.html>
2、ファイルを解凍
Kernel_2.6 の中のTouchKit-1/08.1227-32b-k26.tar.gzを解凍
[PC]$ tar zxvf TouchKit-1/08.1227-32b-k26.tar.gz
3、MakeFileの置き換え
TouchKit-USBSrc-Makefileは使用せずに、atmark-dist-開発者ガイドを参考
に作成したものに置き換え。
atmark-dist 開発者ガイド 44ページ
<http://armadillo.atmark-techno.com/files/downloads/dist/atmark-dist_d
evelopers_guide_ja-1.0.4.pdf>
作成したMakefileの内容
MODULES = tkusb.o
ifneq ($(KERNELRELEASE),)
obj-m := $(MODULES)
#CFLAGS_MODULE += -DDEBUG
else
ROOTDIR ?=
/home/zzztakemitu/Desktop/work/20081022/atmark-dist-20081022
ROMFSDIR = $(ROOTDIR)/romfs
include $(ROOTDIR)/.config
include $(ROOTDIR)/config.arch
MAKEARCH = $(MAKE) ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILE)
LINUXDIR = $(CONFIG_LINUXDIR)
KERNELRELEASE = ${shell make -sc $(ROOTDIR)/$(LINUXDIR) kernelrelease}
all: modules romfs
modules:
$(MAKEARCH) -C $(ROOTDIR)/$(LINUXDIR) M=${shell pwd} modules
romfs:
make -C $(ROOTDIR) INSTALL_MOD_DIR=kernel/drivers/usb/input \
M=${shell pwd} modules_install
$(ROOTDIR)/user/busybox/examples/depmod.pl -b \
$(ROMFSDIR)/lib/modules/$(KERNELRELEASE) &> /dev/null
clean:
-rm -f *.[oas] *.ko *.mod.c .*.d .*.tmp .*.cmd *.symvers
-rm -rf .tmp_versions
distclean: clean
-rm -f *-
endif
4、ビルド
[PC /USBSrc]$ make modules
同じフォルダに下記ファイルが生成
tkusb.ko
tkusb.o
tkusb.mod.o
5、インストール
[PC /USBSrc]$ make romfs
atmark-dist内のromfs/lib/modules/[version]/kernel/drivers/usb/inputの
中にtkusb.koが入っていることを確認。
6、Imageファイルの作成
[PC /atmark-dist]$ make image
7、ディレクトリ追加
ソースコードとヘッダファイルを
atmark-dist/linux-2.6.x/drivers/usb/inputに下記をコピー
includeフォルダ
mkmodule.cmd
tkusb.c
tkusb.h
tkusb.mod.c
tkusb_dbg.h
Kconfigを編集
追加
config TKUSB
tristate "TKUSB"
depends on USB && INPUT
Makefaleを編集
追加
obj-$(CONFIG_TKUSB) += tkusb.o
[PC /atmark-dist]$ make menuconfig
Device Drivers --->
Input device support --->
<*>Touchscreen interface
(600) Horizonal screen resolution
(800) Vertical screen resolution
USB support --->
<*>USB Human Interface Device(full HID) support
[*]HID input layer support
[ ]eGalax TouchKit USB Touchscreen Driver(これはOFF)
[*]tkusb(NEW)
[PC /atmark-dist]$ make
8、hermit にてImageファイル書き込み
romfs.img とlinux.bin.gz
9、armadillo-9を再起動
Hermit-At v1.1.17 (armadillo9) compiled at 15:20:39, Apr 9 2008
hermit> b
Uncompressing
kernel...........................................................Uncom
pressing
ramdisk...........................................................Doin
g video=ep93xxfb:CRT-800x600,24bpp
Doing console=ttyAM0,115200
Doing
mtdparts=armadillo9-nor:0x10000(bootloader)ro,0x170000(kernel),0x67000
0(u)Linux version 2.6.12.3-a9-14 (email@hidden) (gcc
version 4.1.2 200619CPU: ARM920Tid(wb) [41129200] revision 0 (ARMv4T)
CPU0: D VIVT write-back cache
CPU0: I cache: 16384 bytes, associativity 64, 32 byte lines, 8 sets
CPU0: D cache: 16384 bytes, associativity 64, 32 byte lines, 8 sets
Machine: Armadillo-9
Memory policy: ECC disabled, Data cache writeback
Built 1 zonelists
Kernel command line: video=ep93xxfb:CRT-800x600,24bpp
console=ttyAM0,115200 mtd)PID hash table entries: 512 (order: 9, 8192
bytes)
Console: colour dummy device 80x30
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory: 32MB 32MB = 64MB total
Memory: 55580KB available (2313K code, 573K data, 100K init)
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
checking if image is initramfs...it isn't (bad gzip magic numbers);
looks like dFreeing initrd memory: 6144K
NET: Registered protocol family 16
SCSI subsystem initialized
usbcore: registered new driver usbfs
usbcore: registered new driver hub
NetWinder Floating Point Emulator V0.97 (double precision)
devfs: 2004-01-31 Richard Gooch (email@hidden)
devfs: boot_options: 0x0
Console: switching to colour frame buffer device 100x37
fb0: EP93xx frame buffer at 800x600x24
ttyAM0 at MMIO 0x808c0000 (irq = 52) is a EP93XX
ttyAM1 at MMIO 0x808d0000 (irq = 54) is a EP93XX
ttyAM2 at MMIO 0x808e0000 (irq = 55) is a EP93XX
io scheduler noop registered
io scheduler anticipatory registered
io scheduler deadline registered
io scheduler cfq registered
RAMDISK driver initialized: 16 RAM disks of 16384K size 1024 blocksize
loop: loaded (max 8 devices)
i2c /dev entries driver
i2c-armadillo9: i2c Armadillo-9 driver, (C) 2004-2007 Atmark Techno,
Inc.
i2c-at24cxx: i2c at24cxx eeprom driver, (C) 2003-2005 Atmark Techno,
Inc.
i2c-s3531a: Device Type [S-353x0A]
i2c-s3531a: i2c S-3531A/S-353X0A driver, (C) 2001-2005 Atmark Techno,
Inc.
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 50MHz system bus speed for PIO modes; override with
idebus=xx
No card in slot: PFDR=000000ff
armadillo9-nor: Found 1 x16 devices at 0x0 in 16-bit bank
Amd/Fujitsu Extended Query Table at 0x0040
armadillo9-nor: CFI does not contain boot bank location. Assuming top.
number of CFI chips: 1
cfi_cmdset_0002: Disabling erase-suspend-program due to code
brokenness.
4 cmdlinepart partitions found on MTD device armadillo9-nor
parse_mtd_partitions:4
Creating 4 MTD partitions on "armadillo9-nor":
0x00000000-0x00010000 : "bootloader"
0x00010000-0x00180000 : "kernel"
0x00180000-0x007f0000 : "userland"
0x007f0000-0x00800000 : "config"
ep93xxusb ep93xxusb.0: EP93xx OHCI
ep93xxusb ep93xxusb.0: new USB bus registered, assigned bus number 1
ep93xxusb ep93xxusb.0: irq 56, io base 0xff020000
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 3 ports detected
usbcore: registered new driver audio
drivers/usb/class/audio.c: v1.0.0:USB Audio Class driver
Initializing USB Mass Storage driver...
usb 1-1: new full speed USB device using ep93xxusb and address 2
hub 1-1:1.0: USB hub found
hub 1-1:1.0: 7 ports detected
usbcore: registered new driver usb-storage
USB Mass Storage support registered.
usbcore: registered new driver usbhid
drivers/usb/input/hid-core.c: v2.01:USB HID core driver
usb 1-1.2: new low speed USB device using ep93xxusb and address 3
input: USB HID v1.10 Keyboard [ USB Keyboard] on usb-ep93xxusb.0-1.2
input: USB HID v1.10 Device [ USB Keyboard] on usb-ep93xxusb.0-1.2
usb 1-1.3: new low speed USB device using ep93xxusb and address 4
input: USB HID v1.12 Pointer [eGalax Inc. Touch] on
usb-ep93xxusb.0-1.3
usbcore: registered new driver TouchKit
usbcore: registered new driver usbserial
drivers/usb/serial/usb-serial.c: USB Serial support registered for
Generic
usbcore: registered new driver usbserial_generic
drivers/usb/serial/usb-serial.c: USB Serial Driver core v2.0
mice: PS/2 mouse device common for all mice
ts: Compaq touchscreen protocol output
NET: Registered protocol family 2
IP: routing cache hash table of 512 buckets, 4Kbytes
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
ip_tables: (C) 2000-2002 Netfilter core team
NET: Registered protocol family 1
NET: Registered protocol family 17
RAMDISK: ext2 filesystem found at block 0
RAMDISK: Loading 6144KiB [1 disk] into ram disk... done.
VFS: Mounted root (ext2 filesystem).
Freeing init memory: 100K
init started: BusyBox v1.00 (2009.01.03-15:25+0000) multi-call binary
Starting fsck for root filesystem.
fsck 1.25 (20-Sep-2001)
ext2fs_check_if_mount: No such file or directory while determining
whether /dev./dev/ram0: clean, 684/1024 files, 4317/6144 blocks
Checking root filesystem: done
Remounting root rw: done
Mounting proc: done
Mounting usbfs: done
Cleaning up system: done
Running local start scripts.
Changing file permissions: done
Configure /home/ftp: done
Starting syslogd: done
Starting klogd: done
Starting basic firewall: done
Loading /etc/config: done
Setting hostname: done
Configuring network interfaces: info, udhcpc (v0.9.9-pre) started
debug, Sending discover...
debug, Sending select for 192.168.1.13...
info, Lease of 192.168.1.13 obtained, lease time 604800
done
Starting thttpd: done
Starting inetd: done
done
atmark-dist v1.21.0 (AtmarkTechno/Armadillo-9)
Linux 2.6.12.3-a9-14 [armv4tl arch]
a9-0 login: root
Password:
[email@hidden (ttyAM0) ~]# usb 1-1.3: USB disconnect, address 4
usb 1-1.3: new low speed USB device using ep93xxusb and address 5
input: USB HID v1.12 Pointer [eGalax Inc. Touch] on
usb-ep93xxusb.0-1.3
[email@hidden (ttyAM0) ~]# mknod /dev/input/ts0 c 13 128
[email@hidden (ttyAM0) ~]# cat /dev/input/ts0 |od -x
0000000 0001 fff4 ffef 1e94 0001 fff4 ffef
1f83
0000020 0001 fff4 ffef 1fd4 0001 fff4 ffef
2074
0000040 0001 fff4 ffef 20c4 0001 fff4 ffef
2164
0000060 0001 fff4 ffef 21b4 0000 fff4 ffef
2254
0000100 0001 fff4 ffef 0c72 0000 fff4 ffef
0cc2
0000120 0001 fff4 ffef 0db1 0001 fff4 ffef
0ea0
0000140 0001 fff4 ffef 0ef1 0001 fff4 ffef
0f90
0000160 0001 fff4 ffef 0fe1 0000 fff4 ffef
1031
0000200 0001 fff4 ffef 030f 0001 fff4 ffef
03af
0000220 0001 fff4 ffef 044f 0001 fff4 ffef
049f
0000240 0001 fff4 ffef 053f 0000 fff4 ffef
0590
armadillo メーリングリストの案内