Android4.1.1_r1系统移植------TP移植篇
1.添加触摸屏驱动
把触摸IC供应商提供的驱动文件(rockchip_gslX680.c ;rockchip_gslX680.h)复制到kernel/drivers/input/touchscreen/下
并进行touch命令,以修改文件的时间戳。
2.修改kernel/drivers/input/touchscreen/下的Kconfig文件,在该文件定义config宏
config TOUCHSCREEN_GSLX680
tristate "gslX680 touchscreen panel support"
depends on I2C2_RK29 || I2C2_RK30
3.修改kernel/drivers/input/touchscreen/下的Makefile文件,在该文件最后添加
obj-$(CONFIG_TOUCHSCREEN_GSLX680) += rockchip_gslX680.o
4. 修改kernel/arch/arm/mach-rk2928/borad-rk2926-sdk.c文件
添加如下代码:
#if defined(CONFIG_TOUCHSCREEN_GSLX680)
#define TOUCH_RESET_PIN INVALID_GPIO //RK2928_PIN0_PD3//RK2928_PIN1_PA3
#define TOUCH_INT_PIN RK2928_PIN1_PB0
int gslx680_init_platform_hw(void)
{
//printk("ft5306_init_platform_hw\n");
if(gpio_request(TOUCH_RESET_PIN,NULL) != 0){
gpio_free(TOUCH_RESET_PIN);
printk("gslx680_init_platform_hw gpio_request error\n");
return -EIO;
}
if(gpio_request(TOUCH_INT_PIN,NULL) != 0){
gpio_free(TOUCH_INT_PIN);
printk("gslx680_init_platform_hw gpio_request error\n");
return -EIO;
}
gpio_direction_output(TOUCH_RESET_PIN, GPIO_HIGH);
mdelay(10);
gpio_set_value(TOUCH_RESET_PIN,GPIO_LOW);
mdelay(10);
gpio_set_value(TOUCH_RESET_PIN,GPIO_HIGH);
msleep(300);
return 0;
}
struct goodix_platform_data gslx680_ts_hw_info = {
.model = 8107,
// .irq_pin = RK2928_PIN1_PB0,
.rest_pin = TOUCH_RESET_PIN,
.init_platform_hw = gslx680_init_platform_hw,
};
#endif
------------------------------------------------------------------------------------------------------
#if defined (CONFIG_TOUCHSCREEN_GSLX680)
{
.type = "gslx680_ts", //名字为gslx680_ts
.addr = 0x40, // i2c地址为0x40
.flags = 0,
.irq = TOUCH_INT_PIN, //指定中断脚
.platform_data = &gslx680_ts_hw_info,
},
#endif
5.在menuconfig中选中“gslX680 touchscreen panel support”选项,编译即可。
补充:Kconfig文件的作用
内核源码树的目录下都有两个文件Kconfig(2.4版本是Config.in)和Makefile。分布到各目录的Kconfig构成了一个分布式的内核配置数据库,每个Kconfig分别描述了所属目录源文件相关的内核配置菜单。在内核配置make menuconfig(或xconfig等)时,从Kconfig中读出菜单,用户选择后保存到.config的内核配置文件中。在内核编译时,主Makefile调用这个.config,就知道了用户的选择。
Android4.1.1_r1系统移植------TP移植篇相关推荐
- 迅为4412开发板(全能版)V_4.0 ubuntu 在Android4.4.4的内核下移植wifi
为4412全能版V_4.0 ubuntu 在Android4.4.4的内核下移植wifi 背景:由于厂家迅为的全能版的V4.0底板和V3.5底板的wifi部分有改动,所以需要重新移植wifi ...
- PopStar(消灭星星)游戏源代码下载、分析及跨平台移植---第三篇(分数)
背景: 经过消灭星星第二篇算法,最高的山峰已经过去了,剩下的都是小沟小河,没什么难度了.这一节笔者继续完成消灭星星的分数篇,这节主要包括:触摸提示得分 比如4 blocks 80 points,然后产 ...
- NUC980开发板Linux系统EC20模块 移植 串口 PPP拨号
NUC980开发板Linux系统EC20模块 移植 串口 PPP拨号 1. EC20模块连接 2. Linux内核配置 3. 交叉编译PPP 4. 拨号脚本 5. 进行拨号 1. EC20模块连接 在 ...
- 基于DE2的开源片上系统Freedom E310移植
引言:伯克利大学于2014年发布了开源指令集架构RISC-V,其目标是成为指令集架构领域的Linux,应用覆盖IoT(Internet of Things)设备.桌面计算机.高性能计算机等众多领域[1 ...
- Powerlink总线协议在QNX系统上的移植
一.硬件平台 通讯主站选用安装QNX系统的工控机,交叉编译工具选用QNX Momentics IDE,QNX Momentics IDE软件是基于WINDOWS系统下的QNX交叉开发环境,使用户可以 ...
- T2080 U-BOOT与OS内核移植 u-boot移植篇(一)——创建新目标板的u-boot工程
T2080 U-BOOT与OS内核移植 u-boot移植篇(一)--创建新目标板的u-boot工程 一.创建新目标板文件夹并修改相应文件 1.创建新目标板文件夹 2.修改t2080tpm文件夹中的相应 ...
- Android4.2中Gallery2源码移植
最近开始做Android平台下的相机开发,有别于驱动层和HAL层,我更多的是关注成像画质和虚拟预览等上层应用,整理了一点心得,感觉有必要记录一下成长的足迹.因为初学,不保证理解精准到位,请各位看官们坚 ...
- Android系统开发(移植)和应用开发
Android是个开源的操作系统,所以可以选择的开发方式主要有两种: Android系统开发(移植): Android应用开发 1.Android系统开发(移植) Android系统开发(移植)属于底 ...
- 【国产MCU移植】移植RT-Thread到国产芯片HC32L196
大家好我是惊觉.是的,失踪人口回来了.最近参加了rt-thread的国产MCU移植活动,移植rt-thread到华大的HC32L196.rtt论坛中已有许多介绍移植到各种平台的文章,详细讲述移植步骤, ...
最新文章
- 皮一皮:经历过的举手报道...
- IconFont的使用方法
- 湖南大学计算机学院张柏杨,缪力-湖大信息科学与工程学院
- 哨兵一号数据snap预处理_利用SNAP软件进行Sentinel-1A卫星微波影像的预处理
- python开发的系统有哪些_Python web开发=几个模板系统的性能对比
- jquery 页面滚动条回到顶部_jquery懒加载、回到顶部
- 《构建之法》读书心得
- oracle中如何测试,Oracle数据库中如何正确的查看sql
- asus官方android升级包,华硕ASUS手机平板官方刷机包raw格式解压修改工具
- 笔记|使用边框和背景(应用边框样式)
- 计算机的音标英语怎么说,computer是什么意思_computer的翻译_音标_读音_用法_例句_爱词霸在线词典...
- RestTemplate使用实战-exchange方法讲解
- 游戏模型制作的注意事项 项目模型规范总结
- windows无法连接到打印机_解决打印机问题
- 智力题:1000瓶酒.10只老鼠.有一瓶酒有毒,每只老鼠可以喝无限多的酒,如何测一次就找出哪瓶酒有毒
- 话题|寒窗苦读还是花花世界,你会怎么选?
- 非计算机专业学生怎么走上计算机技术之路?
- 软件测试基础-Web前端(二)
- C/C++ 延时函数 (标准库)
- 洛谷P1758 [NOI2009]管道取珠(dp 贡献转化)