




已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
/* $Id: usbkbd.c,v 1.27 2001/12/27 10:37:41 vojtech Exp $*版权所有(c) 1999-2001年帕夫里克沃伊泰克*通用串行总线键盘支持*/*该程序是自由软件;您可以重新分发和/或修改它*根据由发布的角马通用公共许可证的条款*自由软件基金会;许可证的第2版,或*(由您选择)任何更高版本。*分发此程序是希望它会有用,*但无任何保证;甚至没有暗示的担保*适销性或特定用途的适用性。看到了吗* GNU通用公共许可证了解更多详情。*你应该已经收到了一份通用公共许可证*与此程序一起;如果没有,写自由软件*美国马萨诸塞州波士顿坦普尔广场59号330室基金会有限公司,邮编:02111-1307*如果你需要联系我,作者,你可以这样做*将您的信息通过电子邮件发送至,或通过纸质邮件:发送*沃伊泰克帕夫里克,西蒙科娃1594年,布拉格8,182 00捷克共和国*/#包括#包括#包括#包括#包括#包括#包括/*版本信息*/#define DRIVER_VERSION #定义DRIVER_AUTHOR Vojtech帕夫里克#定义驱动程序_DESC通用串行总线隐藏启动协议键盘驱动程序#定义驾驶执照 GPL 模块_作者(驱动程序_作者);模块描述(驾驶员desc);模块许可(驾驶员许可);静态无符号char usb_kbd_keycode256=0,0,0,30,48,46,32,18,33,34,35,23,50,49,24,25,16,19,31,20,22,47,17,45,21,44,2,4,5,6,7,8,9,10,11,28,1,14,15,57,12,13,26,274343394041515253585960616263,65,66,67,68,87,88,99,70,119,110,102,104,111,107,109,106,105,108,103,69,98,55,74,78,96,79,80,81,72,73,82,83,86,127,116,117,183,184,185,186,187,188,191,192,193,194,134,138,130,132,128,129,131,137,133,135,115,114,0,0,0,121,0,89,93,124,92,94,122,123,90,91,85,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,29,42,56,125,97,54,100,126,164,166,165,163,161,115,114,150,158,159,128,136,177,178,176,142,152,173,140;struct usb_kbd 结构输入_ dev * devstruct usb_device *usbdev .未签名旧字符8;struct urb *irq,* led无符号字符换行符;茶名称128;char phys64;未签名的char * newstruct usb _ ctrlrequest * cr无符号char * ledsdma _ addr _ t cr _ dmadma _ addr _ t new _ dmadma _ addr _ t leds _ dma;静态void usb_kbd_irq(struct urb *urb,struct pt_regs *regs)struct usb_kbd *kbd=urb上下文;国际;开关(urb-状态)案例0:/*成功*/休息;case-ECONRESET :/* unlink */case -ENOENT:case -ESHUTDOWN:返回;/* -EPIPE:应清除暂停*/default:/*错误*/转到重新提交;input_regs(kbd-dev,regs);对于(1=0;一. 8;输入_报告_密钥(kbd-dev,usb_kbd_keycodei 224,(kbd-新0I)1);对于(I=2;一. 8;i ) if (kbd-oldi 3 memscan(kbd-new 2,kbd-oldi,6)=kbd-new 8 )如果(通用串行总线密钥代码旧i)input_report_key(kbd-dev,usb_kbd_keycodekbd-oldi,0);其他信息(”未知密钥(扫描代码%#x)已发布,kbd-旧;if (kbd-newi 3 memscan(kbd-old 2,kbd-newi,6)=kbd-old 8 )if (usb_kbd_keycodekbd-newi)input_report_key(kbd-dev,usb_kbd_keycodekbd-newi,1);其他信息(”按下未知键(扫描代码%#x),kbd-新;输入同步(kbd-dev);memcpy(kbd-old,kbd-new,8);重新提交:i=usb_submit_urb (urb,SLATE _ ATOMIC);如果错误(”无法重新提交intr,%s-%s/input0,状态“%d”,kbd-usbdev-bus-bus_name,一级;静态int usb_kbd_event(结构输入_dev *dev,无符号int类型,无符号整型代码,整型值)结构化通用串行总线_ kbd * kbd=专用;如果(类型!电动车辆发光二极管)返回-1;kbd-newleds=(!测试位(指示灯_假名,开发指示灯)3) |(!测试位(发光二极管合成,开发发光二极管)3) |(!测试位2) |(!测试位(发光二极管辅助发光二极管,开发用发光二极管)1) |(!测试位(NUML发光二极管,开发发光二极管);if(kbd-led-状态=-EIPROGRESS)返回0;if (*(kbd-leds)=kbd-newleds)返回0;*(kbd-led)=kbd-新行;kbd-led-dev=kbd-usbdev;if (usb_submit_urb(kbd-led,GFP_ATOMIC)错误(“提交城市”失败”;返回0;静态void usb_kbd_led(struct urb *urb,struct pt_regs *regs)struct usb_kbd *kbd=urb上下文;如果(urb-状态)警告(”收到led urb状态%d ,urb-状态);if (*(kbd-leds)=kbd-newleds)返回;*(kbd-led)=kbd-新行;kbd-led-dev=kbd-usbdev;if (usb_submit_urb(kbd-led,GFP_ATOMIC)错误(“提交城市”失败”;静态int usb_kbd_open(结构输入_dev *dev)结构化通用串行总线_ kbd * kbd=专用;kbd-IRQ-dev=kbd-usbdev;if (usb_submit_urb(kbd-irq,GFP_KERNEL)返回-EIO;返回0;静态void usb_kbd_close(结构输入_dev *dev)结构化通用串行总线_ kbd * kbd=专用;USB _ kill _ urb静态int usb_kbd_alloc_mem(结构usb_de
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 创业基金贷款担保协议书
- 个人借企业款项合同范本
- 养猪场生产经营合同范本
- 办公大楼租赁合同协议书范本
- 小儿急性肾炎课件
- 期货从业资格之《期货法律法规》通关试卷提供答案解析附答案详解(b卷)
- 农村信用社招聘考试试题(培优)附答案详解
- 难点详解人教版7年级数学上册期中测试卷附答案详解【能力提升】
- 万科供应商知识培训课件
- 期货从业资格之《期货法律法规》综合提升练习试题及参考答案详解(研优卷)
- 2025年医院血透室人员培训工作计划
- 国企返聘人员管理办法
- 2025年高考真题-政治(云南卷) 含答案
- 2025年全国高中物理竞赛试题及答案
- 药品注册培训课件
- 2025电力现代供应链与仓储管理
- 2025年外企德科人力资源服务招聘笔试参考题库含答案解析
- 尿毒症护理疑难病例讨论
- 回肠造口还纳护理查房
- CJ/T 341-2010混空轻烃燃气
- 存款代为保管协议书
评论
0/150
提交评论