brcm63xx cleanups; add a watchdog driver, indent serial console driver, add support...
[openwrt.git] / scripts / config / zconf.y
index 83243f5..9689a3e 100644 (file)
@@ -69,9 +69,11 @@ static struct menu *current_menu, *current_entry;
 %token <id>T_PROMPT
 %token <id>T_TYPE
 %token <id>T_DEFAULT
+%token <id>T_DESELECT
 %token <id>T_SELECT
 %token <id>T_RANGE
 %token <id>T_ON
+%token <id>T_RESET
 %token <string> T_WORD
 %token <string> T_WORD_QUOTE
 %token T_UNEQUAL
@@ -118,7 +120,7 @@ stmt_list:
 ;
 
 option_name:
-       T_DEPENDS | T_PROMPT | T_TYPE | T_SELECT | T_OPTIONAL | T_RANGE | T_DEFAULT
+       T_DEPENDS | T_PROMPT | T_TYPE | T_DESELECT | T_SELECT | T_OPTIONAL | T_RANGE | T_DEFAULT | T_RESET
 ;
 
 common_stmt:
@@ -203,6 +205,12 @@ config_option: T_DEFAULT expr if_expr T_EOL
                $1->stype);
 };
 
+config_option: T_DESELECT T_WORD if_expr T_EOL
+{
+       menu_add_symbol(P_DESELECT, sym_lookup($2, 0), $3);
+       printd(DEBUG_PARSE, "%s:%d:deselect\n", zconf_curname(), zconf_lineno());
+};
+
 config_option: T_SELECT T_WORD if_expr T_EOL
 {
        menu_add_symbol(P_SELECT, sym_lookup($2, 0), $3);
@@ -274,6 +282,11 @@ choice_option: T_OPTIONAL T_EOL
        printd(DEBUG_PARSE, "%s:%d:optional\n", zconf_curname(), zconf_lineno());
 };
 
+choice_option: T_RESET if_expr T_EOL
+{
+       menu_add_prop(P_RESET, NULL, NULL, $2);
+};
+
 choice_option: T_DEFAULT T_WORD if_expr T_EOL
 {
        if ($1->stype == S_UNKNOWN) {
This page took 0.029586 seconds and 4 git commands to generate.