diff options
-rw-r--r-- | include/linux/init.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/include/linux/init.h b/include/linux/init.h index 2df8e8dd10a4..bc11ff96f336 100644 --- a/include/linux/init.h +++ b/include/linux/init.h | |||
@@ -268,6 +268,21 @@ struct obs_kernel_param { | |||
268 | #define early_param(str, fn) \ | 268 | #define early_param(str, fn) \ |
269 | __setup_param(str, fn, fn, 1) | 269 | __setup_param(str, fn, fn, 1) |
270 | 270 | ||
271 | #define early_param_on_off(str_on, str_off, var, config) \ | ||
272 | int var = IS_ENABLED(config); \ | ||
273 | static int __init parse_##var##_on(char *arg) \ | ||
274 | { \ | ||
275 | var = 1; \ | ||
276 | return 0; \ | ||
277 | } \ | ||
278 | static int __init parse_##var##_off(char *arg) \ | ||
279 | { \ | ||
280 | var = 0; \ | ||
281 | return 0; \ | ||
282 | } \ | ||
283 | __setup_param(str_on, parse_##var##_on, parse_##var##_on, 1); \ | ||
284 | __setup_param(str_off, parse_##var##_off, parse_##var##_off, 1) | ||
285 | |||
271 | /* Relies on boot_command_line being set */ | 286 | /* Relies on boot_command_line being set */ |
272 | void __init parse_early_param(void); | 287 | void __init parse_early_param(void); |
273 | void __init parse_early_options(char *cmdline); | 288 | void __init parse_early_options(char *cmdline); |