Since commit 43a7206b0963 ("driver core: class: make class_register() take
a const *"), the driver core allows for struct class to be in read-only
memory, so move the adb_dev_class structure to be declared at build time
placing it into read-only memory, instead of having to be dynamically
allocated at boot time.

Cc: Greg Kroah-Hartman <gre...@linuxfoundation.org>
Suggested-by: Greg Kroah-Hartman <gre...@linuxfoundation.org>
Signed-off-by: Ricardo B. Marliere <rica...@marliere.net>
---
 drivers/macintosh/adb.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/drivers/macintosh/adb.c b/drivers/macintosh/adb.c
index 057b0221f695..b0407c5fadb2 100644
--- a/drivers/macintosh/adb.c
+++ b/drivers/macintosh/adb.c
@@ -74,7 +74,9 @@ static struct adb_driver *adb_driver_list[] = {
        NULL
 };
 
-static struct class *adb_dev_class;
+static const struct class adb_dev_class = {
+       .name = "adb",
+};
 
 static struct adb_driver *adb_controller;
 BLOCKING_NOTIFIER_HEAD(adb_client_list);
@@ -888,10 +890,10 @@ adbdev_init(void)
                return;
        }
 
-       adb_dev_class = class_create("adb");
-       if (IS_ERR(adb_dev_class))
+       if (class_register(&adb_dev_class))
                return;
-       device_create(adb_dev_class, NULL, MKDEV(ADB_MAJOR, 0), NULL, "adb");
+
+       device_create(&adb_dev_class, NULL, MKDEV(ADB_MAJOR, 0), NULL, "adb");
 
        platform_device_register(&adb_pfdev);
        platform_driver_probe(&adb_pfdrv, adb_dummy_probe);

---
base-commit: 90d35da658da8cff0d4ecbb5113f5fac9d00eb72
change-id: 20240305-macintosh-9b027d413a05

Best regards,
-- 
Ricardo B. Marliere <rica...@marliere.net>

Reply via email to