intel_idle: Use subsys_initcall_sync() for initialization
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>
Thu, 5 Jun 2025 15:04:11 +0000 (17:04 +0200)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Fri, 6 Jun 2025 15:49:39 +0000 (17:49 +0200)
It is not necessary to wait until the device_initcall() stage with
intel_idle initialization.  All of its dependencies are met after
all subsys_initcall()s have run, so subsys_initcall_sync() can be
used for initializing it.

It is also better to ensure that intel_idle will always initialize
before the ACPI processor driver that uses module_init() for its
initialization.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Tested-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
Link: https://patch.msgid.link/2994397.e9J7NaK4W3@rjwysocki.net
drivers/idle/intel_idle.c

index 8ccb483204fa4c76d738ff8efaca75cf705b91f6..64ac4da0809400b1e1fb08ac79ea3fc70a4769e8 100644 (file)
@@ -2518,7 +2518,7 @@ init_driver_fail:
        return retval;
 
 }
-device_initcall(intel_idle_init);
+subsys_initcall_sync(intel_idle_init);
 
 /*
  * We are not really modular, but we used to support that.  Meaning we also