]> granicus.if.org Git - esp-idf/commitdiff
Kconfig: make WiFi and BT mutually exclusive
authorIvan Grokhotkov <ivan@espressif.com>
Thu, 22 Sep 2016 10:36:23 +0000 (18:36 +0800)
committerIvan Grokhotkov <ivan@espressif.com>
Thu, 22 Sep 2016 10:36:23 +0000 (18:36 +0800)
Also move memory map options from top-level Kconfig to esp32/Kconfig.

Kconfig
components/bt/Kconfig
components/esp32/Kconfig

diff --git a/Kconfig b/Kconfig
index 58ce77b2b5002c135f27c26e18f0e1f18e317dd3..73770a79a6bd7f92f1568147227595128de25b3b 100644 (file)
--- a/Kconfig
+++ b/Kconfig
@@ -19,38 +19,6 @@ config PYTHON
        help
            The executable name/path that is used to run python. On some systems Python 2.x
                may need to be invoked as python2.
-
-config MEMMAP_BT
-       bool "Reserve space for Bluetooth stack"
-       default "n"
-       help
-               The Bluetooth stack uses memory that cannot be used as generic memory anymore. This
-               reserves the space for that within the memory map of the compiled binary.
-
-config MEMMAP_SMP
-       bool "Reserve memory for two cores"
-       default "y"
-       help
-               The ESP32 contains two cores. If you plan to only use one, you can disable this item
-               to save some memory. (ToDo: Make this automatically depend on unicore support)
-
-config MEMMAP_TRACEMEM
-       bool "Use TRAX tracing feature"
-       default "n"
-       help
-               The ESP32 contains a feature which allows you to trace the execution path the processor
-               has taken through the program. This is stored in a chunk of 32K (16K for single-processor)
-               of memory that can't be used for general purposes anymore. Disable this if you do not know
-               what this is.
-
-config MEMMAP_SPISRAM
-       bool "Use external SPI SRAM chip as main memory"
-       default "n"
-       help
-               The ESP32 can control an external SPI SRAM chip, adding the memory it contains to the 
-               main memory map. Enable this if you have this hardware and want to use it in the same
-               way as on-chip RAM.
-
 endmenu
 
 source "$COMPONENT_KCONFIGS_PROJBUILD"
index 90ef1f3eb6c140d1f781f40bb6547c2e01ba3a62..ab163efc611c4faa1a043ed68762d5320190e742 100644 (file)
@@ -3,21 +3,21 @@ visible if MEMMAP_BT
 
 
 config BT_ENABLED
-       bool "Enable low-level BT stack"
-       depends on MEMMAP_BT
+       bool
+       depends on ESP32_ENABLE_STACK_BT
        help
                This compiles in the low-level BT stack.
 
-config BT_BTLE
-       bool "Enable BTLE"
-       depends on BT_ENABLED
-       help
-               This compiles BTLE support
-
-config BT_BT
-       bool "Enable classic BT"
-       depends on BT_ENABLED
-       help
-               This enables classic BT support
+#config BT_BTLE
+#      bool "Enable BTLE"
+#      depends on BT_ENABLED
+#      help
+#              This compiles BTLE support
+#
+#config BT_BT
+#      bool "Enable classic BT"
+#      depends on BT_ENABLED
+#      help
+#              This enables classic BT support
 
 endmenu
index 0ad32756e88e6012ec600afc246a612be9023184..c649a0e3178984b9ec32145b179357b4f6ef6f86 100644 (file)
@@ -20,13 +20,65 @@ config ESP32_DEFAULT_CPU_FREQ_MHZ
     default 160 if ESP32_DEFAULT_CPU_FREQ_160
     default 240 if ESP32_DEFAULT_CPU_FREQ_240
 
+choice ESP32_WIFI_OR_BT
+    prompt "Select stack to enable (WiFi or BT)"
+    default ESP32_ENABLE_WIFI
+    help
+        Temporarily, WiFi and BT stacks can not be used at the same time.
+        Select which stack to enable.
+
+config ESP32_ENABLE_STACK_WIFI
+    bool "WiFi"
+    select WIFI_ENABLED if ESP32_ENABLE_STACK_WIFI
+config ESP32_ENABLE_STACK_BT
+    bool "BT"
+    select MEMMAP_BT if ESP32_ENABLE_STACK_BT
+    select BT_ENABLED if ESP32_ENABLE_STACK_BT
+config ESP32_ENABLE_STACK_NONE
+    bool "None"
+endchoice
+
+config MEMMAP_BT
+    bool
+    depends on ESP32_ENABLE_STACK_BT
+    help
+        The Bluetooth stack uses memory that cannot be used as generic memory anymore. This
+        reserves the space for that within the memory map of the compiled binary.
+        This option is required to enable BT stack.
+        Temporarily, this option is not compatible with WiFi stack.
+
+config MEMMAP_SMP
+    bool "Reserve memory for two cores"
+    default "y"
+    help
+        The ESP32 contains two cores. If you plan to only use one, you can disable this item
+        to save some memory. (ToDo: Make this automatically depend on unicore support)
+
+config MEMMAP_TRACEMEM
+    bool "Use TRAX tracing feature"
+    default "n"
+    help
+        The ESP32 contains a feature which allows you to trace the execution path the processor
+        has taken through the program. This is stored in a chunk of 32K (16K for single-processor)
+        of memory that can't be used for general purposes anymore. Disable this if you do not know
+        what this is.
+
+config MEMMAP_SPISRAM
+    bool "Use external SPI SRAM chip as main memory"
+    default "n"
+    help
+        The ESP32 can control an external SPI SRAM chip, adding the memory it contains to the 
+        main memory map. Enable this if you have this hardware and want to use it in the same
+        way as on-chip RAM.
+
 config WIFI_ENABLED
-    bool "Enable low-level WiFi stack"
+    bool
     default "y"
+    depends on ESP32_ENABLE_STACK_WIFI
     help
         This compiles in the low-level WiFi stack.
 
-               Temporarily, this option requires that FreeRTOS runs in single core mode.
+               Temporarily, this option is not compatible with BT stack.
 
 config WIFI_AUTO_STARTUP
     bool "Start WiFi with system startup"