2011-12-06 76 views
0

我想在一个ARM系统上嵌入tslib,以便使用触摸屏设备;我已经成功安装了它,但不幸的是我无法检索所有笔记来重新执行它。 x)tslib没有创建设备

我交叉编译库文件,我把它们放到/usr/lib;我创建conf文件/etc/ts.conf和我已经出口了良好的环境变量:

export TSLIB_TSDEVICE="/dev/event2" 
export TSLIB_CONFFILE="/etc/ts.conf" 

这里是我的问题:tslib的似乎没有创建事件设备时,我将设备。在这里是结果* ts_calibrate *:ts_open: No such file or directory

我认为它试图打开的/ dev /事件2因为它没有被创建tslib的不存在。

任何想法?

感谢

回答

0

你需要自己mknod/dev/event2?你是否积极的让你的图书馆使设备节点?

1

你有什么样的内核+用户空间?设备文件创建通常是 内核hotplug + udev或mdev的工作。

在任何情况下,tslib不应该创建设备文件。你有两个选择:

  • 手动创建的设备,只要你的busybox包含mknod的实用程序:

    mknod event2 c 13 66 
    

    ,其中66次设备号,它应大于事件1次多一个。

  • 推出的mdev -s,看看你的/ dev目录变化

  • 的内容找出为什么没有检测出排气装置/创建:请邮寄的01​​输出,并且开机后dmesg

+0

我们有一个基于Debian的特定内核(我们使用Busybox),但是我们修补了很多东西。在/ dev我已经有2个设备,event0和event1;触摸屏应该是/ dev/event2。检测到触摸屏,因为帧缓冲区库工作正常。 ;) –

+0

我添加了“usbtouchscreen”模块,其中包含eGalax驱动程序;现在,dmesg给我:'<6>输入:eGalax Inc.USB TouchController as /devices/platform/str8100-ehci/usb1/1-1/1-1.3/1-1.3.3/1-1.3.3:1.0/输入/输入2',但我仍然无法看到如何获得输入:/ –

+0

尝试安装模块后mdev -s – shodanex

0

其实mknod在我们的工具箱中不可用。推出mdev -s时没有什么变化,我已经尝试过。 :/ 这里是UNAME结果:Linux MYNAME 2.6.24.4 #3 Fri Dec 2 16:54:41 CET 2011 armv4l unknown(MYNAME只是系统的名字,我取代了它的私密性原因;))

而且dmesg

