GT9XX驱动移植说明书_for_Android_2014011401

2019-03-09 15:07

GT9XXforAndroid驱动移植说明书一、驱动基本信息

支持芯片型号GT911GT9110GT9110PGT913GT915GT918GT927GT928GT960GT968GT910GT912GT960FGT950GT968FGT9158GT967GT9150GT963GT9271GT917D0x5d、0x1416位支持固件头文件,搜寻bin文件6个I2C设备地址(7位)I2C寄存器地址APK工具/ADB工具自动升级支持SensorID数二、驱动文件说明一般情况下,驱动参考资料包的referencedrivers文件夹下面包含以下几个文件,下面对每个文件的功能和使用方法进行说明:1.gt9xx.c(Required):驱动主功能文件,用来实现驱动的挂载、读取上报坐标、休眠唤醒处理等触摸屏驱动的基本功能。2.gt9xx.h(Required):驱动头文件,包含驱动中要用到的一些宏和常量的定义、外部变量和函数的声明等。3.gt9xx_update.c(Recommended):驱动用于支持固件升级的文件,对于触摸屏驱动来说,该文件不是必需的,但是强烈推荐在驱动中增加该功能,以便于您使用的触控IC在必要时升级为最新版本的固件。4.gt9xx_firmware.h(Recommended):默认存放头文件升级默认固件数组,数组默认为空。如需开启兼容GT9XXF模式(GTP_COMPATIBLE_MODE置1),您需要将GT9XXFFirmwareHeaders中相应GT9XXF文件夹下的gt9xx_firmware.h替换驱动中的同名文件。5.goodix_tool.c(Recommended):驱动中用于支持gtp_tools.apk工具和ADB工具的文件,该工具可以在装成整机后再Android上层对触控IC进行测试、调试、检测等功能,强烈推荐在驱动中增加此功能,特别是使用COB(触控IC直接layout在主板上)模式的TP时,此工具能极大的方便整机上的TP调试。1三、驱动移植STEP_BY_STEP

1.复制文件:将referencedriver文件夹中的所有文件复制到kernel的drivers/input/touchscreen/目录下。2.修改Makefile:在drivers/input/touchscreen/目录下,打开Makefile文件,并在文件中增加以下条目(注意不同的(.o)文件之间用空格分开):。obj-y+=gt9xx.ogt9xx_update.ogoodix_tool.o3.添加设备:找到kernel中初始化I2C总线的板级文件,如本驱动的开发平台real6410开发板是位于arch/arm/mach-s3c6410/mach-smdk6410.c文件中,如需要将触摸屏驱动挂载I2C0总线上,则按以下方法添加TP的i2c设备驱动即可,0x5d为该型号触控IC的i2c从设备地址,具体为多少需参阅该型号芯片的datasheet,”Goodx-TS”为i2c设备驱动名,必须与驱动参考代码中的GTP_I2C_NAME保持相同。staticstructi2c_board_infoi2c_devs0[]__initdata{{I2C_BOARD_INFO(\,0x5d),},};=4.修改参考代码:一般情况下,移植过程中只需修改gt9xx.h文件中的内容即可,打开该头文件,按照注释中的提示移植,重点注意TODOpart的修改即可。(1)STEP1替换配置信息表(REQUIRED):将对应于您正在使用TP的配置信息(一般为TP厂提供的(*cfg或*txt)文件里面的内容),替换CTP_CFG_GROUP中的内容。//TODO:defineyourowndefaultorforSensor_ID==0confighere.

#defineCTP_CFG_GROUP1{\\

0x42,0xE0,0x01,0x20,0x03,0x05,0x14,0x01,0x02,0x08,\\//...}

//TODO:defineyourconfigforSensor_ID==1here,ifneeded#defineCTP_CFG_GROUP2{\\

}

//TODO:defineyourconfigforSensor_ID==2here,ifneeded#defineCTP_CFG_GROUP3{\\

}

//TODO:defineyourconfigforSensor_ID==3here,ifneeded

2#defineCTP_CFG_GROUP4{\\

}

//TODO:defineyourconfigforSensor_ID==4here,ifneeded#defineCTP_CFG_GROUP5{\\

}

//TODO:defineyourconfigforSensor_ID==5here,ifneeded#defineCTP_CFG_GROUP6{\\

}

注意事项:

(1)如果没有设置SensorID(详见附录),请务必将配置信息宏定义在CTP_CFG_GROUP1,并保持其他几组为空,替换完成后,需要在每行后面增加宏定义的连接符“\\”;

(2)如果实际使用的sensorID数多于参考驱动中的6组,请参照这三组完成其他组的配置通过sensorID来区分;

(3)如果配置宏的第一行设置了配置信息的写入寄存器GTP_REG_CONFIG_DATA,则请将配置从第二行开始替换。

