移植触摸屏驱动程序

本文介绍了在Linux 3.4.2系统下,针对JZ2440开发板移植和安装tslib的过程。主要内容包括解决编译错误、理解EV_VERSION一致性问题、安装automake工具、配置编译环境并成功安装tslib,以及在开发板上配置和使用触摸屏驱动的详细步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

基于之前在linux2.6内核上写的触摸屏程序进行修改:

  1. 编译
  2. 解决错误
    2.1 头文件不对:去掉或改名
    2.2 宏不对:改名使用新宏
    2.3 有些函数没有了:改名使用新函数

编译无错误,生成.ko文件。
这里需要注意一项:在交叉编译链路径中,即/usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/usr/include/linux/input.h中,有一个#define EV_VERSION 0x010000,而在内核路径./include/linux/input.h有 #define EV_VERSION 0x010001。这两个EV_VERSION必须保持一致,否则会出现
selecteddevice is not a touchscreen I understand
但是曾经尝试:将内核路径./include/linux/input.h:
#define EV_VERSION 0x010001 ->#define EV_VERSION 0x010000
此时,仍会爆出上述错误。显然这个错误不是来自于tslib,而是来自于之前在内核中编译的ts程序。所以只能修改编译链文件。
#define EV_VERSION 0x010000->#define EV_VERSION 0x010001
Ps:如果还是不行…那就把以上两个EV_VERSION全都变成0再试试。总有一个是可以的。

tslib是什么:Tslib是一个开源的程序,能够为触摸屏驱动获得的采样提供诸如滤波、去抖、校准等功能,通常作为触摸屏驱动的适配层,为上层的应用提供了一个统一的接口。

一、实验环境

硬件: JZ2440开发板

内核版本: Linux-3.4.2

交叉工具链:arm-linux-gcc-4.3.2

tslib版本: tslib-1.4

二、安装

  1. 解压文件。
tar xzf tslib-1.4.tar.gz
  1. 运行tslib自带的脚步文件设置环境
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值