android系统开发(五)-tslib移植
来源:互联网 发布:javascript实战教程 编辑:程序博客网 时间:2024/05/21 06:16
1)切换至tslib目录然后执行如下命令(以marvell平台为例)
./autogen.sh
echo "ac_cv_func_malloc_0_nonnull=yes" > arm-marvell-linux.cache
./configure --host=arm-marvell-linux-gnueabi --prefix=/work/svn/ts_build --cache-file=arm-marvell-linux.cache
上面三步仅仅是为了取得tslib目录下的config.h文件
(2)将tslib复制到android源代码vendor/<company_name>/<board_name>目录下
(3)修改vendor/<company_name>/<board_name>目录下的AndroidBoard.mk文件,加入如下内容
include $(LOCAL_PATH)/tslib/Mdroid.mk
一定要主义LOCAL_PATH这个宏的时效性
(4)在tslib目录下创建Mdroid.mk,内容如下:
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
TS_PATH := $(LOCAL_PATH)
include $(TS_PATH)/src/Mdroid.mk
include $(TS_PATH)/plugins/Mdroid.mk
include $(TS_PATH)/tests/Mdroid.mk
include $(CLEAR_VARS)
file := $(TARGET_OUT_ETC)/ts.conf
$(file) : $(TS_PATH)/etc/ts.conf | $(ACP)
$(transform-prebuilt-to-target)
ALL_PREBUILT += $(file)
(5)在tslib/src目录下创建Mdroid.mk,内容如下:
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES:= ts_attach.c ts_close.c ts_config.c /
ts_error.c ts_fd.c ts_load_module.c ts_open.c ts_parse_vars.c /
ts_read.c ts_read_raw.c ts_option.c
LOCAL_C_INCLUDES += /
$(LOCAL_PATH)/../
LOCAL_SHARED_LIBRARIES += libutils libcutils
LOCAL_SHARED_LIBRARIES += libdl
LOCAL_PRELINK_MODULE := false
LOCAL_MODULE := libts
include $(BUILD_SHARED_LIBRARY)
(6)在tslib/plugins目录下创建Mdroid.mk,内容如下:
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES:= input-raw.c
LOCAL_C_INCLUDES += /
$(LOCAL_PATH)/../ /
$(LOCAL_PATH)/../src
LOCAL_SHARED_LIBRARIES := libts
LOCAL_MODULE := input
LOCAL_PRELINK_MODULE := false
include $(BUILD_SHARED_LIBRARY)
include $(CLEAR_VARS)
LOCAL_SRC_FILES:= pthres.c
LOCAL_C_INCLUDES += /
$(LOCAL_PATH)/../ /
$(LOCAL_PATH)/../src
LOCAL_SHARED_LIBRARIES := libts
LOCAL_MODULE := pthres
LOCAL_PRELINK_MODULE := false
include $(BUILD_SHARED_LIBRARY)
include $(CLEAR_VARS)
LOCAL_SRC_FILES:= variance.c
LOCAL_C_INCLUDES += /
$(LOCAL_PATH)/../ /
$(LOCAL_PATH)/../src
LOCAL_SHARED_LIBRARIES := libts
LOCAL_MODULE := variance
LOCAL_PRELINK_MODULE := false
include $(BUILD_SHARED_LIBRARY)
include $(CLEAR_VARS)
LOCAL_SRC_FILES:= dejitter.c
LOCAL_C_INCLUDES += /
$(LOCAL_PATH)/../ /
$(LOCAL_PATH)/../src
LOCAL_SHARED_LIBRARIES := libts
LOCAL_MODULE := dejitter
LOCAL_PRELINK_MODULE := false
include $(BUILD_SHARED_LIBRARY)
include $(CLEAR_VARS)
LOCAL_SRC_FILES:= linear.c
LOCAL_C_INCLUDES += /
$(LOCAL_PATH)/../ /
$(LOCAL_PATH)/../src
LOCAL_SHARED_LIBRARIES := libts
LOCAL_MODULE := linear
LOCAL_PRELINK_MODULE := false
include $(BUILD_SHARED_LIBRARY)
(7)在tslib/tests目录下创建Mdroid.mk,内容如下:
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES:= ts_calibrate.c fbutils.c testutils.c font_8x8.c font_8x16.c
LOCAL_C_INCLUDES += /
$(LOCAL_PATH)/../ /
$(LOCAL_PATH)/../src
LOCAL_SHARED_LIBRARIES := libts
LOCAL_SHARED_LIBRARIES += libutils libcutils
LOCAL_MODULE := tscalibrate
include $(BUILD_EXECUTABLE)
(8)在tslib/config.h文件中加入如下定义:
#define TS_CONF "/system/etc/ts.conf"
#define PLUGIN_DIR "/system/lib"
#define TS_POINTERCAL "/data/etc/pointercal"
(9)将下面路径文件
tslib/src/ts_open.c
tslib/tests/ts_calibrate.c
tslib/tests/fbutils.c
中的
#include <sys/fcntl.h>
修改成
#include <fcntl.h>
(10)将tslib/tests/ts_calibrate.c文件中
static int clearbuf(struct tsdev *ts)
修改为
static void clearbuf(struct tsdev *ts)
(11)修改tslib/etc/ts.conf内容如下:
module_raw input
module pthres pmin=1
module variance delta=30
module dejitter delta=100
module linear
(12)在android源代码init.rc中声明tslib相关的宏如下:
# touchscreen parameters
export TSLIB_FBDEVICE /dev/graphics/fb0
export TSLIB_CALIBFILE /data/etc/pointercal
export TSLIB_CONFFILE /system/etc/ts.conf
export TSLIB_TRIGGERDEV /dev/input/event0
export TSLIB_TSDEVICE /dev/input/event1
(13)重新编译后即可调用tscalibrate命令来校验触摸屏,校验后产生一个/data/etc/pointercal文件
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/jiajie961/archive/2010/11/12/6005488.aspx
- android系统开发(五)-tslib移植
- android系统开发(五)-tslib移植
- android系统开发(五)-tslib移植
- android系统开发(五)-tslib移植
- android系统开发(五)-tslib移植
- Android系统开发之tslib移植
- android系统开发(四)-触摸屏tslib移植(内核)和原理分析
- android系统开发(四)-触摸屏tslib移植(内核)和原理分析
- android系统开发(四)-触摸屏tslib移植(内核)和原理分析
- android系统开发(四)-触摸屏tslib移植(内核)和原理分析
- android系统开发(四)-触摸屏tslib移植(内核)和原理分析
- android系统开发(四)-触摸屏tslib移植(内核)和原理分析
- android系统开发(四)-触摸屏tslib移植(内核)和原理分析
- Android系统开发之触摸屏tslib移植(内核)和原理分析
- android下移植tslib
- Android系统移植(五)
- Tslib 移植 Android.mk文件
- Tiny6410开发板+fedora9移植tslib-1.4
- Parameters的clear方法
- 如何学好C++语言
- android系统开发(四)-触摸屏tslib移植(内核)和原理分析
- 瓷器工艺
- 学asp.net需要看什么书,推荐一下,谢谢!
- android系统开发(五)-tslib移植
- Spring3 REST MVC框架,提速你的Web开发
- 20110330-3.3.2-下标操作不可添加元素
- android系统开发(六)-HAL层开发基础
- ospf sham-link配置—基于CISCO 2811
- TMS320F2812外部接口分析与存储器扩展
- REST软件架构
- CSDN里面.Net码字民工薪水多少啊?
- 【叶子函数分享五十四】汉字转拼音函数