PS2 Keyboard & Mouse

PS2设备通过7-pinHeader连接主板,其中DET#检测插入状态,KCLK和MCLK是时钟信号,KDATA和MDATA传输数据。EC配置中,8042芯片处理键鼠数据,SIO芯片预留LDN给键盘和鼠标。Port60/64通常用于EC与CPU通信,配置PS2设备需解码此端口。由于不支持热插拔,ASLCode宣告设备存在以加载驱动并建立通讯。GPIO状态用于判断PS2设备是否已连接。
摘要由CSDN通过智能技术生成

PS2 KB & MS的线路链接

PS2 设备一般是由Cable连接到主板上面,与主板连接的Header有7个pin脚,分别是Vcc、GND、KCLK、MCLK、KDATA、MDATA和DET#。DET#是用于检测PS2 Cable是否插入主板,DET#信号一般会连接到CPU的一个GPIO上面。KCLK和MCLK是键盘和鼠标的时钟信号,KDATA和MDATA是键鼠的DATA信号,这两个信号一般交给8042、8048芯片处理,8042芯片现在集成在EC的内部,EC留有四个可以复用的Pin脚,ITE的EC芯片一般是可以复用为GPIO也可以当做KCLK、KDATA、MCLK、MDATA使用。所以EC的配置PS2设备的时候,一定要记得配置这四个Pin脚的复用功能。

SIO芯片会预留两个LDN给Mouse和Keyboard,这两个LDN要使能。

EC上面的KB & MS需要通过IoPort与CPU通信,一般是用Port60/64,当然这个Port是可以进行配置的,ITE的配置方法是LDN5(Keyboard Configuration Register)的60 61 62 63四个寄存器进行配置。所以添加PS2设备的时候,需要提前将Port60/64进行解码。

PS2 KB & MS是不支持热插拔的PNP设备,所以安装以后需要通过ASL Code向OS宣告PS2设备的存在。

实际项目中的做法:

EE工程师会在CPU上面选择一个GPIO作为PS2 Detector,然后EC会去收集这个GPIO的Status,存放在EcRam里面。在Asl Code里面,会判断之前获取的GPIO状态,根据不同的状态给OS汇报不同的信息,例如,PS2 Cable已经Plugged in,则会宣告拥有PS2,这样在设备管理器里面才能看到PS2 KB和MS,OS才会去加载驱动和PS2 KB MS Ack并建立通讯通路。反之,不会给OS汇报PS2设备,OS不知道自己挂载了PS2设备,也不会在设备管理器里面显示PS2 设备的相关消息。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值