<6>usb 1-1.3: new high speed USB device using str8100-ehci and address 23 
<6>usb 1-1.3: configuration #1 chosen from 1 choice 
<6>hub 1-1.3:1.0: USB hub found 
<6>hub 1-1.3:1.0: 4 ports detected 
<6>usb 1-1.3.2: new high speed USB device using str8100-ehci and address 24 
<6>usb 1-1.3.2: configuration #1 chosen from 1 choice 
<6>udlfb: DisplayLink AT-7 - serial #200694 
<6>udlfb: vid_17e9&pid_02fc&rev_0104 driver's dlfb_data struct at c1031000 
<6>udlfb: console enable=0 
<6>udlfb: fb_defio enable=0 
<6>udlfb: vendor descriptor length:23 data:23 5f 01 0021 00 04 04 07 00 01 
<4>udlfb: DL chip limited to 1500000 pixel modes 
<4>dlfb_alloc_urb_list 
<4>dlfb_release_urb_work : INIT_DELAYED_WORK dlfb_release_urb_work 
<4>dlfb_release_urb_work : after INIT_DELAYED_WORK 
<4>usb_fill_bulk_urb 
<4>usb_fill_bulk_urb end 
<4>dlfb_release_urb_work : INIT_DELAYED_WORK dlfb_release_urb_work 
<4>dlfb_release_urb_work : after INIT_DELAYED_WORK 
<4>usb_fill_bulk_urb 
<4>usb_fill_bulk_urb end 
<4>dlfb_release_urb_work : INIT_DELAYED_WORK dlfb_release_urb_work 
<4>dlfb_release_urb_work : after INIT_DELAYED_WORK 
<4>usb_fill_bulk_urb 
<4>usb_fill_bulk_urb end 
<4>dlfb_release_urb_work : INIT_DELAYED_WORK dlfb_release_urb_work 
<4>dlfb_release_urb_work : after INIT_DELAYED_WORK 
<4>usb_fill_bulk_urb 
<4>usb_fill_bulk_urb end 
<4>dlb_alloc_urb_list : before sema_init 
<4>dlb_alloc_urb_list : after sema_init 
<5>udlfb: allocated 4 65024 byte urbs 
<4>dlfb_setup_modes 
<4>dlfb_get_edid 
<4>dlfb_is_valid_mode 
<6>udlfb: 800x480 valid mode 
<4>udlfb: Reallocating framebuffer. Addresses will change! 
<4>dlfb_ops_check_var 
<4>dlfb_is_valid_mode 
<6>udlfb: 800x480 valid mode 
<5>udlfb: set_par mode 800x480 
<4>dlfb_set_video_mode 
<4>dlfb_get_urb end 
<4>dlfb_set_vid_cmds 
<4>dlfb_submit_urb 
<4>dlfb_submit_urb : after usb_submit_urb ret=0 
<4>dlfb_set_video_mode end 
<4>dlfb_urb_completion 
<4>up release_urb_work !!! 
<4>dlfb_urb_completion end 
<4>dlfb_handle_damage 
<4>dlfb_get_urb end 
<4>dlfb_submit_urb 
<4>dlfb_submit_urb : after usb_submit_urb ret=0 
<6>udlfb: DisplayLink USB device /dev/fb1 attached. 800x480 resolution. Using 1504K framebuffer memory 
<4>dlfb_urb_completion 
<4>up release_urb_work !!! 
<4>dlfb_urb_completion end 
<6>usb 1-1.3.3: new full speed USB device using str8100-ehci and address 25 
<3>usb 1-1.3.3: device descriptor read/64, error -32 
<3>usb 1-1.3.3: device descriptor read/64, error -32 
<6>usb 1-1.3.3: new full speed USB device using str8100-ehci and address 26 
<3>usb 1-1.3.3: device descriptor read/64, error -32 
<3>usb 1-1.3.3: device descriptor read/64, error -32 
<6>usb 1-1.3.3: new full speed USB device using str8100-ehci and address 27 
<3>usb 1-1.3.3: device not accepting address 27, error -32 
<6>usb 1-1.3.3: new full speed USB device using str8100-ehci and address 28 
<3>usb 1-1.3.3: device not accepting address 28, error -32 
<6>usb 1-1.3: USB disconnect, address 23 
<6>usb 1-1.3.2: USB disconnect, address 24 
<6>udlfb: USB disconnect starting 
<4>dlfb_free_framebuffer_work 
<4>udlfb: fb_info for /dev/fb1 has been freed 
<4>dlfb_free 
<5>udlfb: Waiting for completes and freeing all render urbs 
<4>udlfb: freeing dlfb_data c1031000 
<6>usb 1-1: USB disconnect, address 12 
<6>usb 1-1: new high speed USB device using str8100-ehci and address 29 
<6>usb 1-1: configuration #1 chosen from 1 choice 
<6>hub 1-1:1.0: USB hub found 
<6>hub 1-1:1.0: 4 ports detected 
0

tslib不会创建一个输入设备;您的触摸屏的设备驱动程序可以。 tslib使用它,你可以拨打电话ts_read()获得过滤样本。有X11和Qt5包装这样做。这就是它一直的方式。

tslib版本1.3开始,您可以使用tslib/tools/ts_uinput创建输入设备以指向您的环境,请参阅tslib's project page

截至目前,如果你想测试这个,有tslib-1.3-rc1