(2)STEP2修改IO定义和IO操作方式(REQUIRED):将GTP_INT_PORT和GTP_RST_PORT的定义修改为对应于该项目的引脚定义,另外还需检查后面几个关于IO操作的语句是否适用于您正在使用的平台,如果不是,则需修改成相应的操作方式。//STEP_2(REQUIRED):ChangeI/Odefine&I/Ooperationmode.#defineGTP_INT_PORTS3C64XX_GPN(15)#defineGTP_RST_PORTS3C64XX_GPL(10)#defineGTP_INT_IRQgpio_to_irq(GTP_INT_PORT)……

#defineGTP_GPIO_AS_INPUT(pin)do{\\gpio_direction_input(pin);\\s3c_gpio_setpull(pin,S3C_GPIO_PULL_NONE);\\}while(0)注意事项:中断脚和复位脚应初始化为悬浮输入态。(悬浮:既不上拉,也不下拉)。(3)STEP3客户自定义参数(OPTIONAL):如果您需要自己指定分辨率、中断触发方式、支持的最多TOUCH数等参数,请在ON/OFFdefine中打开GTP_CUSTOM_CFG宏,并参照以下修改参数。//*********************PART1:ON/OFFdefine*************************#defineGTP_CUSTOM_CFG……

1//*********************PART2:TODOdefine****************************3//STEP_3(optional):Custom#ifGTP_CUSTOM_CFG#defineGTP_MAX_WIDTH#defineGTP_MAX_HEIGHT#defineGTP_MAX_TOUCH#defineGTP_INT_TRIGGER#else#defineGTP_MAX_WIDTH#defineGTP_MAX_HEIGHT#defineGTP_MAX_TOUCH#defineGTP_INT_TRIGGER#endifsetsomeconfigbycustom,ifneed.800480504096409651(4)STEP4配置触摸按键(OPTIONAL):如果您正在使用的TP带有触摸按键,则需要配置触摸按键,先在ON/OFFdefine中打开GTP_HAVE_TOUCH_KEY开关,然后再参照以下设置按键,按键的功能和顺序请在GTP_KEY_TAB中按需调整。//*********************PART1:ON/OFFdefine*************************#defineGTP_HAVE_TOUCH_KEY……1//*********************PART2:TODOdefine****************************//STEP_4(optional):Ifthisprojecthavetouchkey,Settouchkeyconfig.#ifGTP_HAVE_TOUCH_KEY#defineGTP_KEY_TAB{KEY_MENU,KEY_HOME,KEY_SEND}#endif(5)STEP5增加包含文件(OPTIONAL):在该头文件的前面增加对应您使用平台所必须的#include包含文件,这个步骤也是可选的,根据您编译的情况按需加入。(6)GT9XXF兼容说明GT9XXF目前的IC有GT910,GT912,GT950,GT960F,GT968F。在驱动中做出了兼容处理,其宏开关为GTP_COMPATIBLE_MODE,如果需开启此开关,请先将GT9XXFFirmwareHeaders文件夹中的对应GT9XXF文件夹下的gt9xx_firmware.h替换驱动中的gt9xx_firmware.h。另请确保GTP_DRIVER_SEND_CFG开启,另请开启GTP_ESD_PROTECT开关。即推荐组合:4#defineGTP_COMPATIBLE_MODE#defineGTP_DRIVER_SEND_CFG#defineGTP_ESD_PROTECT

111如果断电关屏的方式采用小系统的方式,您需要开启如下开关:#define#define#define#define#defineGTP_COMPATIBLE_MODEGTP_DRIVER_SEND_CFGGTP_ESD_PROTECT

GTP_POWER_CTRL_SLEEPGTP_FL_LITTLE_SYSTEM11111(7)自动升级说明

使用自动升级您需要开启宏GTP_AUTO_UDPATE,自动升级有两种方式:①搜寻BIN文件升级:GT9XX预设文件路径为/data/_goodix_update_.bin和/sdcard/_goodix_udpate_.bin,GT9XXF为/data/_fl_update_.bin和/sdcard/_fl_update_.bin。②固件数组升级:使用gt9xx_firmware.h中的固件数组gtp_default_FW进行升级,您需要开启GTP_AUTO_UDPATE与GTP_HEADER_FW_UPDATE。此种方式GT9XXF不支持。IC类型非GT9XXF,如需要自动升级配置,您需要同时开启宏GTP_AUTO_UPDATE_CFG。配置自动升级路径预设为:/data/_goodix_config_.cfg和/data/_goodix_config_.cfg。使用①的方式会与BIN文件一齐搜寻,如找到则先进行配置升级;使用②的方式,将在升级完固件之后进行文件搜寻升级。(8)手势/滑动唤醒相关说明

手势/滑动唤醒相关联的宏为GTP_GESTURE_WAKEUP。此功能需添加如下电路(电路详细设计请参考Datasheet):在INT引脚上串接RC电路,R:680欧,C:680p,如下图:5


GT9XX驱动移植说明书_for_Android_2014011401.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:全国普通高等学校2018年招生统一考试(王后雄终极押题)理综生物试

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: