USBポート修正udevルールが機能しない理由や、udevルールに関する他のいくつかの投稿の中でudevルールが機能しない理由など、他のスレッドを見て問題を解決しようとしていましたが、チェックした投稿はありませんこの問題が発生している理由を見つけるのに役立ちます。
bInterfaceNumberを使用したudevルールが機能しないという問題は、私が抱えている問題と非常によく似ていますが、本質的には同じですが、2013年以来答えがなく、今では忘れられていると思います。
完全に機能する次のルールがあります。
SUBSYSTEM=="tty", SUBSYSTEMS=="usb-serial", DRIVERS=="mos7840", ATTRS{port_number}=="0", SYMLINK+="USB-RS232-0", MODE="0777"
SUBSYSTEM=="tty", SUBSYSTEMS=="usb-serial", DRIVERS=="mos7840", ATTRS{port_number}=="1", SYMLINK+="USB-RS232-1", MODE="0777"
SUBSYSTEM=="tty", SUBSYSTEMS=="usb-serial", DRIVERS=="ftdi_sio", ATTRS{port_number}=="0", SYMLINK+="USB-TTL-0", MODE="0777"
問題は、同じ2つのデバイスがあり、2つの属性の違いはシリアル番号だけであり、同じVID / PIDも持っているため、ATTRS {serial}をルールに追加して終了する必要があることです。次のものを持つ:
SUBSYSTEM=="tty", SUBSYSTEMS=="usb-serial", DRIVERS=="mos7840", ATTRS{port_number}=="0", SYMLINK+="USB-RS232-0", MODE="0777"
SUBSYSTEM=="tty", SUBSYSTEMS=="usb-serial", DRIVERS=="mos7840", ATTRS{port_number}=="1", SYMLINK+="USB-RS232-1", MODE="0777"
SUBSYSTEM=="tty", SUBSYSTEMS=="usb-serial", DRIVERS=="ftdi_sio", ATTRS{port_number}=="0", ATTRS{serial}=="AFYS1HLQ", SYMLINK+="USB-TTL-0", MODE="0777"
SUBSYSTEM=="tty", SUBSYSTEMS=="usb-serial", DRIVERS=="ftdi_sio", ATTRS{port_number}=="0", ATTRS{serial}=="FTV8IUSR", SYMLINK+="USB-TTL-1", MODE="0777"
したがって、最後の2つのルールにATTRS {serial}を追加すると、両方が機能しなくなります。
どうしてこれなの?
ありがとう!!
@grawityはい私はチェックしました、それは両方のデバイスの正確な情報です
—
-m4l490n
ある
—
トビーSpeight
port_number
とserial
同じデバイスディレクトリには? ATTRS
ツリーを検索しますが、ツリー内の同じレベルですべての一致を実行するという点で、少し驚きです。
@TobySpeight同じディレクトリからの属性のみを含めるようにルールを変更しましたが、それでも機能しますが、ルールの最初のセットは機能し、同じディレクトリにはありません。それはなぜですか?
—
m4l490n
/sys
かudevadm info -a
、それら(または親デバイス)が実際にserial
その正確なコンテンツで名前が付けられたファイルを持っているか?