udev 및 커널은 USB 장치의 이벤트를 표시하지 않습니다.

udev 및 커널은 USB 장치의 이벤트를 표시하지 않습니다.

나는 zedboard와 같은 플랫폼에서 임베디드 리눅스를 실행합니다. 연결될 다양한 장치에 대한 udev 규칙을 생성해야 합니다.

커널에 widgetfs와 configfs가 있고 이를 모듈로 구축했습니다. 모듈을 로드하면 USB를 통한 이더넷과 같은 적절한 USB 장치를 노트북이나 다른 장치에 사용할 수 있습니다.

문제는 핫 플러깅을 지원하고 udev 규칙을 사용해야 할 때 시작됩니다. 그래서 udevadm monitor를 실행했지만 USB 장치가 연결되어 있을 때 커널이나 udev 트리거가 표시되지 않습니다. 모듈을 로드하면 모듈이 로드될 때 USB 장치에 대한 커널/udev 트리거를 볼 수 있습니다.

이것이 정상적인 행동입니까? USB를 지원할 수 있는 모듈이 있든 없든 트리거를 통해 USB가 연결되었음을 커널이 보고해야 한다고 생각했습니다. 일반 USB 드라이버도 커널에 내장되어 있지만 전혀 작동하지 않는 것 같습니다. 이것이 바로 내가 Gadgetfs 및 configfs를 사용하게 된 이유입니다.

가젯 모듈이 로드되지 않은 상태에서 내 udev에 트리거 이벤트가 표시되지 않는 이유를 아는 사람이 있습니까? USB가 연결되어 있을 때 트리거 이벤트를 볼 수 없으면 핫 플러깅을 자동화할 수 없습니다.

내 USB 컨트롤러는 Chipidea이고 OTG 모드에서 사용합니다.

관련 정보