/*register address*/
#define FTXXXX_REG_FW_VER 0xA6
#define FTXXXX_REG_POINT_RATE 0x88
#define FTXXXX_REG_THGROUP 0x80
#define FTXXXX_REG_VENDOR_ID 0xA8
#define FTXXXX_REG_PROJECT_ID 0xA1
ret=ftxxxx_read_reg(ftxxxx_ts->client,FTXXXX_REG_PROJECT_ID,&touch_version->project_id);
ret=ftxxxx_read_reg(ftxxxx_ts->client,FTXXXX_REG_FW_VER,&touch_version->firmware_version);
ret=ftxxxx_read_reg(ftxxxx_ts->client,FTXXXX_REG_VENDOR_ID,&touch_version->vendor_id);
但是glass_vendor的读取却不一样
switch (asus_PRJ_ID) //这个project id是启动linux内核的时候传入的命令行参数
{
case 1:
if(ftxxxx_ts->tp_id_value2 == 0){
memcpy(&touch_version->glass_vendor,"TPK",strlen("TPK")+1);
}
else{
memcpy(&touch_version->glass_vendor,"Jtouch",strlen("Jtouch")+1);
}
break;
其中的ftxxxx_ts->tp_id_value2是这样来的
ftxxxx_ts->tp_id_value1=gpio_get_value(ftxxxx_ts->tp_id_gpio1);
ftxxxx_ts->tp_id_value2=gpio_get_value(ftxxxx_ts->tp_id_gpio2);
ftxxxx_ts->tp_id_gpio2的来源:
gpio_direction_input(ftxxxx_ts->tp_id_gpio2);
#define FTXXXX_REG_FW_VER 0xA6
#define FTXXXX_REG_POINT_RATE 0x88
#define FTXXXX_REG_THGROUP 0x80
#define FTXXXX_REG_VENDOR_ID 0xA8
#define FTXXXX_REG_PROJECT_ID 0xA1
ret=ftxxxx_read_reg(ftxxxx_ts->client,FTXXXX_REG_PROJECT_ID,&touch_version->project_id);
ret=ftxxxx_read_reg(ftxxxx_ts->client,FTXXXX_REG_FW_VER,&touch_version->firmware_version);
ret=ftxxxx_read_reg(ftxxxx_ts->client,FTXXXX_REG_VENDOR_ID,&touch_version->vendor_id);
但是glass_vendor的读取却不一样
switch (asus_PRJ_ID) //这个project id是启动linux内核的时候传入的命令行参数
{
case 1:
if(ftxxxx_ts->tp_id_value2 == 0){
memcpy(&touch_version->glass_vendor,"TPK",strlen("TPK")+1);
}
else{
memcpy(&touch_version->glass_vendor,"Jtouch",strlen("Jtouch")+1);
}
break;
其中的ftxxxx_ts->tp_id_value2是这样来的
ftxxxx_ts->tp_id_value1=gpio_get_value(ftxxxx_ts->tp_id_gpio1);
ftxxxx_ts->tp_id_value2=gpio_get_value(ftxxxx_ts->tp_id_gpio2);
ftxxxx_ts->tp_id_gpio2的来源:
gpio_direction_input(ftxxxx_ts->tp_id_gpio2);