summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJori Koolstra <jkoolstra@xs4all.nl>2026-03-03 22:21:20 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2026-03-16 13:48:51 +0300
commit04576813544d141b50e7e80e2f447b88235c61d7 (patch)
tree1093d9a327b2ed99cb20e83252a59dd8a75bfdd9
parent42df3a519ab6d355e2c43f1e30eb5414b60aeea5 (diff)
downloadlinux-04576813544d141b50e7e80e2f447b88235c61d7.tar.xz
gpib: common: change gpib_class to a const struct
The class_create() call has been deprecated in favor of class_register() as the driver core now allows for a struct class to be in read-only memory. Change gpib_class to be a const struct class and drop the class_create() call. Link: https://lore.kernel.org/all/2023040244-duffel-pushpin-f738@gregkh/ Suggested-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Jori Koolstra <jkoolstra@xs4all.nl> Link: https://patch.msgid.link/20260303192124.3855792-1-jkoolstra@xs4all.nl Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/gpib/common/gpib_os.c17
1 files changed, 10 insertions, 7 deletions
diff --git a/drivers/gpib/common/gpib_os.c b/drivers/gpib/common/gpib_os.c
index be757db993a5..0a8b981fc579 100644
--- a/drivers/gpib/common/gpib_os.c
+++ b/drivers/gpib/common/gpib_os.c
@@ -2169,10 +2169,13 @@ void init_gpib_status_queue(struct gpib_status_queue *device)
device->dropped_byte = 0;
}
-static struct class *gpib_class;
+static const struct class gpib_class = {
+ .name = "gpib_common",
+};
static int __init gpib_common_init_module(void)
{
+ int err;
int i;
pr_info("GPIB core driver\n");
@@ -2181,14 +2184,14 @@ static int __init gpib_common_init_module(void)
pr_err("gpib: can't get major %d\n", GPIB_CODE);
return -EIO;
}
- gpib_class = class_create("gpib_common");
- if (IS_ERR(gpib_class)) {
+ err = class_register(&gpib_class);
+ if (err) {
pr_err("gpib: failed to create gpib class\n");
unregister_chrdev(GPIB_CODE, "gpib");
- return PTR_ERR(gpib_class);
+ return err;
}
for (i = 0; i < GPIB_MAX_NUM_BOARDS; ++i)
- board_array[i].gpib_dev = device_create(gpib_class, NULL,
+ board_array[i].gpib_dev = device_create(&gpib_class, NULL,
MKDEV(GPIB_CODE, i), NULL, "gpib%i", i);
return 0;
@@ -2199,9 +2202,9 @@ static void __exit gpib_common_exit_module(void)
int i;
for (i = 0; i < GPIB_MAX_NUM_BOARDS; ++i)
- device_destroy(gpib_class, MKDEV(GPIB_CODE, i));
+ device_destroy(&gpib_class, MKDEV(GPIB_CODE, i));
- class_destroy(gpib_class);
+ class_unregister(&gpib_class);
unregister_chrdev(GPIB_CODE, "gpib");
}