On Wed, 12 Nov 2025, Manivannan Sadhasivam via B4 Relay wrote: > From: Manivannan Sadhasivam > > Instead of always setting the serdev device name from 'struct device' name, > allow the callers to pass an optional name and set it as the serdev device > name. > > This will be used by the future callers passing the serdev device ID as the > name. > > Signed-off-by: Manivannan Sadhasivam > --- > drivers/platform/x86/dell/dell-uart-backlight.c | 2 +- > .../platform/x86/lenovo/yoga-tab2-pro-1380-fastcharger.c | 2 +- > drivers/platform/x86/x86-android-tablets/core.c | 2 +- > drivers/tty/serdev/core.c | 13 +++++++++---- > include/linux/serdev.h | 2 +- > 5 files changed, 13 insertions(+), 8 deletions(-) > > diff --git a/drivers/platform/x86/dell/dell-uart-backlight.c b/drivers/platform/x86/dell/dell-uart-backlight.c > index f323a667dc2d2c7dec9fb284515bc3b6b984b7b9..f076cfac2bc5ec14899d6622d084bae2ffecfa3c 100644 > --- a/drivers/platform/x86/dell/dell-uart-backlight.c > +++ b/drivers/platform/x86/dell/dell-uart-backlight.c > @@ -354,7 +354,7 @@ static int dell_uart_bl_pdev_probe(struct platform_device *pdev) > if (!serdev) > return -ENOMEM; > > - ret = serdev_device_add(serdev); > + ret = serdev_device_add(serdev, NULL); > if (ret) { > dev_err(&pdev->dev, "error %d adding serdev\n", ret); > serdev_device_put(serdev); > diff --git a/drivers/platform/x86/lenovo/yoga-tab2-pro-1380-fastcharger.c b/drivers/platform/x86/lenovo/yoga-tab2-pro-1380-fastcharger.c > index 8551ab4d2c7dbc3a8d0b2f50071d4460a3ee65e9..5e568fe1162d1563183713f8d5c71c59ff7667a1 100644 > --- a/drivers/platform/x86/lenovo/yoga-tab2-pro-1380-fastcharger.c > +++ b/drivers/platform/x86/lenovo/yoga-tab2-pro-1380-fastcharger.c > @@ -260,7 +260,7 @@ static int yt2_1380_fc_pdev_probe(struct platform_device *pdev) > /* The fwnode is a managed node, so it will be auto-put on serdev_device_put() */ > fwnode_handle_get(dev_fwnode(&serdev->dev)); > > - ret = serdev_device_add(serdev); > + ret = serdev_device_add(serdev, NULL); > if (ret) { > serdev_device_put(serdev); > return dev_err_probe(&pdev->dev, ret, "adding serdev\n"); > diff --git a/drivers/platform/x86/x86-android-tablets/core.c b/drivers/platform/x86/x86-android-tablets/core.c > index 6588fae303562b7dc9a1a8d281b167e44f0d3e84..96140f5d4f79240f44cb4530ee63777f783c6aaf 100644 > --- a/drivers/platform/x86/x86-android-tablets/core.c > +++ b/drivers/platform/x86/x86-android-tablets/core.c > @@ -316,7 +316,7 @@ static __init int x86_instantiate_serdev(const struct x86_dev_info *dev_info, in > ACPI_COMPANION_SET(&serdev->dev, serdev_adev); > acpi_device_set_enumerated(serdev_adev); > > - ret = serdev_device_add(serdev); > + ret = serdev_device_add(serdev, NULL); > if (ret) { > dev_err(&serdev->dev, "error %d adding serdev\n", ret); > serdev_device_put(serdev); > diff --git a/drivers/tty/serdev/core.c b/drivers/tty/serdev/core.c > index 2b5582cd5063a87c9a6c99f83a8ab071637eae57..76b89dd0720f89dbe34e205b905ef24d9f94d770 100644 > --- a/drivers/tty/serdev/core.c > +++ b/drivers/tty/serdev/core.c > @@ -121,14 +121,19 @@ static int serdev_device_match(struct device *dev, const struct device_driver *d > /** > * serdev_device_add() - add a device previously constructed via serdev_device_alloc() > * @serdev: serdev_device to be added > + * @name: name of the serdev device (optional) > */ > -int serdev_device_add(struct serdev_device *serdev) > +int serdev_device_add(struct serdev_device *serdev, const char *name) > + > { > struct serdev_controller *ctrl = serdev->ctrl; > struct device *parent = serdev->dev.parent; > int err; > > - dev_set_name(&serdev->dev, "%s-%d", dev_name(parent), serdev->nr); > + if (name) > + dev_set_name(&serdev->dev, "%s", name); > + else > + dev_set_name(&serdev->dev, "%s-%d", dev_name(parent), serdev->nr); > > /* Only a single slave device is currently supported. */ > if (ctrl->serdev) { > @@ -544,7 +549,7 @@ static int of_serdev_register_devices(struct serdev_controller *ctrl) > > device_set_node(&serdev->dev, of_fwnode_handle(node)); > > - err = serdev_device_add(serdev); > + err = serdev_device_add(serdev, NULL); > if (err) { > dev_err(&serdev->dev, > "failure adding device. status %pe\n", > @@ -692,7 +697,7 @@ static acpi_status acpi_serdev_register_device(struct serdev_controller *ctrl, > ACPI_COMPANION_SET(&serdev->dev, adev); > acpi_device_set_enumerated(adev); > > - err = serdev_device_add(serdev); > + err = serdev_device_add(serdev, NULL); > if (err) { > dev_err(&serdev->dev, > "failure adding ACPI serdev device. status %pe\n", > diff --git a/include/linux/serdev.h b/include/linux/serdev.h > index ee42e293445d928a311bd3c120e609214f89a5dd..3b87909b199af74d619b4fe548c5c9c994e7bc15 100644 > --- a/include/linux/serdev.h > +++ b/include/linux/serdev.h > @@ -163,7 +163,7 @@ static inline void serdev_controller_put(struct serdev_controller *ctrl) > } > > struct serdev_device *serdev_device_alloc(struct serdev_controller *); > -int serdev_device_add(struct serdev_device *); > +int serdev_device_add(struct serdev_device *serdev, const char *name); > void serdev_device_remove(struct serdev_device *); > > struct serdev_controller *serdev_controller_alloc(struct device *host, > > Acked-by: Ilpo Järvinen -- i.