[PATCH v2] counter: Set counter device name

From: William Breathitt Gray
Date: Fri Feb 04 2022 - 03:46:08 EST


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.

Cc: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
Signed-off-by: William Breathitt Gray <vilhelm.gray@xxxxxxxxx>
---
Changes in v2:
- Move dev_set_name() after device_initialize() so that device core
takes care of cleanup on error

drivers/counter/counter-core.c | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/drivers/counter/counter-core.c b/drivers/counter/counter-core.c
index 7e0957eea094..6219d62bf223 100644
--- a/drivers/counter/counter-core.c
+++ b/drivers/counter/counter-core.c
@@ -22,6 +22,8 @@
#include "counter-chrdev.h"
#include "counter-sysfs.h"

+#define COUNTER_NAME "counter"
+
/* Provides a unique ID for each counter device */
static DEFINE_IDA(counter_ida);

@@ -115,8 +117,15 @@ struct counter_device *counter_alloc(size_t sizeof_priv)

device_initialize(dev);

+ err = dev_set_name(dev, COUNTER_NAME "%d", dev->id);
+ if (err)
+ goto err_dev_set_name;
+
return counter;

+err_dev_set_name:
+
+ counter_chrdev_remove(counter);
err_chrdev_add:

ida_free(&counter_ida, dev->id);
@@ -250,7 +259,8 @@ static int __init counter_init(void)
if (err < 0)
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)
goto err_unregister_bus;


base-commit: 7b9c8e1a0ca18a62565ee0e28b23baf7b176e96f
--
2.35.1