This is an automated email from the ASF dual-hosted git repository.

andk pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/mynewt-nimble.git


The following commit(s) were added to refs/heads/master by this push:
     new c330035  nimble/transport: Make HCI transport select as a choice
c330035 is described below

commit c330035850409c509e24a88dcff04f686e02f367
Author: Andrzej Kaczmarek <andrzej.kaczma...@codecoup.pl>
AuthorDate: Tue Mar 26 09:40:30 2019 +0100

    nimble/transport: Make HCI transport select as a choice
---
 nimble/transport/pkg.yml    | 10 +++++-----
 nimble/transport/syscfg.yml | 47 ++++++++++++++++++++++++++++++++++++---------
 2 files changed, 43 insertions(+), 14 deletions(-)

diff --git a/nimble/transport/pkg.yml b/nimble/transport/pkg.yml
index 78e3573..eb2f1a3 100644
--- a/nimble/transport/pkg.yml
+++ b/nimble/transport/pkg.yml
@@ -25,18 +25,18 @@ pkg.keywords:
     - ble
     - bluetooth
 
-pkg.deps.BLE_HCI_TRANSPORT_NIMBLE_BUILTIN:
+pkg.deps.'BLE_HCI_TRANSPORT == "builtin"':
     - nimble/transport/ram
     - nimble/controller
 
-pkg.deps.BLE_HCI_TRANSPORT_EMSPI:
+pkg.deps.'BLE_HCI_TRANSPORT == "emspi"':
     - nimble/transport/emspi
 
-pkg.deps.BLE_HCI_TRANSPORT_RAM:
+pkg.deps.'BLE_HCI_TRANSPORT == "ram"':
     - nimble/transport/ram
 
-pkg.deps.BLE_HCI_TRANSPORT_SOCKET:
+pkg.deps.'BLE_HCI_TRANSPORT == "socket"':
     - nimble/transport/socket
 
-pkg.deps.BLE_HCI_TRANSPORT_UART:
+pkg.deps.'BLE_HCI_TRANSPORT == "uart"':
     - nimble/transport/uart
diff --git a/nimble/transport/syscfg.yml b/nimble/transport/syscfg.yml
index 6f210c6..ec73e42 100644
--- a/nimble/transport/syscfg.yml
+++ b/nimble/transport/syscfg.yml
@@ -17,21 +17,50 @@
 #
 
 syscfg.defs:
-    BLE_HCI_TRANSPORT_NIMBLE_BUILTIN:
+    BLE_HCI_TRANSPORT:
         description: >
-            Enables HCI transport for built-in NimBLE controller.
-            This is virtually the same as enabling RAM HCI transport and
-            adding dependency to NimBLE controller package explicitly.
-        value: 1
+            Selects HCI transport to be included in build.
+            This has virtually the same effect as including package dependency
+            manually, but it allows to easily override HCI transport package in
+            application or target settings.
+        value: builtin
+        restrictions: $notnull
+        choices:
+            - builtin   # Built-in NimBLE controller and RAM transport
+            - ram       # RAM transport
+            - uart      # UART HCI H4 transport
+            - socket    # Socket transport (for native builds)
+            - emspi     # SPI transport for EM Microelectionic controllers
+
+# Deprecated settings
+    BLE_HCI_TRANSPORT_NIMBLE_BUILTIN:
+        description: Use BLE_HCI_TRANSPORT instead.
+        value: 0
+        deprecated: 1
     BLE_HCI_TRANSPORT_EMSPI:
-        description: Enables EM SPI HCI transport package
+        description: Use BLE_HCI_TRANSPORT instead.
         value: 0
+        deprecated: 1
     BLE_HCI_TRANSPORT_RAM:
-        description: Enables RAM HCI transport package
+        description: Use BLE_HCI_TRANSPORT instead.
         value: 0
+        deprecated: 1
     BLE_HCI_TRANSPORT_SOCKET:
-        description: Enables socket HCI transport package
+        description: Use BLE_HCI_TRANSPORT instead.
         value: 0
+        deprecated: 1
     BLE_HCI_TRANSPORT_UART:
-        description: Enables UART HCI transport package
+        description: Use BLE_HCI_TRANSPORT instead.
         value: 0
+        deprecated: 1
+
+syscfg.vals.BLE_HCI_TRANSPORT_NIMBLE_BUILTIN:
+    BLE_HCI_TRANSPORT: builtin
+syscfg.vals.BLE_HCI_TRANSPORT_RAM:
+    BLE_HCI_TRANSPORT: ram
+syscfg.vals.BLE_HCI_TRANSPORT_UART:
+    BLE_HCI_TRANSPORT: uart
+syscfg.vals.BLE_HCI_TRANSPORT_SOCKET:
+    BLE_HCI_TRANSPORT: socket
+syscfg.vals.BLE_HCI_TRANSPORT_EMSPI:
+    BLE_HCI_TRANSPORT: emspi

Reply via email to