嵌入式linux gadget开发中,usb设备插入PC时,在设备端怎么捕捉跟主机的连接和断开? 20
我做了一个基于ARM-linux的USB设备,该设备可以模拟U盘,当他插入PC时,PC端会显示盘符。从LinuxPC端可以识别USB设备,问题是,我想在设备端捕捉USB插...
我做了一个基于ARM-linux的USB设备,该设备可以模拟U盘,当他插入PC时,PC端会显示盘符。从Linux PC端可以识别USB设备,问题是,我想在设备端捕捉USB插入主机时的信号,并根据该信号运行一个自定义的脚本文件,该怎么做?已经查过设备端linux系统的/proc/kmsg中有一条信息可以显示USB设备已经连接,但不知道怎么捕捉,在设备端也没有日志记录。最好是能写个脚本或者写个简单的C程序解决。
展开
2个回答
2012-10-25
展开全部
linux 本身就已经有支持热插拔设备,并在插入和拔出后调用你指定的脚本,google里以linux hotplug做关键字搜索即可。
追问
在主机端已经可以根据内核输出的信息完成这些,不过在设备端的linux系统下找不到内核输出相关的信息,proc文件系统下相关文件已经检查过没有,设备端linux系统下的没有装日志。我现在不想重新编译内核,重做系统,只想写个简单的程序来捕捉这些usb相关的信号。至于热插拔的机制已经有所了解,此机制在相关驱动中已经封装的很好了,如无必要我并不想改动这些底层代码。
追答
kmsg中如果有你需要的信息,就可以通过syslog接口读取,你用select监控让会匹配就行了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |