config MODULES bool "modules" # bool/tristate and optional choice BOOL bool "bool" config B_1 tristate "B_1" config B_2 tristate "B_2" endchoice choice BOOL_OPT bool "bool optional" optional config BO_1 tristate "BO_1" config BO_2 tristate "BO_2" endchoice choice TRISTATE tristate "tristate" config T_1 tristate "T_1" config T_2 tristate "T_2" endchoice choice TRISTATE_OPT tristate "tristate optional" optional config TO_1 tristate "TO_1" config TO_2 tristate "TO_2" endchoice # m-visibility choice BOOL_M bool "bool m" if m config BM_1 tristate "BM_1" config BM_2 tristate "BM_2" endchoice choice TRISTATE_M tristate "tristate m" if m config TM_1 tristate "TM_1" config TM_2 tristate "TM_2" endchoice # Defaults config TRISTATE_SYM tristate "tristate" choice DEFAULTS bool "defaults" default OPT_1 if n default OPT_2 if TRISTATE_SYM default OPT_4 config OPT_1 tristate "OPT_1" config OPT_2 tristate "OPT_2" config OPT_3 tristate "OPT_3" config OPT_4 tristate "OPT_4" endchoice choice DEFAULTS_NOT_VISIBLE bool "defaults not visible" # Skipped due to condition default OPT_6 if n # Skipped because OPT_7 is not visible default OPT_7 # This one should apply default OPT_8 config OPT_5 tristate "OPT_5" config OPT_6 tristate "OPT_6" config OPT_7 tristate "OPT_7" if n config OPT_8 tristate "OPT_8" config OPT_9 tristate "OPT_9" endchoice # Choices without an explicitly specified type should get the type of the first # symbol with a type choice NO_TYPE_BOOL prompt "no type bool" config NTB_1 bool "NTB_1" config NTB_2 tristate "NTB_2" endchoice choice NO_TYPE_TRISTATE prompt "no type tristate" config NTT_1 config NTT_2 tristate "NTB_2" config NTT_3 bool "NTT_3" endchoice # Choice items without an explicitly specified type should get the type of the # choice choice MISSING_MEMBER_TYPES_1 bool "missing member types" config MMT_1 config MMT_2 config MMT_3 tristate endchoice choice MISSING_MEMBER_TYPES_2 config MMT_4 config MMT_5 bool endchoice # Choice where the default selection (the first symbol) depends on another # symbol. If that symbol becomes 'n', the default selection should change to # the first visible symbol in the choice. choice DEFAULT_WITH_DEP bool "default with dep" config A bool "A" depends on DEP config B bool "B" endchoice config DEP bool "dep" # Choice with symbols that shouldn't be considered choice symbols because they # depend on the preceding symbol. This might be a kconfig bug, but some things # use it, so we need to emulate it. choice WEIRD_SYMS bool "weird symbols that aren't considered part of the choice" # Only WS1 is part of the choice config WS1 bool "WS1" config WS2 bool "WS2" depends on WS1 config WS3 bool depends on WS2 config WS4 bool depends on WS1 config WS5 bool "WS5" if WS1 # 'if' has the same effect, so only WS6 is part of the choice config WS6 bool "WS6" if WS6 config WS7 bool config WS8 bool "WS8" endif # Should also be part of the choice config WS9 bool "WS9" endchoice