当前位置: 首页 > news >正文

oss静态网站托管重庆建设工程造价信息网站

oss静态网站托管,重庆建设工程造价信息网站,青岛百度优化,网页设计焦点型图片一#xff0c;问题描述#xff1a; android机器要求接两个屏#xff08;lvdsmipi#xff09;两个usb tp要实现双屏异触。由于mipi的方向和lvds方向转成一样的了。两个usb tp的方向在异显示的时候也要作用一样。这个时候要根据pid和vid修改触摸上报的数据。usb tp有通用的触…一问题描述 android机器要求接两个屏lvdsmipi两个usb tp要实现双屏异触。由于mipi的方向和lvds方向转成一样的了。两个usb tp的方向在异显示的时候也要作用一样。这个时候要根据pid和vid修改触摸上报的数据。usb tp有通用的触摸驱动/kernel/drivers/hid/hid-multitouch.c。 即通过vid pid区分 二修改方法 1. device/rockchip/rk3288/下添加idc文件 Vendor_222a_Product_0001.idc#***************************************************** # Input Device Configuration File for the generaltouch touch screen. #*****************************************************# Basic Parameters touch.deviceType touchScreen touch.orientationAware 1keyboard.layout qwerty keyboard.characterMap qwerty keyboard.orientationAware 1 keyboard.builtIn 1cursor.mode navigation cursor.orientationAware 1device.internal 0Vendor_0457_Product_0819.idc#***************************************************** # Input Device Configuration File for the generaltouch touch screen. #*****************************************************# Basic Parameters touch.deviceType touchScreen touch.orientationAware 1keyboard.layout qwerty keyboard.characterMap qwerty keyboard.orientationAware 1 keyboard.builtIn 1cursor.mode navigation cursor.orientationAware 1device.internal 12. device/rockchip/rk3288/device.mk,拷贝到系统中 # for usb tp PRODUCT_COPY_FILES \device/rockchip/rk3288/Vendor_222a_Product_0001.idc:system/usr/idc/Vendor_222a_Product_0001.idc \device/rockchip/rk3288/Vendor_0457_Product_0819.idc:system/usr/idc/Vendor_0457_Product_0819.idc3. kernel/drivers/hid/hid-multitouch.c修改驱动 diff --git a/kernel/drivers/hid/hid-multitouch.c b/kernel/drivers/hid/hid-multitouch.c old mode 100644new mode 100755 index 9de379c1b3..b8456b1e50 --- a/kernel/drivers/hid/hid-multitouch.cb/kernel/drivers/hid/hid-multitouch.c-98,7 98,23 struct mt_fields {unsigned usages[HID_MAX_FIELDS];unsigned int length; }; - #define GTP_SWAP(x, y) do{\typeof(x) z x;\x y;\y z;\}while (0)#define MAINmGtpChange_X2Y 1 #define MIANmGtp_X_Reverse 1 #define MAINNmGtp_Y_Reverse 0 static int MAINX_max0; static int MAINY_max0;#define AUXmGtpChange_X2Y 1 #define AUXmGtp_X_Reverse 1 #define AUXNmGtp_Y_Reverse 0 static int AUXX_max0; static int AUXY_max0; struct mt_device {struct mt_slot curdata; /* placeholder of incoming data */struct mt_class mtclass; /* our mt device class */-461,6 477,14 static int mt_touch_input_mapping(struct hid_device *hdev, struct hid_input *hi,case HID_UP_GENDESK:switch (usage-hid) {case HID_GD_X:if (hdev-vendor0x0457 hdev-product0x0819){MAINX_max field-logical_maximum; }else if (hdev-vendor0x222a hdev-product 0x0001){AUXX_max field-logical_maximum;}if (prev_usage (prev_usage-hid usage-hid)) {hid_map_usage(hi, usage, bit, max,EV_ABS, ABS_MT_TOOL_X);-476,6 500,14 static int mt_touch_input_mapping(struct hid_device *hdev, struct hid_input *hi,mt_store_field(usage, td, hi);return 1;case HID_GD_Y:if (hdev-vendor0x0457 hdev-product0x0819){MAINY_max field-logical_maximum;}else if (hdev-vendor0x222a hdev-product 0x0001){AUXY_max field-logical_maximum;}if (prev_usage (prev_usage-hid usage-hid)) {hid_map_usage(hi, usage, bit, max,EV_ABS, ABS_MT_TOOL_Y);-613,8 645,10 static int mt_compute_slot(struct mt_device *td, struct input_dev *input)* this function is called when a whole contact has been processed,* so that it can assign it to a slot and store the data there*/ -static void mt_complete_slot(struct mt_device *td, struct input_dev *input) static void mt_complete_slot(struct mt_device *td, struct input_dev *input,struct hid_device *hid_device) {if ((td-mtclass.quirks MT_QUIRK_CONTACT_CNT_ACCURATE) td-num_received td-num_expected)return;-649,7 683,33 static void mt_complete_slot(struct mt_device *td, struct input_dev *input)int major max(s-w, s-h) 1;int minor min(s-w, s-h) 1; - input_event(input, EV_ABS, ABS_MT_POSITION_X, s-x); if (hid_device-vendor0x0457 hid_device-product0x0819) {#if MAINmGtpChange_X2YGTP_SWAP(s-x, s-y);#endifif(MIANmGtp_X_Reverse){s-x MAINX_max -s-x; }if(MAINNmGtp_Y_Reverse){s-y MAINY_max - s-y;} } else if (hid_device-vendor0x222a hid_device-product0x0001) {#if AUXmGtpChange_X2YGTP_SWAP(s-x, s-y);#endifif(AUXmGtp_X_Reverse){s-x AUXX_max -s-x;}if(AUXNmGtp_Y_Reverse){s-y AUXY_max - s-y;} }input_event(input, EV_ABS, ABS_MT_POSITION_X, s-x);input_event(input, EV_ABS, ABS_MT_POSITION_Y, s-y);input_event(input, EV_ABS, ABS_MT_TOOL_X, s-cx);input_event(input, EV_ABS, ABS_MT_TOOL_Y, s-cy);-752,7 812,7 static void mt_process_mt_event(struct hid_device *hid, struct hid_field *field,if (usage-usage_index 1 field-report_count) {/* we only take into account the last report. */if (usage-hid td-last_slot_field) - mt_complete_slot(td, field-hidinput-input);mt_complete_slot(td, field-hidinput-input,hid);}}定义宏参数含义 define MAINmGtpChange_X2Y 1 //为主屏tp的x和y互换宏定义 define MIANmGtp_X_Reverse 1 //为主屏tp的x反向宏定义 define MAINNmGtp_Y_Reverse 0 //为主屏tp的y反向宏定义 define AUXmGtpChange_X2Y 1 //为副屏tp的x和y互换宏定义 define AUXmGtp_X_Reverse 1 //为副屏tp的x反向宏定义 define AUXNmGtp_Y_Reverse 0 //为副屏tp的y反向宏定义 以上修改在rk3288_7.1上实测有效其他平台可参考修改整体实现方法类似。 关于idc文件控制触摸屏的属性可参考链接Android系统 调试usb接口触摸屏问题
http://www.hkea.cn/news/14572423/

