]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
serial: core: restore of_node information in sysfs
authorAidan Stewart <astewart@tektelic.com>
Tue, 17 Jun 2025 16:48:19 +0000 (10:48 -0600)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 19 Jun 2025 11:27:48 +0000 (13:27 +0200)
Since in v6.8-rc1, the of_node symlink under tty devices is
missing. This breaks any udev rules relying on this information.

Link the of_node information in the serial controller device with the
parent defined in the device tree. This will also apply to the serial
device which takes the serial controller as a parent device.

Fixes: b286f4e87e32 ("serial: core: Move tty and serdev to be children of serial core port device")
Cc: stable@vger.kernel.org
Signed-off-by: Aidan Stewart <astewart@tektelic.com>
Link: https://lore.kernel.org/r/20250617164819.13912-1-astewart@tektelic.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/serial_base_bus.c

index 5d1677f1b651c22b9ce27b87ea010a95c2596846..cb3b127b06b613e7049dd862ce7d50b6f322907e 100644 (file)
@@ -72,6 +72,7 @@ static int serial_base_device_init(struct uart_port *port,
        dev->parent = parent_dev;
        dev->bus = &serial_base_bus_type;
        dev->release = release;
+       device_set_of_node_from_dev(dev, parent_dev);
 
        if (!serial_base_initialized) {
                dev_dbg(port->dev, "uart_add_one_port() called before arch_initcall()?\n");