chiark / gitweb /
use libexecdir, bindir, sbindir, switch to /usr/lib/udev in documentation
[elogind.git] / rules / rules.d / 60-persistent-serial.rules
index 6d09506dec2a0b5dea94b93c8c3ee8bcd890dc52..2948200c536457575827d452c3e3e41c5af54d23 100644 (file)
@@ -1,19 +1,20 @@
 # do not edit this file, it will be overwritten on update
 
-ACTION!="add|change", GOTO="persistent_serial_end"
+ACTION=="remove", GOTO="persistent_serial_end"
 SUBSYSTEM!="tty", GOTO="persistent_serial_end"
-KERNEL!="ttyUSB[0-9]*", GOTO="persistent_serial_end"
+KERNEL!="ttyUSB[0-9]*|ttyACM[0-9]*", GOTO="persistent_serial_end"
 
-SUBSYSTEMS=="usb-serial", ENV{ID_PORT}="$attr{port_number}"
-ENV{ID_PORT}=="", GOTO="persistent_serial_end"
+SUBSYSTEMS=="usb-serial", ENV{.ID_PORT}="$attr{port_number}"
 
-IMPORT="path_id"
-ENV{ID_PATH}=="?*", SYMLINK+="serial/by-path/$env{ID_PATH}-port$env{ID_PORT}"
+IMPORT{builtin}="path_id"
+ENV{ID_PATH}=="?*", ENV{.ID_PORT}=="", SYMLINK+="serial/by-path/$env{ID_PATH}"
+ENV{ID_PATH}=="?*", ENV{.ID_PORT}=="?*", SYMLINK+="serial/by-path/$env{ID_PATH}-port$env{.ID_PORT}"
 
-IMPORT="usb_id --export %p"
+IMPORT{builtin}="usb_id"
 ENV{ID_SERIAL}=="", GOTO="persistent_serial_end"
-SUBSYSTEMS=="usb", ENV{ID_IFACE}="$attr{bInterfaceNumber}"
-ENV{ID_IFACE}=="", GOTO="persistent_serial_end"
-SYMLINK+="serial/by-id/$env{ID_BUS}-$env{ID_SERIAL}-if$env{ID_IFACE}-port$env{ID_PORT}"
+SUBSYSTEMS=="usb", ENV{ID_USB_INTERFACE_NUM}="$attr{bInterfaceNumber}"
+ENV{ID_USB_INTERFACE_NUM}=="", GOTO="persistent_serial_end"
+ENV{.ID_PORT}=="", SYMLINK+="serial/by-id/$env{ID_BUS}-$env{ID_SERIAL}-if$env{ID_USB_INTERFACE_NUM}"
+ENV{.ID_PORT}=="?*", SYMLINK+="serial/by-id/$env{ID_BUS}-$env{ID_SERIAL}-if$env{ID_USB_INTERFACE_NUM}-port$env{.ID_PORT}"
 
 LABEL="persistent_serial_end"