GNU Linux-libre 4.19.264-gnu1
[releases.git] / drivers / base / firmware_loader / fallback_table.c
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 /* Module or buit-in */
20 #ifdef CONFIG_FW_LOADER_USER_HELPER
21
22 static unsigned int zero;
23 static unsigned int one = 1;
24
25 struct firmware_fallback_config fw_fallback_config = {
26         .force_sysfs_fallback = IS_ENABLED(CONFIG_FW_LOADER_USER_HELPER_FALLBACK),
27         .loading_timeout = 60,
28         .old_timeout = 60,
29 };
30 EXPORT_SYMBOL_GPL(fw_fallback_config);
31
32 struct ctl_table firmware_config_table[] = {
33         {
34                 .procname       = "force_sysfs_fallback",
35                 .data           = &fw_fallback_config.force_sysfs_fallback,
36                 .maxlen         = sizeof(unsigned int),
37                 .mode           = 0644,
38                 .proc_handler   = proc_douintvec_minmax,
39                 .extra1         = &zero,
40                 .extra2         = &one,
41         },
42         {
43                 .procname       = "ignore_sysfs_fallback",
44                 .data           = &fw_fallback_config.ignore_sysfs_fallback,
45                 .maxlen         = sizeof(unsigned int),
46                 .mode           = 0644,
47                 .proc_handler   = proc_douintvec_minmax,
48                 .extra1         = &zero,
49                 .extra2         = &one,
50         },
51         { }
52 };
53 EXPORT_SYMBOL_GPL(firmware_config_table);
54
55 #endif