<feed xmlns='http://www.w3.org/2005/Atom'>
<title>vyos-1x.git/src/etc/udev/rules.d/90-vyos-serial.rules, branch rolling</title>
<subtitle>VyOS command definitions, scripts, and utilities (mirror of https://github.com/vyos/vyos-1x.git)
</subtitle>
<id>https://git.amelek.net/vyos/vyos-1x.git/atom?h=rolling</id>
<link rel='self' href='https://git.amelek.net/vyos/vyos-1x.git/atom?h=rolling'/>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/'/>
<updated>2026-04-08T21:01:11+00:00</updated>
<entry>
<title>serial: T8211: refactor rule to reduce duplication</title>
<updated>2026-04-08T21:01:11+00:00</updated>
<author>
<name>Stephen Nothnagel</name>
<email>srnoth@users.noreply.github.com</email>
</author>
<published>2026-04-08T21:01:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=8f5934e9a7f75a18b7399b163fe8e898a63ce77c'/>
<id>urn:sha1:8f5934e9a7f75a18b7399b163fe8e898a63ce77c</id>
<content type='text'>
Store the PROGRAM output in a temporary .BY_BUS ENV variable, then
reference it via %E{.BY_BUS} in the SYMLINK+= assignments. This
collapses the three duplicated PROGRAM pipelines into a single
invocation and removes the mixed usage of $result and %c.

No functional change: tested on MosChip MCS7840 (2x 4-port chips,
8 ports total), FTDI FT4232H, and Sierra EM7455 -- all symlinks
identical before and after, verified with udevadm test.

Reduces duplication; refactor suggested by
@copilot-pull-request-reviewer on PR #5113.
</content>
</entry>
<entry>
<title>serial: T8211: fix symlink collisions for multi-port USB serial adapters</title>
<updated>2026-04-06T18:57:41+00:00</updated>
<author>
<name>Stephen Nothnagel</name>
<email>srnoth@users.noreply.github.com</email>
</author>
<published>2026-04-06T18:54:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=2509879017df77a0a7478df63d3e30c193c5ed7c'/>
<id>urn:sha1:2509879017df77a0a7478df63d3e30c193c5ed7c</id>
<content type='text'>
Multi-port USB serial adapters (e.g., MosChip MCS7840) where all ports
share the same USB ID_PATH create identical symlink names in
/dev/serial/by-bus/, causing only the last-enumerated port to be
accessible.

Split the existing catch-all rule for devices with .ID_PORT into two
cases:
- Port 0: keeps the base symlink name (backward compatible)
- Port 1+: appends pN suffix (e.g., usb0b1.4.1p1.0p1)

Devices where each port has a unique ID_PATH (e.g., FTDI FT4232H) and
single-port devices are unaffected.
</content>
</entry>
<entry>
<title>T8410: Fix typos and mistakes for operational and configuration commands</title>
<updated>2026-03-24T17:02:56+00:00</updated>
<author>
<name>Viacheslav Hletenko</name>
<email>v.gletenko@vyos.io</email>
</author>
<published>2026-03-20T16:41:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=bb2aee1e58c1cd30087b935798060e6bf3c698c8'/>
<id>urn:sha1:bb2aee1e58c1cd30087b935798060e6bf3c698c8</id>
<content type='text'>
Fix typos and mistakes in the commands and comments
No functional changes
</content>
</entry>
<entry>
<title>udev: T6985: Fix udev rule to also register ttyACM serial devices</title>
<updated>2024-12-28T09:03:06+00:00</updated>
<author>
<name>Grant Slater</name>
<email>github@firefishy.com</email>
</author>
<published>2024-12-28T09:03:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=13dfb5093345abf14fe635a6aee83ad801dab027'/>
<id>urn:sha1:13dfb5093345abf14fe635a6aee83ad801dab027</id>
<content type='text'>
</content>
</entry>
<entry>
<title>console: udev: T3954: adjust rule script to new systemd-udev version</title>
<updated>2021-10-31T12:48:22+00:00</updated>
<author>
<name>Christian Poessinger</name>
<email>christian@poessinger.com</email>
</author>
<published>2021-10-31T12:48:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=513e951f3e1358ec6ff5424d03e8f4e9aa7c3388'/>
<id>urn:sha1:513e951f3e1358ec6ff5424d03e8f4e9aa7c3388</id>
<content type='text'>
We can no longer use bash veriable string code vor string manipulation. Move to
a more robust "cut" implementation.
</content>
</entry>
<entry>
<title>udev: T2490: fix substitution error reported by udev</title>
<updated>2021-08-21T06:52:43+00:00</updated>
<author>
<name>Christian Poessinger</name>
<email>christian@poessinger.com</email>
</author>
<published>2021-08-21T06:52:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=fa07bc3b87be142572124a2ce5c077cb42272418'/>
<id>urn:sha1:fa07bc3b87be142572124a2ce5c077cb42272418</id>
<content type='text'>
</content>
</entry>
<entry>
<title>udev: T2490: add persistent USB device files</title>
<updated>2020-06-07T09:55:14+00:00</updated>
<author>
<name>Christian Poessinger</name>
<email>christian@poessinger.com</email>
</author>
<published>2020-05-29T20:22:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=1fc4aadb5d87643d6e64805b19a5a9e7671737ba'/>
<id>urn:sha1:1fc4aadb5d87643d6e64805b19a5a9e7671737ba</id>
<content type='text'>
During testing it was discovered that on 5 out of 10 reboots the USB
enumeration/mapping from physical port to /dev/ttyUSB is different. The root
cause is that it's a FIFO so first found/loaded driver module will be assigned
ttyUSB0.

This mixed up the serial interfaces of my FTDI chips and my connected Sierra
Wireless MC7710 card which was no longer functioning as it now was mapped to
a different USB interface.

The solution is a udev rule which persistently maps the USB-tree-device to a
device file in /dev. Wait? isn't this what /dev/serial/by-{id,path} is for?
Correct, it does the very same thing but the problem is as follows:

* by-path uses device file names which also incorporate the parent bus system,
  this results in "pci-0000:00:10.0-usb-0:2.4:1.0-port0"
* by-id will overwrite the assigned device symlink if a new USB device with the
  same name appears. This happens to some FTDI devices with no serial number
  programmed so the device added last wins and will be the only one in
  the by-id folder - cruel world!

This commit adds a new directory /dev/serial/by-bus which holds the following
device files (as example):

  $ ls -1 /dev/serial/by-bus/
  usb0b1.3p1.0
  usb0b1.3p1.2
  usb0b1.3p1.3
  usb0b2.4p1.0
  usb0b2.4p1.1
  usb0b2.4p1.2
  usb0b2.4p1.3
</content>
</entry>
</feed>
