counter: Set counter device name

Naming the counter device provides a convenient way to identify it in
devres_log events and similar situations. This patch names the counter
device by combining the prefix "counter" with the counter device's
unique ID.

Link: https://lore.kernel.org/r/20220204084551.16397-1-vilhelm.gray@gmail.com
Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: William Breathitt Gray <vilhelm.gray@gmail.com>
Link: https://lore.kernel.org/r/87cc8eb4c84f49f89290577dc9231b2e4d7d3e8c.1647373009.git.vilhelm.gray@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
William Breathitt Gray 2022-03-15 15:38:53 -04:00 committed by Greg Kroah-Hartman
parent 95c211f03f
commit 4da08477ea
1 changed files with 11 additions and 1 deletions

View File

@ -22,6 +22,8 @@
#include "counter-chrdev.h" #include "counter-chrdev.h"
#include "counter-sysfs.h" #include "counter-sysfs.h"
#define COUNTER_NAME "counter"
/* Provides a unique ID for each counter device */ /* Provides a unique ID for each counter device */
static DEFINE_IDA(counter_ida); static DEFINE_IDA(counter_ida);
@ -113,8 +115,15 @@ struct counter_device *counter_alloc(size_t sizeof_priv)
device_initialize(dev); device_initialize(dev);
err = dev_set_name(dev, COUNTER_NAME "%d", dev->id);
if (err)
goto err_dev_set_name;
return counter; return counter;
err_dev_set_name:
counter_chrdev_remove(counter);
err_chrdev_add: err_chrdev_add:
ida_free(&counter_ida, dev->id); ida_free(&counter_ida, dev->id);
@ -247,7 +256,8 @@ static int __init counter_init(void)
if (err < 0) if (err < 0)
return err; return err;
err = alloc_chrdev_region(&counter_devt, 0, COUNTER_DEV_MAX, "counter"); err = alloc_chrdev_region(&counter_devt, 0, COUNTER_DEV_MAX,
COUNTER_NAME);
if (err < 0) if (err < 0)
goto err_unregister_bus; goto err_unregister_bus;