相关文章:

  • 建站网页模板做家教的网站
  • 代加工厂都不做网站58做网站吗
  • 企业网站建设情况中国招生代理网
  • 网站建设使用的什么软件有哪些百度搜索这个网站为什么这么差
  • 泸溪县建设局网站回龙观装修公司哪家好
  • 建设网站的可行性分析个人简历模板空白表格
  • 交互设计好的网站深圳网站建设怎么样
  • 国外免费网站网络销售话术900句
  • 番禺建设网站平台08影院 wordpress
  • 快递网站建设需求分析电商首页设计思路
  • 莆田建站服务百度网站排名规则
  • 最便宜建站和wordpress
  • 金融投资网站建设网站服务器如何更改解析
  • 右安门网站建设东莞网站建设方案维护
  • 投资担保网站建设郑州网络营销外包顾问
  • 佛山网站建设锐艺传播wordpress模板怎么修改
  • 网站建设基础教程人教版做网站的搜索引擎
  • 朱腾鹏个人网站做网站公司宁波
  • 开贴纸网站要怎么做的wordpress怎样发邮件
  • wordpress和网站区别成都网站建设q479185700棒
  • 猎头公司找的工作怎么样网站seo的重要性
  • 矿山建设工程公司网站镇江市官网
  • 如何设计服装网站规划云南鼎润房地产开发有限公司网页设计
  • 度假村网站模板内账免费的财务软件
  • 南山做网站多少钱门户网站开发使用什么语言
  • 做网站收费标准点击量wordpress 调整字体
  • 企业网站备案要钱吗晋江做网站的公司哪家好
  • 网站类型怎么分北京网站设计联系方式
  • wordpress+音乐网上海seo外包
  • 公司网站如何制作seo外贸公司推广