基于DragonBoard 410c开发板的触摸屏驱动编写.doc

基于DragonBoard 410c开发板的触摸屏驱动编写.doc

ID:27870207

大小:32.50 KB

页数:17页

时间:2018-12-06

基于DragonBoard 410c开发板的触摸屏驱动编写.doc_第1页
基于DragonBoard 410c开发板的触摸屏驱动编写.doc_第2页
基于DragonBoard 410c开发板的触摸屏驱动编写.doc_第3页
基于DragonBoard 410c开发板的触摸屏驱动编写.doc_第4页
基于DragonBoard 410c开发板的触摸屏驱动编写.doc_第5页
资源描述:

《基于DragonBoard 410c开发板的触摸屏驱动编写.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、基于DragonBoard410c开发板的触摸屏驱动编写  让大家初步了解对高通MSM8916平台的输入子系统的实现,给大家提供DragonBoard410c平台开发输入系统设备的思路。(如:按键设备、触摸屏、轨迹球等)  在高通MSM8916平台中,具有触摸屏、轨迹球和简单按键功能,这些功能是由Android系统内中的驱动程序实现的,并且需要用户空间的内容来协助实现。一、触摸屏驱动编写  高通MSM8916平台的触摸屏驱动程序的实现文件是drivers/input/touchscreen/synapTIcs_i2c_rmi4.c,此

2、文件的核心是函数synapTIcs_ts_probe(),在该函数中需要进行触摸屏工作模式的初始化,对作为输出设备的触摸屏驱动在Linux平台下的设备名注册,同事初始化触摸时间触发时引起的中断操作。此函数的实现代码如下:  staTIcintsynapTIcs_rmi4_probe(  structi2c_client*client,conststructi2c_device_id*dev_id)  {  intretval=0;unsignedcharii;unsignedcharattr_count;structsynaptics

3、_rmi4_f1a_handle*f1a;structsynaptics_rmi4_fn*fhandler;structsynaptics_rmi4_fn*next_fhandler;structsynaptics_rmi4_data*rmi4_data;structsynaptics_rmi4_device_info*rmi;structsynaptics_rmi4_platform_data*platform_data=client->dev.platform_data;structdentry*temp;if(!i2c_chec

4、k_functionality(client->adapter,I2C_FUNC_SMBUS_BYTE_DATA)){dev_err(&client->dev,“%s:SMBusbytedatanotsupported”,__func__);return-EIO;}if(client->dev.of_node){platform_data=devm_kzalloc(&client->dev,sizeof(*platform_data),GFP_KERNEL);if(!platform_data){dev_err(&client->

5、dev,“Failedtoallocatememory”);return-ENOMEM;}retval=synaptics_rmi4_parse_dt(&client->dev,platform_data);if(retval)returnretval;}else{platform_data=client->dev.platform_data;}if(!platform_data){dev_err(&client->dev,“%s:Noplatformdatafound”,__func__);return-EINVAL;}rm

6、i4_data=kzalloc(sizeof(*rmi4_data)*2,GFP_KERNEL);if(!rmi4_data){dev_err(&client->dev,“%s:Failedtoallocmemforrmi4_data”,__func__);return-ENOMEM;}rmi=&(rmi4_data->rmi4_mod_info);rmi4_data->input_dev=input_allocate_device();//创建设备if(rmi4_data->input_dev==NULL){dev_err(&c

7、lient->dev,“%s:Failedtoallocateinputdevice”,__func__);retval=-ENOMEM;gotoerr_input_device;rmi4_data->i2c_client=client;rmi4_data->current_page=MASK_8BIT;rmi4_data->board=platform_data;rmi4_data->touch_stopped=false;rmi4_data->sensor_sleep=false;rmi4_data->irq_enabled=

8、false;rmi4_data->fw_updating=false;rmi4_data->suspended=false;rmi4_data->i2c_read=synaptics_rmi4_i2c_read;rmi4

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。