1 // SPDX-License-Identifier: GPL-2.0 2 3 #include <linux/types.h> 4 #include <linux/kconfig.h> 5 #include <linux/list.h> 6 #include <linux/slab.h> 7 #include <linux/security.h> 8 #include <linux/highmem.h> 9 #include <linux/umh.h> 10 #include <linux/sysctl.h> 11 12 #include "fallback.h" 13 #include "firmware.h" 14 15 /* 16 * firmware fallback configuration table 17 */ 18 19 struct firmware_fallback_config fw_fallback_config = { 20 .force_sysfs_fallback = IS_ENABLED(CONFIG_FW_LOADER_USER_HELPER_FALLBACK), 21 .loading_timeout = 60, 22 .old_timeout = 60, 23 }; 24 EXPORT_SYMBOL_NS_GPL(fw_fallback_config, FIRMWARE_LOADER_PRIVATE); 25 26 #ifdef CONFIG_SYSCTL 27 struct ctl_table firmware_config_table[] = { 28 { 29 .procname = "force_sysfs_fallback", 30 .data = &fw_fallback_config.force_sysfs_fallback, 31 .maxlen = sizeof(unsigned int), 32 .mode = 0644, 33 .proc_handler = proc_douintvec_minmax, 34 .extra1 = SYSCTL_ZERO, 35 .extra2 = SYSCTL_ONE, 36 }, 37 { 38 .procname = "ignore_sysfs_fallback", 39 .data = &fw_fallback_config.ignore_sysfs_fallback, 40 .maxlen = sizeof(unsigned int), 41 .mode = 0644, 42 .proc_handler = proc_douintvec_minmax, 43 .extra1 = SYSCTL_ZERO, 44 .extra2 = SYSCTL_ONE, 45 }, 46 { } 47 }; 48 #endif 49