diff options
author | Max Staudt <mstaudt@chromium.org> | 2024-02-22 09:47:36 +0100 |
---|---|---|
committer | Luca Boccassi <luca.boccassi@gmail.com> | 2024-02-22 20:27:29 +0100 |
commit | 04f19d673587252040e04bf55d9425d00e1f24d0 (patch) | |
tree | 45d19af4e552aa84dc008a4341b1a12431398c10 | |
parent | network: introduce per-interface IP forwarding settings (diff) | |
download | systemd-04f19d673587252040e04bf55d9425d00e1f24d0.tar.xz systemd-04f19d673587252040e04bf55d9425d00e1f24d0.zip |
udev: Add /dev/media/by-path symlinks for media controllers
Add persistent symlinks for media controller ("mediaX") devices, based
on their ID_PATH udev properties.
For example, if the uvcvideo driver creates /dev/media0, a persistent
name may be:
/dev/media/by-path/pci-0000:04:00.3-usb-0:1:1.0-media-controller
Persistent links are a handy tool to make scripts self-documenting
during development or in tests, as well as less error prone in case of
devices changing enumeration order. For media controllers, one can
alternatively scan through all of them and look for a matching bus_info
in their struct media_device_info, but the links are much handier when
drafting something by hand.
A similar pattern already exists for Video4Linux /dev/videoX devices,
see 60-persistent-v4l.rules for those.
-rw-r--r-- | rules.d/60-persistent-media-controller.rules | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/rules.d/60-persistent-media-controller.rules b/rules.d/60-persistent-media-controller.rules new file mode 100644 index 0000000000..bf614d9783 --- /dev/null +++ b/rules.d/60-persistent-media-controller.rules @@ -0,0 +1,12 @@ +# do not edit this file, it will be overwritten on update + +# Media controller rules + +ACTION=="remove", GOTO="persistent_media_ctl_end" +SUBSYSTEM!="media", GOTO="persistent_media_ctl_end" +ENV{MAJOR}=="", GOTO="persistent_media_ctl_end" + +IMPORT{builtin}="path_id" +ENV{ID_PATH}=="?*", KERNEL=="media*", SYMLINK+="media/by-path/$env{ID_PATH}-media-controller" + +LABEL="persistent_media_ctl_end" |