使用说明 输入设备驱动中使用init-input中的相关接口解析sysconfig.fex时,
需要在设备驱动中添加头文件init-input.h,即添加如下语句:
#include<linux/init-input.h>
4.2ctp使用示例说明 ctp模块中,
除了有参数的获取外,还有gpio的申请与释放。
Gpio的释放应放置在最后面进行。以gt82x驱动中为例子进行说明,
如下所示:......
static structctp_config_infoconfig_info=
{ .input_type=CTP_TYPE,};
//第一步:定义ctp_config_info结构体,并且将input_type赋值为CTP_TYPE......staticint__devinitgoodix_ts_init(void){ ...... if(input_fetch_sysconfig_para(&(config_info.input_type)))
{//第二步 printk("%s:ctp_fetch_sysconfig_paraerr.\n",__func__);return0;
}
else
{ ret=input_init_platform_resource(&(config_info.input_type));//第三步 if(0!=ret){printk("%s:ctp_ops.init_platform_resourceerr.\n",__func__); }}
if(config_info.ctp_used==0)
{//第四步 printk("***ctp_usedsetto0!\n"); printk("***ifusectp,pleaseputthesys_config.fexctp_usedsetto1.\n");
return0
} ...... }
static void __exit goodix_ts_exit(void)
{
printk("==goodix_ts_exit==\n");
i2c_del_driver(&goodix_ts_driver);
input_free_platform_resource(&(config_info.input_type));
//第五步 return;
}
步骤如下:
第一步:定义ctp_config_info结构体,并且将input_type赋值为CTP_TYPE
第二步:init函数中调用input_fetch_sysconfig_para函数获取sysconfig.fex下的配置参数。
第三步:若能正确的获取参数,调用input_init_platform_resource接口申请gpio资源。
第四步:判断获取到的ctp_used是否为1,若不为1,则直接返回。
第五步:当该驱动退出时,应该在exit函数中调用input_free_platform_resource函数将申请的gpio资源释放掉。
离线