firmware_loader: Fix configs for sysfs split
authorRuss Weight <russell.h.weight@intel.com>
Tue, 26 Apr 2022 20:03:55 +0000 (13:03 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 29 Apr 2022 14:49:44 +0000 (16:49 +0200)
Fix the CONFIGs around register_sysfs_loader(),
unregister_sysfs_loader(), register_firmware_config_sysctl(), and
unregister_firmware_config_sysctl(). The full definitions of the
register_sysfs_loader() and unregister_sysfs_loader() functions should
be used whenever CONFIG_FW_LOADER_SYSFS is defined. The
register_firmware_config_sysctl() and unregister_firmware_config_sysctl()
functions should be stubbed out unless CONFIG_FW_LOADER_USER_HELPER
CONFIG_SYSCTL are both defined.

Signed-off-by: Russ Weight <russell.h.weight@intel.com>
Link: https://lore.kernel.org/r/20220426200356.126085-2-russell.h.weight@intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/base/firmware_loader/sysfs.c
drivers/base/firmware_loader/sysfs.h

index c09fceb..eb7d932 100644 (file)
@@ -110,7 +110,6 @@ static struct class firmware_class = {
        .dev_release    = fw_dev_release,
 };
 
-#ifdef CONFIG_FW_LOADER_USER_HELPER
 int register_sysfs_loader(void)
 {
        int ret = class_register(&firmware_class);
@@ -125,7 +124,6 @@ void unregister_sysfs_loader(void)
        unregister_firmware_config_sysctl();
        class_unregister(&firmware_class);
 }
-#endif
 
 static ssize_t firmware_loading_show(struct device *dev,
                                     struct device_attribute *attr, char *buf)
index c21bcfe..e6c4879 100644 (file)
@@ -46,10 +46,12 @@ static inline void __fw_fallback_set_timeout(int timeout)
 {
        fw_fallback_config.loading_timeout = timeout;
 }
+#endif
 
+#ifdef CONFIG_FW_LOADER_SYSFS
 int register_sysfs_loader(void);
 void unregister_sysfs_loader(void);
-#ifdef CONFIG_SYSCTL
+#if defined(CONFIG_FW_LOADER_USER_HELPER) && defined(CONFIG_SYSCTL)
 int register_firmware_config_sysctl(void);
 void unregister_firmware_config_sysctl(void);
 #else
@@ -59,8 +61,8 @@ static inline int register_firmware_config_sysctl(void)
 }
 
 static inline void unregister_firmware_config_sysctl(void) { }
-#endif /* CONFIG_SYSCTL */
-#else /* CONFIG_FW_LOADER_USER_HELPER */
+#endif /* CONFIG_FW_LOADER_USER_HELPER && CONFIG_SYSCTL */
+#else /* CONFIG_FW_LOADER_SYSFS */
 static inline int register_sysfs_loader(void)
 {
        return 0;
@@ -69,7 +71,7 @@ static inline int register_sysfs_loader(void)
 static inline void unregister_sysfs_loader(void)
 {
 }
-#endif /* CONFIG_FW_LOADER_USER_HELPER */
+#endif /* CONFIG_FW_LOADER_SYSFS */
 
 struct fw_sysfs {
        bool nowait;