새로운 VID&PID를 usb_serial 모듈에 자동으로 로드하는 방법

새로운 VID&PID를 usb_serial 모듈에 자동으로 로드하는 방법

실행해야 하는 4G 모듈이 있습니다.

echo '03f0 581d' > /sys/bus/usb-serial/drivers/generic/new_id

부팅/재개할 때마다 모뎀이 표시되도록 합니다. 자동으로 하려면 어떻게 해야 하나요?

  • USB 직렬 포트 소스에 VID&PID 추가 및 재컴파일
  • 시작/재개 시 실행되는 스크립트를 생성하고 동적으로 추가하세요.
  • 일종의 udev 규칙인가요?

가장 좋은 방법은 무엇입니까? 나는 이 udev접근법이 가장 합리적이라고 생각한다. 일시 중지/재개 중에도 이것이 작동한다고 생각합니까?

모뎀은 HP lt4112 LTE/HSPA+ Gobi 4G 모뎀(Huawei ME906E)입니다.

보너스 질문: 일시 중지/재개 주기 후에 명령을 다시 실행해야 하는 이유는 무엇입니까? 랩탑이 RAM에 정지되면 커널 모듈이 언로드되거나 재설정됩니까?

답변1

장치의 공급업체 및 제품 ID가 위와 같이 구성되어 있다고 가정하면, 즉 각각 03f0,581d우데브규칙은 자동으로 장치를 초기화하고 바인딩합니다.쿠미, 다음과 같습니다.

file /etc/udev/rules.d/98-modem-rules.rules

sudo자주 사용하는 텍스트 편집기(적절한 권한 필요)를 사용하여 다음 내용이 포함된 파일을 만듭니다 .

ACTION!="add|change", GOTO="mbim_to_qmi_rules_end"
SUBSYSTEM!="usb|drivers", GOTO="mbim_to_qmi_rules_end"

# load qmi_wwan module
SUBSYSTEM=="usb", \
ATTR{idVendor}=="03f0", ATTR{idProduct}=="581d", \
RUN+="/sbin/modprobe -b qmi_wwan"

# Initialize the LTE lt112 module to operational status:
SUBSYSTEM=="usb", \
ATTR{idVendor}=="03f0", ATTR{idProduct}=="581d", \
ATTR{bConfigurationValue}="3"

# add the new id in the qmi_wwan driver
SUBSYSTEM=="drivers", \
ENV{DEVPATH}=="/bus/usb/drivers/qmi_wwan", \
ATTR{new_id}="03f0 581d"

# load qcserial module
SUBSYSTEM=="usb", \
ATTR{idVendor}=="03f0", ATTR{idProduct}=="581d", \
RUN+="/sbin/modprobe -b qcserial"

# add the new id in the qcserial driver
SUBSYSTEM=="drivers", \
ENV{DEVPATH}=="/bus/usb-serial/drivers/qcserial", \
ATTR{new_id}="03f0 581d"
LABEL="mbim_to_qmi_rules_end"

컴퓨터에 적절한 패키지도 설치해야 합니다.

Ubuntu를 가정하면(배포 정보가 제공되지 않으므로) 다음을 실행합니다.

sudo apt install libqmi libqmi-utils

완료되면 새 udev 규칙을 활성화합니다.

sudo udevadm control --reload-rules
sudo udevadm trigger

당신은 또한 찾을 수 있습니다모뎀 관리자, 네트워크 신호 강도 등과 같은 모뎀 통계를 보기 위한 GUI 프런트엔드입니다.

다음을 통해 설치할 수 있습니다.

sudo apt install modem-manager-gui

SIM 카드를 삽입한 후 콜드 부팅이 필요합니다.

고쳐 쓰다:

또 다른 방법은 패키지를 설치하는 것입니다 usb-modeswitch-data.USB 모드 스위치종속성으로).

이 패키지에는 usb-modeswitch가 장치를 적절하게 초기화하고 여러 장치에 여러 항목을 제공할 수 있도록 하는 udev 규칙이 포함되어 있습니다. 동일한 내용에 대해서는 변경 로그를 참조하세요.여기.

패키지의 udev 규칙은 이라는 파일에 저장됩니다 40-usb_modeswitch.rules. 특정 하드웨어의 경우 이는 32-33행에 있습니다.

# HP hs4112
ATTR{idVendor}=="03f0", ATTR{idProduct}=="581d", RUN+="usb_modeswitch '/%k'"

설치 usb-modeswitch후에는 usb-modeswitch-dataSIM 카드가 인식되기 전에 udev 규칙을 다시 로드하더라도 재부팅해야 합니다.

관련 정보