InfiniTime.git

commit 49bf12390bb27ca22a3cc5f472027344befc455e

Author: JF <jf@codingfield.com>

Merge branch 'develop' of JF/PineTime into master

%!v(PANIC=String method: strings: negative Repeat count)


diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 1609196a05d1cd1bfc8bad6a08c8a8a4e0132dc7..a30fb568115c74cda4f5796ec1fdf7dc86deafae 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -132,6 +132,7 @@   libs/mynewt-nimble/nimble/host/src/ble_hs_mqueue.c
   libs/mynewt-nimble/nimble/host/src/ble_hs_stop.c
   libs/mynewt-nimble/nimble/host/src/ble_hs_startup.c
   libs/mynewt-nimble/nimble/host/store/ram/src/ble_store_ram.c
+  libs/mynewt-nimble/nimble/host/src/ble_monitor.c
   libs/mynewt-nimble/nimble/transport/ram/src/ble_hci_ram.c
   libs/mynewt-nimble/nimble/controller/src/ble_ll.c
   libs/mynewt-nimble/nimble/controller/src/ble_ll_rand.c
@@ -534,6 +535,7 @@
 )
 
 link_directories(
+	../
 )
 
 
@@ -666,4 +668,4 @@             COMMAND ${OPENOCD_BIN_PATH} -c "tcl_port disabled" -c "gdb_port 3333" -c "telnet_port 4444" -f interface/stlink.cfg -c 'transport select hla_swd' -f target/nrf52.cfg -c "program \"${EXECUTABLE_NAME}.hex\""  -c reset -c shutdown
             COMMENT "flashing ${EXECUTABLE_NAME}.hex"
             )
 
-endif()
\ No newline at end of file
+endif()




diff --git a/src/Components/Ble/AlertNotificationService.cpp b/src/Components/Ble/AlertNotificationService.cpp
index 8e3b712d30f75af98342acbec6de062d316837d1..fd69bda316259d3bb2556de7c482c370a9f81ff4 100644
--- a/src/Components/Ble/AlertNotificationService.cpp
+++ b/src/Components/Ble/AlertNotificationService.cpp
@@ -17,8 +17,12 @@   return anService->OnAlert(conn_handle, attr_handle, ctxt);
 }
 
 void AlertNotificationService::Init() {
-  ble_gatts_count_cfg(serviceDefinition);
-  ble_gatts_add_svcs(serviceDefinition);
+  int res;
+  res = ble_gatts_count_cfg(serviceDefinition);
+  ASSERT(res == 0);
+
+  res = ble_gatts_add_svcs(serviceDefinition);
+  ASSERT(res == 0);
 }
 
 AlertNotificationService::AlertNotificationService ( Pinetime::System::SystemTask& systemTask, Pinetime::Controllers::NotificationManager& notificationManager ) : m_systemTask{systemTask}, m_notificationManager{notificationManager},




diff --git a/src/Components/Ble/CurrentTimeService.cpp b/src/Components/Ble/CurrentTimeService.cpp
index 9ae4c3b87788a5bc03915b37a942da44c3326385..80ad9c25fcfbc5b1e6eec3c73c508f4935c66d61 100644
--- a/src/Components/Ble/CurrentTimeService.cpp
+++ b/src/Components/Ble/CurrentTimeService.cpp
@@ -13,8 +13,12 @@   return cts->OnTimeAccessed(conn_handle, attr_handle, ctxt);
 }
 
 void CurrentTimeService::Init() {
-  ble_gatts_count_cfg(serviceDefinition);
-  ble_gatts_add_svcs(serviceDefinition);
+  int res;
+  res = ble_gatts_count_cfg(serviceDefinition);
+  ASSERT(res == 0);
+
+  res = ble_gatts_add_svcs(serviceDefinition);
+  ASSERT(res == 0);
 }
 
 




diff --git a/src/Components/Ble/DeviceInformationService.cpp b/src/Components/Ble/DeviceInformationService.cpp
index 3099b1bf4c0f48911da2dc31b335bedcb209c8cb..c1d555419dd767d0a39e54d850402c515154f484 100644
--- a/src/Components/Ble/DeviceInformationService.cpp
+++ b/src/Components/Ble/DeviceInformationService.cpp
@@ -15,8 +15,12 @@   return deviceInformationService->OnDeviceInfoRequested(conn_handle, attr_handle, ctxt);
 }
 
 void DeviceInformationService::Init() {
-  ble_gatts_count_cfg(serviceDefinition);
-  ble_gatts_add_svcs(serviceDefinition);
+  int res = 0;
+  res = ble_gatts_count_cfg(serviceDefinition);
+  ASSERT(res == 0);
+
+  res = ble_gatts_add_svcs(serviceDefinition);
+  ASSERT(res == 0);
 }
 
 




diff --git a/src/Components/Ble/DfuService.cpp b/src/Components/Ble/DfuService.cpp
index ff899e6fd59fa4eb226c63036beae5b1dbe78ad0..c6d8493fde42242ef0f5381e537d83044db0b8e9 100644
--- a/src/Components/Ble/DfuService.cpp
+++ b/src/Components/Ble/DfuService.cpp
@@ -74,8 +74,12 @@   timeoutTimer = xTimerCreate ("notificationTimer", 10000, pdFALSE, this, TimeoutTimerCallback);
 }
 
 void DfuService::Init() {
-  ble_gatts_count_cfg(serviceDefinition);
-  ble_gatts_add_svcs(serviceDefinition);
+  int res;
+  res = ble_gatts_count_cfg(serviceDefinition);
+  ASSERT(res == 0);
+
+  res = ble_gatts_add_svcs(serviceDefinition);
+  ASSERT(res == 0);
 }
 
 int DfuService::OnServiceData(uint16_t connectionHandle, uint16_t attributeHandle, ble_gatt_access_ctxt *context) {




diff --git a/src/FreeRTOS/port_cmsis_systick.c b/src/FreeRTOS/port_cmsis_systick.c
index 58c51bb7bb4dfb5bebec1a64292abd6d3d03bb92..b2cc14cd8277b2666d8fbc5c581f8c702da5a354 100644
--- a/src/FreeRTOS/port_cmsis_systick.c
+++ b/src/FreeRTOS/port_cmsis_systick.c
@@ -251,6 +251,14 @@             }
             else
 #endif
             {
+                // Fix ERRATA 87 (https://infocenter.nordicsemi.com/index.jsp?topic=%252Fcom.nordic.infocenter.sdk5.v11.0.0%252Findex.html&cp=4_0_0)
+                // Clear FPU interrupt before going to sleep. This prevent unexpected wake-up.
+                #define FPU_EXCEPTION_MASK 0x0000009F
+                /* Clear exceptions and PendingIRQ from the FPU unit */
+                __set_FPSCR(__get_FPSCR()  & ~(FPU_EXCEPTION_MASK));
+                (void) __get_FPSCR();
+                NVIC_ClearPendingIRQ(FPU_IRQn);
+
                 /* No SD -  we would just block interrupts globally.
                 * BASEPRI cannot be used for that because it would prevent WFE from wake up.
                 */




diff --git a/src/FreeRTOS/portmacro_cmsis.h b/src/FreeRTOS/portmacro_cmsis.h
index 3d2dee5cb5ce6800e7e3cd3777bf8659f8740362..0497538fb91b3e8a6cf3e2ea11002cc81aee63fc 100644
--- a/src/FreeRTOS/portmacro_cmsis.h
+++ b/src/FreeRTOS/portmacro_cmsis.h
@@ -106,8 +106,8 @@ extern void vPortEnterCritical( void );
 extern void vPortExitCritical( void );
 #define portSET_INTERRUPT_MASK_FROM_ISR()       ulPortRaiseBASEPRI()
 #define portCLEAR_INTERRUPT_MASK_FROM_ISR(x)    vPortSetBASEPRI(x)
-#define portDISABLE_INTERRUPTS()                vPortRaiseBASEPRI()
-#define portENABLE_INTERRUPTS()                 vPortSetBASEPRI(0)
+#define portDISABLE_INTERRUPTS()                __asm volatile 	( " cpsid i " ::: "memory" )
+#define portENABLE_INTERRUPTS()                 __asm volatile 	( " cpsie i " ::: "memory" )
 #define portENTER_CRITICAL()                    vPortEnterCritical()
 #define portEXIT_CRITICAL()                     vPortExitCritical()
 




diff --git a/src/graphics.cpp b/src/graphics.cpp
index 8c39c89a0ae6580a405d8b369641cdcc64650ede..3b53703cc35698839c2fcaebbcf32541956404d4 100644
--- a/src/graphics.cpp
+++ b/src/graphics.cpp
@@ -7,9 +7,9 @@ #include 
 #include "bootloader/boot_graphics.h"
 #include <FreeRTOS.h>
 #include <task.h>
-#include <sdk/integration/nrfx/legacy/nrf_drv_gpiote.h>
+#include <legacy/nrf_drv_gpiote.h>
 #include <libraries/gpiote/app_gpiote.h>
-#include <sdk/modules/nrfx/hal/nrf_wdt.h>
+#include <hal/nrf_wdt.h>
 #include <cstring>
 #include <Components/Gfx/Gfx.h>
 #include <drivers/St7789.h>
@@ -132,4 +132,4 @@
   for (;;) {
     APP_ERROR_HANDLER(NRF_ERROR_FORBIDDEN);
   }
-}
\ No newline at end of file
+}




diff --git a/src/libs/mynewt-nimble/apps/btshell/src/cmd.c b/src/libs/mynewt-nimble/apps/btshell/src/cmd.c
index 8a878756be83cfd11605386115b065d5bd63fdac..2713443ed168fbf3c7e7e439063ff71b83f11798 100644
--- a/src/libs/mynewt-nimble/apps/btshell/src/cmd.c
+++ b/src/libs/mynewt-nimble/apps/btshell/src/cmd.c
@@ -2691,23 +2691,10 @@ cmd_security_unpair(int argc, char **argv)
 {
     ble_addr_t peer;
     int rc;
-    int oldest;
 
     rc = parse_arg_all(argc - 1, argv + 1);
     if (rc != 0) {
         return rc;
-    }
-
-    rc = parse_arg_bool_dflt("oldest", 0, &oldest);
-    if (rc != 0) {
-        console_printf("invalid 'oldest' parameter\n");
-        return rc;
-    }
-
-    if (oldest) {
-        rc = ble_gap_unpair_oldest_peer();
-        console_printf("Unpair oldest status: 0x%02x\n", rc);
-        return 0;
     }
 
     rc = parse_dev_addr("peer_", cmd_peer_addr_types, &peer);
@@ -2727,7 +2714,6 @@ }
 
 #if MYNEWT_VAL(SHELL_CMD_HELP)
 static const struct shell_param security_unpair_params[] = {
-    {"oldest", "usage: =[true|false], default: false"},
     {"peer_addr_type", "usage: =[public|random|public_id|random_id], default: public"},
     {"peer_addr", "usage: =[XX:XX:XX:XX:XX:XX]"},
     {NULL, NULL}




diff --git a/src/libs/mynewt-nimble/nimble/controller/include/controller/ble_ll.h b/src/libs/mynewt-nimble/nimble/controller/include/controller/ble_ll.h
index e515fb98b9040fdd4aba94a792bb80d398b893a8..d33404459b147679d9b7b6494dfbfaca98f5ab88 100644
--- a/src/libs/mynewt-nimble/nimble/controller/include/controller/ble_ll.h
+++ b/src/libs/mynewt-nimble/nimble/controller/include/controller/ble_ll.h
@@ -546,9 +546,6 @@ int ble_ll_rand_data_get(uint8_t *buf, uint8_t len);
 void ble_ll_rand_prand_get(uint8_t *prand);
 int ble_ll_rand_start(void);
 
-// TODO added by JF, don't know why I need this?
-void ble_ll_task(void *arg);
-
 static inline int
 ble_ll_get_addr_type(uint8_t txrxflag)
 {




diff --git a/src/libs/mynewt-nimble/nimble/controller/src/ble_ll.c b/src/libs/mynewt-nimble/nimble/controller/src/ble_ll.c
index 996ad9c3320391ca4e6bd1f7560015d8203fb26a..da5d29729cf5f44026bad6f3406ba72208c386f6 100644
--- a/src/libs/mynewt-nimble/nimble/controller/src/ble_ll.c
+++ b/src/libs/mynewt-nimble/nimble/controller/src/ble_ll.c
@@ -21,6 +21,7 @@ #include 
 #include <stdlib.h>
 #include <assert.h>
 #include <string.h>
+#include <sdk/components/libraries/log/nrf_log.h>
 #include "sysinit/sysinit.h"
 #include "syscfg/syscfg.h"
 #include "os/os.h"




diff --git a/src/libs/mynewt-nimble/nimble/controller/src/ble_ll_adv.c b/src/libs/mynewt-nimble/nimble/controller/src/ble_ll_adv.c
index 8b661f8cbaabe70f128d6540778fa393d495de8e..4ffbe2069f78998d46b3100cc6bbed1c01ca89ae 100644
--- a/src/libs/mynewt-nimble/nimble/controller/src/ble_ll_adv.c
+++ b/src/libs/mynewt-nimble/nimble/controller/src/ble_ll_adv.c
@@ -131,7 +131,6 @@     uint8_t aux_active : 1;
     uint8_t aux_index : 1;
     uint8_t aux_first_pdu : 1;
     uint8_t aux_not_scanned : 1;
-    uint8_t aux_dropped : 1;
     struct ble_mbuf_hdr *rx_ble_hdr;
     struct os_mbuf **aux_data;
     struct ble_ll_adv_aux aux[2];
@@ -1270,7 +1269,7 @@     txstart = sch->start_time + g_ble_ll_sched_offset_ticks;
     rc = ble_phy_tx_set_start_time(txstart, sch->remainder);
     if (rc) {
         STATS_INC(ble_ll_stats, adv_late_starts);
-        goto adv_aux_dropped;
+        goto adv_tx_done;
     }
 
 #if MYNEWT_VAL(BLE_LL_CFG_FEAT_LE_ENCRYPTION)
@@ -1305,7 +1304,7 @@
     /* Transmit advertisement */
     rc = ble_phy_tx(pducb, advsm, end_trans);
     if (rc) {
-        goto adv_aux_dropped;
+        goto adv_tx_done;
     }
 
     /* Enable/disable whitelisting based on filter policy */
@@ -1323,8 +1322,7 @@     STATS_INC(ble_ll_stats, adv_txg);
 
     return BLE_LL_SCHED_STATE_RUNNING;
 
-adv_aux_dropped:
-    advsm->aux_dropped = 1;
+adv_tx_done:
     ble_ll_adv_tx_done(advsm);
     return BLE_LL_SCHED_STATE_DONE;
 }
@@ -1556,7 +1554,6 @@     advsm->aux_active = 1;
     advsm->aux_index = 0;
     advsm->aux_first_pdu = 1;
     advsm->aux_not_scanned = 0;
-    advsm->aux_dropped = 0;
 
     aux = AUX_CURRENT(advsm);
     ble_ll_adv_aux_calculate(advsm, aux, 0);
@@ -4838,11 +4835,6 @@     aux_next = AUX_NEXT(advsm);
 
     /* We don't need RF anymore */
     ble_ll_rfmgmt_release();
-
-    if (advsm->aux_dropped) {
-        ble_ll_adv_drop_event(advsm);
-        return;
-    }
 
     if (advsm->aux_not_scanned) {
         ble_ll_sched_rmv_elem(&aux_next->sch);




diff --git a/src/libs/mynewt-nimble/nimble/controller/src/ble_ll_scan.c b/src/libs/mynewt-nimble/nimble/controller/src/ble_ll_scan.c
index 2e93ba234235312dc7238f5a97e29a810f8a5e86..84747db7300cd2a69012d64561a2a9a121659d03 100644
--- a/src/libs/mynewt-nimble/nimble/controller/src/ble_ll_scan.c
+++ b/src/libs/mynewt-nimble/nimble/controller/src/ble_ll_scan.c
@@ -617,7 +617,7 @@
 static int
 ble_ll_hci_send_legacy_ext_adv_report(uint8_t evtype,
                                       const uint8_t *addr, uint8_t addr_type,
-                                      int8_t rssi,
+                                      uint8_t rssi,
                                       uint8_t adv_data_len,
                                       struct os_mbuf *adv_data,
                                       const uint8_t *inita, uint8_t inita_type)
@@ -1991,10 +1991,10 @@ ble_ll_scan_rx_filter(struct ble_mbuf_hdr *hdr, struct ble_ll_scan_addr_data *addrd)
 {
     struct ble_ll_scan_sm *scansm = &g_ble_ll_scan_sm;
     struct ble_ll_scan_params *scanp = scansm->scanp;
-#if MYNEWT_VAL(BLE_LL_CFG_FEAT_LL_PRIVACY)
 #if MYNEWT_VAL(BLE_LL_CFG_FEAT_LL_EXT_ADV)
     struct ble_ll_aux_data *aux_data = hdr->rxinfo.user_data;
 #endif
+#if MYNEWT_VAL(BLE_LL_CFG_FEAT_LL_PRIVACY)
     struct ble_mbuf_hdr_rxinfo *rxinfo = &hdr->rxinfo;
     struct ble_ll_resolv_entry *rl = NULL;
 #endif
@@ -2227,7 +2227,6 @@      * some previous PDU in an event.
      */
     if (aux_data->flags & BLE_LL_AUX_IS_MATCHED) {
         rxinfo->flags |= BLE_MBUF_HDR_F_DEVMATCH;
-#if MYNEWT_VAL(BLE_LL_CFG_FEAT_LL_PRIVACY)
         rxinfo->rpa_index = aux_data->rpa_index;
         if (rxinfo->rpa_index >= 0) {
             rxinfo->flags |= BLE_MBUF_HDR_F_RESOLVED;
@@ -2235,7 +2234,6 @@         }
         if (aux_data->flags & BLE_LL_AUX_IS_TARGETA_RESOLVED) {
             rxinfo->flags |= BLE_MBUF_HDR_F_TARGETA_RESOLVED;
         }
-#endif
         goto done;
     }
 




diff --git a/src/libs/mynewt-nimble/nimble/drivers/nrf52/src/ble_phy.c b/src/libs/mynewt-nimble/nimble/drivers/nrf52/src/ble_phy.c
index 2f6ce08e729f0b72ede1f5e7e08f374296dadf60..83730a4453dc8c6763d1d3bd52fe4886ade56bb7 100644
--- a/src/libs/mynewt-nimble/nimble/drivers/nrf52/src/ble_phy.c
+++ b/src/libs/mynewt-nimble/nimble/drivers/nrf52/src/ble_phy.c
@@ -20,6 +20,7 @@
 #include <stdint.h>
 #include <string.h>
 #include <assert.h>
+#include <sdk/components/libraries/log/nrf_log.h>
 #include "syscfg/syscfg.h"
 #include "os/os.h"
 #include "ble/xcvr.h"




diff --git a/src/libs/mynewt-nimble/nimble/host/include/host/ble_gap.h b/src/libs/mynewt-nimble/nimble/host/include/host/ble_gap.h
index b58f350fb4d7fa73e654ea1ec97055f2c4b67813..20e7dab774ad3fddc9fccf8b7fcb0c681911df31 100644
--- a/src/libs/mynewt-nimble/nimble/host/include/host/ble_gap.h
+++ b/src/libs/mynewt-nimble/nimble/host/include/host/ble_gap.h
@@ -1896,20 +1896,6 @@  *                                  error.
  */
 int ble_gap_unpair_oldest_peer(void);
 
-/**
- * Similar to `ble_gap_unpair_oldest_peer()`, except it makes sure that the
- * peer received in input parameters is not deleted.
- *
- * @param peer_addr             Address of the peer (not to be deleted)
- *
- * @return                      0 on success;
- *                              A BLE host HCI return code if the controller
- *                                  rejected the request;
- *                              A BLE host core return code on unexpected
- *                                  error.
- */
-int ble_gap_unpair_oldest_except(const ble_addr_t *peer_addr);
-
 #define BLE_GAP_PRIVATE_MODE_NETWORK        0
 #define BLE_GAP_PRIVATE_MODE_DEVICE         1
 




diff --git a/src/libs/mynewt-nimble/nimble/host/pts/tpg/94654-20170317-085122560.tpg b/src/libs/mynewt-nimble/nimble/host/pts/tpg/94654-20170317-085122560.tpg
index 3cc985faba87a4ad4e6374f0315ad79e0fc27741..f5bb0ce99c33bf694526818c53c9a9090f65afdc 100644
--- a/src/libs/mynewt-nimble/nimble/host/pts/tpg/94654-20170317-085122560.tpg
+++ b/src/libs/mynewt-nimble/nimble/host/pts/tpg/94654-20170317-085122560.tpg
@@ -1,4 +1,4 @@
-<!-- START ENCRYPTED FILE --->
+<!-- START ENCRYPTED FILE --->

 M'&/JP\$+#X83?)"[ M2E=\N*7*U 5)JSKT(5#=>@^/#]IP*[GTZ0%0]$F(/$
 MEK[V7>349??;!JZJNFZ CK=QGD^FOYV^FU>"DK<@0U*##HV\H9&_%["5IK@1
 MA9F,FJO2P^3:4_]04%-0T%9=^XCMWKF"L$[)%)G>_I 0Q?@:H)&1HX)7VY&.
@@ -1023,4 +1023,4 @@ M<74&Z:0BS4[#$;M2_1""EZVO@$B^"0'V'W:7^@-]G?*\B>0M(-
 M6MF1FM+ ?,?3[N*1EI"$AXF#@6P-FU/4\QF?O!&%CE5*6J2'@QDYV?_04-O)
 M7Z 6N;C7E_4<F/8XVG7AJ7J1LH.IECZ6%G $HMQ2FZX'!S+=;-"'3%ZWD\!W
 L@U91N$5;H(.IY7/\[ +<DK:=41RCLZB8DY:;7E]*"<<2\\K1C(F(AZJX39  
-<!-- END ENCRYPTED FILE --->
+<!-- END ENCRYPTED FILE --->





diff --git a/src/libs/mynewt-nimble/nimble/host/pts/tpg/94654-20170317-085441153.pts b/src/libs/mynewt-nimble/nimble/host/pts/tpg/94654-20170317-085441153.pts
index 6760d5ec6763731611251d5d39d1fc591bfcca5a..92507b139c328abde59d584eb40153f1596dd888 100644
--- a/src/libs/mynewt-nimble/nimble/host/pts/tpg/94654-20170317-085441153.pts
+++ b/src/libs/mynewt-nimble/nimble/host/pts/tpg/94654-20170317-085441153.pts
@@ -286,4 +286,4 @@ 			7
2
<item><table>7</table><row>3</row></item> </profile> </pics> - </project> + </project> diff --git a/src/libs/mynewt-nimble/nimble/host/src/ble_gap.c b/src/libs/mynewt-nimble/nimble/host/src/ble_gap.c index 7d1c52527a70a4eb162f7253ee6cccc1fbf95d1a..be4a1cb338176b1a8cd7a6f6e4000635171e00ac 100644 --- a/src/libs/mynewt-nimble/nimble/host/src/ble_gap.c +++ b/src/libs/mynewt-nimble/nimble/host/src/ble_gap.c @@ -1020,7 +1020,7 @@ ble_hs_timer_resched(); } #endif -#if (NIMBLE_BLE_CONNECT || NIMBLE_BLE_SCAN) +#if NIMBLE_BLE_CONNECT /** * Called when an error is encountered while the master-connection-fsm is * active. @@ -1034,22 +1034,12 @@ STATS_INC(ble_gap_stats, initiate_fail); ble_gap_master_connect_failure(status); break; -#if NIMBLE_BLE_SCAN - case BLE_GAP_OP_M_DISC: - STATS_INC(ble_gap_stats, initiate_fail); - ble_gap_disc_complete(); - ble_gap_master_reset_state(); - break; -#endif - default: BLE_HS_DBG_ASSERT(0); break; } } -#endif -#if NIMBLE_BLE_CONNECT static void ble_gap_update_failed(uint16_t conn_handle, int status) { @@ -1245,46 +1235,6 @@ ble_gap_adv_active_instance(uint8_t instance) { /* Assume read is atomic; mutex not necessary. */ return ble_gap_slave[instance].op == BLE_GAP_OP_S_ADV; -} - -/** - * Clears advertisement and discovery state. This function is necessary - * when the controller loses its active state (e.g. on stack reset). - */ -void -ble_gap_reset_state(int reason) -{ - uint16_t conn_handle; - - while (1) { - conn_handle = ble_hs_atomic_first_conn_handle(); - if (conn_handle == BLE_HS_CONN_HANDLE_NONE) { - break; - } - - ble_gap_conn_broken(conn_handle, reason); - } - -#if NIMBLE_BLE_ADVERTISE -#if MYNEWT_VAL(BLE_EXT_ADV) - uint8_t i; - for (i = 0; i < BLE_ADV_INSTANCES; i++) { - if (ble_gap_adv_active_instance(i)) { - /* Indicate to application that advertising has stopped. */ - ble_gap_adv_finished(i, reason, 0, 0); - } - } -#else - if (ble_gap_adv_active_instance(0)) { - /* Indicate to application that advertising has stopped. */ - ble_gap_adv_finished(0, reason, 0, 0); - } -#endif -#endif - -#if (NIMBLE_BLE_SCAN || NIMBLE_BLE_CONNECT) - ble_gap_master_failed(reason); -#endif } #if NIMBLE_BLE_CONNECT @@ -1993,6 +1943,7 @@ ble_hs_unlock(); if (entry != NULL) { + ble_gap_update_notify(conn_handle, BLE_HS_ETIMEOUT); ble_gap_update_entry_free(entry); } } while (entry != NULL); @@ -5594,7 +5545,7 @@ return rc; } if (num_peers == 0) { - return BLE_HS_ENOENT; + return 0; } rc = ble_gap_unpair(&oldest_peer_id_addr); @@ -5603,36 +5554,6 @@ return rc; } return 0; -} - -int -ble_gap_unpair_oldest_except(const ble_addr_t *peer_addr) -{ - ble_addr_t peer_id_addrs[MYNEWT_VAL(BLE_STORE_MAX_BONDS)]; - int num_peers; - int rc, i; - - rc = ble_store_util_bonded_peers( - &peer_id_addrs[0], &num_peers, MYNEWT_VAL(BLE_STORE_MAX_BONDS)); - if (rc != 0) { - return rc; - } - - if (num_peers == 0) { - return BLE_HS_ENOENT; - } - - for (i = 0; i < num_peers; i++) { - if (ble_addr_cmp(peer_addr, &peer_id_addrs[i]) != 0) { - break; - } - } - - if (i >= num_peers) { - return BLE_HS_ENOMEM; - } - - return ble_gap_unpair(&peer_id_addrs[i]); } void diff --git a/src/libs/mynewt-nimble/nimble/host/src/ble_gap_priv.h b/src/libs/mynewt-nimble/nimble/host/src/ble_gap_priv.h index c050435f497d696852e88acdf45f85e15a95ee6b..ce44319884fee36c8242270dd515bd80598b35be 100644 --- a/src/libs/mynewt-nimble/nimble/host/src/ble_gap_priv.h +++ b/src/libs/mynewt-nimble/nimble/host/src/ble_gap_priv.h @@ -136,7 +136,6 @@ void ble_gap_preempt(void); void ble_gap_preempt_done(void); int ble_gap_terminate_with_conn(struct ble_hs_conn *conn, uint8_t hci_reason); -void ble_gap_reset_state(int reason); void ble_gap_conn_broken(uint16_t conn_handle, int reason); int32_t ble_gap_timer(void); diff --git a/src/libs/mynewt-nimble/nimble/host/src/ble_hs.c b/src/libs/mynewt-nimble/nimble/host/src/ble_hs.c index b41064fefece29823a1aa7e13406bcf899bf16d9..23ac1d146b8f80dbf00a922d1a9311b3d9868d54 100644 --- a/src/libs/mynewt-nimble/nimble/host/src/ble_hs.c +++ b/src/libs/mynewt-nimble/nimble/host/src/ble_hs.c @@ -361,6 +361,7 @@ static int ble_hs_reset(void) { + uint16_t conn_handle; int rc; STATS_INC(ble_hs_stats, reset); @@ -375,8 +376,14 @@ (void)ble_hci_trans_reset(); ble_hs_clear_rx_queue(); - /* Clear adverising and scanning states. */ - ble_gap_reset_state(ble_hs_reset_reason); + while (1) { + conn_handle = ble_hs_atomic_first_conn_handle(); + if (conn_handle == BLE_HS_CONN_HANDLE_NONE) { + break; + } + + ble_gap_conn_broken(conn_handle, ble_hs_reset_reason); + } /* Clear configured addresses. */ ble_hs_id_reset(); diff --git a/src/libs/mynewt-nimble/nimble/host/src/ble_hs_conn.c b/src/libs/mynewt-nimble/nimble/host/src/ble_hs_conn.c index 70695fa658e7ba2083b15d01a7a2993cf437ca79..f7edb6240197ccc54fdd03663011fbd8f2fa94c8 100644 --- a/src/libs/mynewt-nimble/nimble/host/src/ble_hs_conn.c +++ b/src/libs/mynewt-nimble/nimble/host/src/ble_hs_conn.c @@ -327,7 +327,6 @@ return NULL; #endif struct ble_hs_conn *conn; - struct ble_hs_conn_addrs addrs; BLE_HS_DBG_ASSERT(ble_hs_locked_by_cur_task()); @@ -342,14 +341,6 @@ return conn; } } else { if (ble_addr_cmp(&conn->bhc_peer_addr, addr) == 0) { - return conn; - } - if (conn->bhc_peer_addr.type < BLE_OWN_ADDR_RPA_PUBLIC_DEFAULT) { - continue; - } - /*If type 0x02 or 0x03 is used, let's double check if address is good */ - ble_hs_conn_addrs(conn, &addrs); - if (ble_addr_cmp(&addrs.peer_id_addr, addr) == 0) { return conn; } } diff --git a/src/libs/mynewt-nimble/nimble/host/src/ble_l2cap_coc.c b/src/libs/mynewt-nimble/nimble/host/src/ble_l2cap_coc.c index b15646f621c53c31d55b94f6bbcd4a23f8ae7833..41a831565a9c9f81e5b1c8577f563de9b28a87f4 100644 --- a/src/libs/mynewt-nimble/nimble/host/src/ble_l2cap_coc.c +++ b/src/libs/mynewt-nimble/nimble/host/src/ble_l2cap_coc.c @@ -73,7 +73,7 @@ struct ble_l2cap_coc_srv * srv; srv = ble_l2cap_coc_srv_alloc(); if (!srv) { - return BLE_HS_ENOMEM; + return BLE_HS_ENOMEM; } srv->psm = psm; @@ -440,7 +440,6 @@ BLE_HS_LOG(DEBUG, "Sending SDU len=%d\n", OS_MBUF_PKTLEN(tx->sdu)); rc = os_mbuf_append(txom, &l, sizeof(uint16_t)); if (rc) { - rc = BLE_HS_ENOMEM; BLE_HS_LOG(DEBUG, "Could not append data rc=%d", rc); goto failed; } @@ -453,9 +452,8 @@ */ rc = os_mbuf_appendfrom(txom, tx->sdu, tx->data_offset, len - sdu_size_offset); if (rc) { - rc = BLE_HS_ENOMEM; BLE_HS_LOG(DEBUG, "Could not append data rc=%d", rc); - goto failed; + goto failed; } ble_hs_lock(); diff --git a/src/libs/mynewt-nimble/nimble/host/src/ble_monitor.c b/src/libs/mynewt-nimble/nimble/host/src/ble_monitor.c index e6db48b825d7da88384e33181a61efde7c213576..6057e7e2b20ecbff22ac5843c0c569346c609714 100644 --- a/src/libs/mynewt-nimble/nimble/host/src/ble_monitor.c +++ b/src/libs/mynewt-nimble/nimble/host/src/ble_monitor.c @@ -17,6 +17,7 @@ * specific language governing permissions and limitations * under the License. */ +#include <stdio.h> #include "host/ble_monitor.h" #if BLE_MONITOR @@ -28,13 +29,14 @@ #include <stdarg.h> #include <stdio.h> #include <inttypes.h> +#include <libs/mynewt-nimble/porting/nimble/include/os/os_cputime.h> #include "os/os.h" #include "log/log.h" #if MYNEWT_VAL(BLE_MONITOR_UART) #include "uart/uart.h" #endif #if MYNEWT_VAL(BLE_MONITOR_RTT) -#include "rtt/SEGGER_RTT.h" +#include "SEGGER_RTT.h" #endif #include "ble_hs_priv.h" #include "ble_monitor_priv.h" @@ -236,7 +238,7 @@ hdr.opcode = htole16(opcode); hdr.flags = 0; /* Use uptime for timestamp */ - ts = os_get_uptime_usec(); + ts = os_cputime_ticks_to_usecs(os_cputime_get32()); /* * btsnoop specification states that fields of extended header must be @@ -266,6 +268,17 @@ return n; } +struct File_methods +{ + size_t (*write)(FILE* instance, const char *bp, size_t n); + size_t (*read)(FILE* instance, char *bp, size_t n); +}; + +struct File +{ + const struct File_methods *vmt; +}; + static FILE *btmon = (FILE *) &(struct File) { .vmt = &(struct File_methods) { .write = btmon_write, @@ -276,7 +289,7 @@ #if MYNEWT_VAL(BLE_MONITOR_RTT) && MYNEWT_VAL(BLE_MONITOR_RTT_BUFFERED) static void drops_tmp_cb(struct ble_npl_event *ev) { - ble_npl_mutex_pend(&lock, OS_TIMEOUT_NEVER); + ble_npl_mutex_pend(&lock, portMAX_DELAY); /* * There's no "nop" in btsnoop protocol so we just send empty system note @@ -345,7 +358,7 @@ int ble_monitor_send(uint16_t opcode, const void *data, size_t len) { - ble_npl_mutex_pend(&lock, OS_TIMEOUT_NEVER); + ble_npl_mutex_pend(&lock, portMAX_DELAY); monitor_write_header(opcode, len); monitor_write(data, len); @@ -367,7 +380,7 @@ length += om_tmp->om_len; om_tmp = SLIST_NEXT(om_tmp, om_next); } - ble_npl_mutex_pend(&lock, OS_TIMEOUT_NEVER); + ble_npl_mutex_pend(&lock, portMAX_DELAY); monitor_write_header(opcode, length); @@ -429,7 +442,7 @@ } ulog.ident_len = sizeof(id); - ble_npl_mutex_pend(&lock, OS_TIMEOUT_NEVER); + ble_npl_mutex_pend(&lock, portMAX_DELAY); monitor_write_header(BLE_MONITOR_OPCODE_USER_LOGGING, sizeof(ulog) + sizeof(id) + len + 1); diff --git a/src/libs/mynewt-nimble/nimble/host/src/ble_sm_alg.c b/src/libs/mynewt-nimble/nimble/host/src/ble_sm_alg.c index 148995c8bcf97f3965b7f6e4f03be2b56c42464b..50fd77ec1d3152630effbd4ab60b00bb3102b1c5 100644 --- a/src/libs/mynewt-nimble/nimble/host/src/ble_sm_alg.c +++ b/src/libs/mynewt-nimble/nimble/host/src/ble_sm_alg.c @@ -68,6 +68,8 @@ } swap_buf(tmp, plaintext, 16); + + if (tc_aes_encrypt(enc_data, tmp, &s) == TC_CRYPTO_FAIL) { return BLE_HS_EUNKNOWN; } diff --git a/src/libs/mynewt-nimble/nimble/host/src/ble_store_util.c b/src/libs/mynewt-nimble/nimble/host/src/ble_store_util.c index 7de482721b66b5d9e3aa825c2f2ae565cff0937d..444cc55d72336179f61c58ebe96fd0af9d0fea6f 100644 --- a/src/libs/mynewt-nimble/nimble/host/src/ble_store_util.c +++ b/src/libs/mynewt-nimble/nimble/host/src/ble_store_util.c @@ -233,15 +233,13 @@ { switch (event->event_code) { case BLE_STORE_EVENT_OVERFLOW: switch (event->overflow.obj_type) { - case BLE_STORE_OBJ_TYPE_OUR_SEC: - case BLE_STORE_OBJ_TYPE_PEER_SEC: - return ble_gap_unpair_oldest_peer(); - case BLE_STORE_OBJ_TYPE_CCCD: - /* Try unpairing oldest peer except current peer */ - return ble_gap_unpair_oldest_except(&event->overflow.value->cccd.peer_addr); + case BLE_STORE_OBJ_TYPE_OUR_SEC: + case BLE_STORE_OBJ_TYPE_PEER_SEC: + case BLE_STORE_OBJ_TYPE_CCCD: + return ble_gap_unpair_oldest_peer(); - default: - return BLE_HS_EUNKNOWN; + default: + return BLE_HS_EUNKNOWN; } case BLE_STORE_EVENT_FULL: diff --git a/src/libs/mynewt-nimble/nimble/host/test/src/ble_gap_test.c b/src/libs/mynewt-nimble/nimble/host/test/src/ble_gap_test.c index 7496e3168173b4304ecd9d670e188cafc0db0211..3962bacc25b2ff2ded1bba4ac19044605ed1ab7e 100644 --- a/src/libs/mynewt-nimble/nimble/host/test/src/ble_gap_test.c +++ b/src/libs/mynewt-nimble/nimble/host/test/src/ble_gap_test.c @@ -2050,6 +2050,70 @@ peer_addr, 6) == 0); } static void +ble_gap_test_util_update_no_l2cap_tmo(struct ble_gap_upd_params *params, + int master) +{ + struct ble_hs_conn *conn; + int rc; + + uint8_t peer_addr[6] = { 1, 2, 3, 4, 5, 6 }; + + ble_gap_test_util_init(); + + ble_hs_test_util_create_conn(2, peer_addr, ble_gap_test_util_connect_cb, + NULL); + + if (!master) { + ble_hs_lock(); + conn = ble_hs_conn_find(2); + TEST_ASSERT_FATAL(conn != NULL); + conn->bhc_flags &= ~BLE_HS_CONN_F_MASTER; + ble_hs_unlock(); + } + + /* Erase callback info reported during connection establishment; we only + * care about updates. + */ + ble_gap_test_util_reset_cb_info(); + + TEST_ASSERT(!ble_gap_master_in_progress()); + + rc = ble_hs_test_util_conn_update(2, params, 0); + TEST_ASSERT(rc == 0); + TEST_ASSERT(!ble_gap_master_in_progress()); + + /* Verify tx of connection update command. */ + ble_gap_test_util_verify_tx_update_conn(params); + + /* Ensure no update event reported. */ + TEST_ASSERT(ble_gap_test_event.type == 0xff); + + /* Advance 39 seconds; ensure no timeout reported. */ + os_time_advance(39 * OS_TICKS_PER_SEC); + ble_gap_timer(); + TEST_ASSERT(ble_gap_test_event.type == 0xff); + + /* Advance 40th second; ensure timeout reported. */ + os_time_advance(1 * OS_TICKS_PER_SEC); + + /* Timeout will result in a terminate HCI command being sent; schedule ack + * from controller. + */ + ble_hs_test_util_hci_ack_set_disconnect(0); + + ble_gap_timer(); + + /* Verify terminate was sent. */ + ble_gap_test_util_verify_tx_disconnect(); + + TEST_ASSERT(ble_gap_test_event.type == BLE_GAP_EVENT_CONN_UPDATE); + TEST_ASSERT(ble_gap_test_conn_status == BLE_HS_ETIMEOUT); + TEST_ASSERT(ble_gap_test_conn_desc.conn_handle == 2); + TEST_ASSERT(memcmp(ble_gap_test_conn_desc.peer_id_addr.val, + peer_addr, 6) == 0); +} + +static void ble_gap_test_util_update_l2cap_tmo(struct ble_gap_upd_params *params, uint8_t hci_status, uint8_t event_status, int rx_l2cap) @@ -2917,6 +2981,9 @@ .supervision_timeout = 200, .min_ce_len = 123, .max_ce_len = 456, }; + + /* No L2CAP. */ + ble_gap_test_util_update_no_l2cap_tmo(&params, 1); /* L2CAP - Local unsupported; L2CAP timeout. */ ble_gap_test_util_update_l2cap_tmo(&params, BLE_ERR_UNKNOWN_HCI_CMD, 0, 0); diff --git a/src/libs/mynewt-nimble/nimble/transport/socket/src/ble_hci_socket.c b/src/libs/mynewt-nimble/nimble/transport/socket/src/ble_hci_socket.c index 8bf56f39c70751be65d83e150f6839fcf757b8cc..863d0fbb2488350e324b7bae95c1ec04b12575d7 100644 --- a/src/libs/mynewt-nimble/nimble/transport/socket/src/ble_hci_socket.c +++ b/src/libs/mynewt-nimble/nimble/transport/socket/src/ble_hci_socket.c @@ -540,7 +540,7 @@ ioctl(s, HCIDEVDOWN, shci.hci_dev); rc = bind(s, (struct sockaddr *)&shci, sizeof(shci)); if (rc) { - dprintf(1, "bind() failed %d hci%d\n", errno, shci.hci_dev); + dprintf(1, "bind() failed %d\n", errno); goto err; } diff --git a/src/libs/mynewt-nimble/porting/nimble/include/syscfg/syscfg.h b/src/libs/mynewt-nimble/porting/nimble/include/syscfg/syscfg.h index d06056eb1d1ab09140c0147cb4d3c4f69eab74be..6efa3f28858292ca1c1df343f632002dd32974d6 100644 --- a/src/libs/mynewt-nimble/porting/nimble/include/syscfg/syscfg.h +++ b/src/libs/mynewt-nimble/porting/nimble/include/syscfg/syscfg.h @@ -15,11 +15,8 @@ */ #define MYNEWT_VAL(_name) MYNEWT_VAL_ ## _name #define MYNEWT_VAL_CHOICE(_name, _val) MYNEWT_VAL_ ## _name ## __ ## _val - - -/*** @apache-mynewt-core/compiler/arm-none-eabi-m4 */ -#ifndef MYNEWT_VAL_HARDFLOAT -#define MYNEWT_VAL_HARDFLOAT (0) +#ifndef OS_TICKS_PER_SEC +#define OS_TICKS_PER_SEC 1024 #endif /*** @apache-mynewt-core/crypto/tinycrypt */ @@ -35,15 +32,6 @@ #ifndef MYNEWT_VAL_TINYCRYPT_UECC_RNG_USE_TRNG #define MYNEWT_VAL_TINYCRYPT_UECC_RNG_USE_TRNG (0) #endif -/*** @apache-mynewt-core/hw/bsp/nordic_pca10056 */ -#ifndef MYNEWT_VAL_BSP_NRF52840 -#define MYNEWT_VAL_BSP_NRF52840 (1) -#endif - -#ifndef MYNEWT_VAL_SOFT_PWM -#define MYNEWT_VAL_SOFT_PWM (0) -#endif - /*** @apache-mynewt-core/hw/hal */ #ifndef MYNEWT_VAL_HAL_ENABLE_SOFTWARE_BREAKPOINTS #define MYNEWT_VAL_HAL_ENABLE_SOFTWARE_BREAKPOINTS (1) @@ -65,407 +53,17 @@ #ifndef MYNEWT_VAL_HAL_SYSTEM_RESET_CB #define MYNEWT_VAL_HAL_SYSTEM_RESET_CB (0) #endif -/*** @apache-mynewt-core/hw/mcu/nordic/nrf52xxx */ -#ifndef MYNEWT_VAL_ADC_0 -#define MYNEWT_VAL_ADC_0 (0) -#endif - -#ifndef MYNEWT_VAL_ADC_0_REFMV_0 -#define MYNEWT_VAL_ADC_0_REFMV_0 (0) -#endif - -#ifndef MYNEWT_VAL_CRYPTO -#define MYNEWT_VAL_CRYPTO (0) -#endif - -#ifndef MYNEWT_VAL_GPIO_AS_PIN_RESET -#define MYNEWT_VAL_GPIO_AS_PIN_RESET (0) -#endif - -#ifndef MYNEWT_VAL_I2C_0 -#define MYNEWT_VAL_I2C_0 (0) -#endif - -#ifndef MYNEWT_VAL_I2C_0_FREQ_KHZ -#define MYNEWT_VAL_I2C_0_FREQ_KHZ (100) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_I2C_0_PIN_SCL -#define MYNEWT_VAL_I2C_0_PIN_SCL (27) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_I2C_0_PIN_SDA -#define MYNEWT_VAL_I2C_0_PIN_SDA (26) -#endif - -#ifndef MYNEWT_VAL_I2C_1 -#define MYNEWT_VAL_I2C_1 (0) -#endif - -#ifndef MYNEWT_VAL_I2C_1_FREQ_KHZ -#define MYNEWT_VAL_I2C_1_FREQ_KHZ (100) -#endif - -#undef MYNEWT_VAL_I2C_1_PIN_SCL - -#undef MYNEWT_VAL_I2C_1_PIN_SDA - -#ifndef MYNEWT_VAL_MCU_BUS_DRIVER_I2C_USE_TWIM -#define MYNEWT_VAL_MCU_BUS_DRIVER_I2C_USE_TWIM (0) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_MCU_DCDC_ENABLED -#define MYNEWT_VAL_MCU_DCDC_ENABLED (1) -#endif - -#ifndef MYNEWT_VAL_MCU_DEBUG_IGNORE_BKPT -#define MYNEWT_VAL_MCU_DEBUG_IGNORE_BKPT (0) -#endif - -#ifndef MYNEWT_VAL_MCU_FLASH_MIN_WRITE_SIZE -#define MYNEWT_VAL_MCU_FLASH_MIN_WRITE_SIZE (1) -#endif - -#ifndef MYNEWT_VAL_MCU_GPIO_USE_PORT_EVENT -#define MYNEWT_VAL_MCU_GPIO_USE_PORT_EVENT (0) -#endif - -#ifndef MYNEWT_VAL_MCU_I2C_RECOVERY_DELAY_USEC -#define MYNEWT_VAL_MCU_I2C_RECOVERY_DELAY_USEC (100) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_MCU_LFCLK_SOURCE__LFRC -#define MYNEWT_VAL_MCU_LFCLK_SOURCE__LFRC (0) -#endif -#ifndef MYNEWT_VAL_MCU_LFCLK_SOURCE__LFSYNTH -#define MYNEWT_VAL_MCU_LFCLK_SOURCE__LFSYNTH (0) -#endif -#ifndef MYNEWT_VAL_MCU_LFCLK_SOURCE__LFXO -#define MYNEWT_VAL_MCU_LFCLK_SOURCE__LFXO (1) -#endif -#ifndef MYNEWT_VAL_MCU_LFCLK_SOURCE -#define MYNEWT_VAL_MCU_LFCLK_SOURCE (1) -#endif - -#ifndef MYNEWT_VAL_MCU_NRF52832 -#define MYNEWT_VAL_MCU_NRF52832 (0) -#endif - -#ifndef MYNEWT_VAL_MCU_NRF52840 -#define MYNEWT_VAL_MCU_NRF52840 (0) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_MCU_TARGET__nRF52810 -#define MYNEWT_VAL_MCU_TARGET__nRF52810 (0) -#endif -#ifndef MYNEWT_VAL_MCU_TARGET__nRF52811 -#define MYNEWT_VAL_MCU_TARGET__nRF52811 (0) -#endif -#ifndef MYNEWT_VAL_MCU_TARGET__nRF52832 -#define MYNEWT_VAL_MCU_TARGET__nRF52832 (0) -#endif -#ifndef MYNEWT_VAL_MCU_TARGET__nRF52840 -#define MYNEWT_VAL_MCU_TARGET__nRF52840 (1) -#endif -#ifndef MYNEWT_VAL_MCU_TARGET -#define MYNEWT_VAL_MCU_TARGET (1) -#endif - -#ifndef MYNEWT_VAL_NFC_PINS_AS_GPIO -#define MYNEWT_VAL_NFC_PINS_AS_GPIO (1) -#endif - -#ifndef MYNEWT_VAL_PWM_0 -#define MYNEWT_VAL_PWM_0 (0) -#endif - -#ifndef MYNEWT_VAL_PWM_1 -#define MYNEWT_VAL_PWM_1 (0) -#endif - -#ifndef MYNEWT_VAL_PWM_2 -#define MYNEWT_VAL_PWM_2 (0) -#endif - -#ifndef MYNEWT_VAL_PWM_3 -#define MYNEWT_VAL_PWM_3 (0) -#endif - -#ifndef MYNEWT_VAL_QSPI_ADDRMODE -#define MYNEWT_VAL_QSPI_ADDRMODE (0) -#endif - -#ifndef MYNEWT_VAL_QSPI_DPMCONFIG -#define MYNEWT_VAL_QSPI_DPMCONFIG (0) -#endif - -#ifndef MYNEWT_VAL_QSPI_ENABLE -#define MYNEWT_VAL_QSPI_ENABLE (0) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_QSPI_FLASH_PAGE_SIZE -#define MYNEWT_VAL_QSPI_FLASH_PAGE_SIZE (256) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_QSPI_FLASH_SECTOR_COUNT -#define MYNEWT_VAL_QSPI_FLASH_SECTOR_COUNT (4096) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_QSPI_FLASH_SECTOR_SIZE -#define MYNEWT_VAL_QSPI_FLASH_SECTOR_SIZE (4096) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_QSPI_PIN_CS -#define MYNEWT_VAL_QSPI_PIN_CS (17) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_QSPI_PIN_DIO0 -#define MYNEWT_VAL_QSPI_PIN_DIO0 (20) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_QSPI_PIN_DIO1 -#define MYNEWT_VAL_QSPI_PIN_DIO1 (21) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_QSPI_PIN_DIO2 -#define MYNEWT_VAL_QSPI_PIN_DIO2 (22) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_QSPI_PIN_DIO3 -#define MYNEWT_VAL_QSPI_PIN_DIO3 (23) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_QSPI_PIN_SCK -#define MYNEWT_VAL_QSPI_PIN_SCK (19) -#endif - -#ifndef MYNEWT_VAL_QSPI_READOC -#define MYNEWT_VAL_QSPI_READOC (0) -#endif - -#ifndef MYNEWT_VAL_QSPI_SCK_DELAY -#define MYNEWT_VAL_QSPI_SCK_DELAY (0) -#endif - -#ifndef MYNEWT_VAL_QSPI_SCK_FREQ -#define MYNEWT_VAL_QSPI_SCK_FREQ (0) -#endif - -#ifndef MYNEWT_VAL_QSPI_SPI_MODE -#define MYNEWT_VAL_QSPI_SPI_MODE (0) -#endif - -#ifndef MYNEWT_VAL_QSPI_WRITEOC -#define MYNEWT_VAL_QSPI_WRITEOC (0) -#endif - -#ifndef MYNEWT_VAL_SPI_0_MASTER -#define MYNEWT_VAL_SPI_0_MASTER (0) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_SPI_0_MASTER_PIN_MISO -#define MYNEWT_VAL_SPI_0_MASTER_PIN_MISO (47) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_SPI_0_MASTER_PIN_MOSI -#define MYNEWT_VAL_SPI_0_MASTER_PIN_MOSI (46) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_SPI_0_MASTER_PIN_SCK -#define MYNEWT_VAL_SPI_0_MASTER_PIN_SCK (45) -#endif - -#ifndef MYNEWT_VAL_SPI_0_SLAVE -#define MYNEWT_VAL_SPI_0_SLAVE (0) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_SPI_0_SLAVE_PIN_MISO -#define MYNEWT_VAL_SPI_0_SLAVE_PIN_MISO (47) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_SPI_0_SLAVE_PIN_MOSI -#define MYNEWT_VAL_SPI_0_SLAVE_PIN_MOSI (46) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_SPI_0_SLAVE_PIN_SCK -#define MYNEWT_VAL_SPI_0_SLAVE_PIN_SCK (45) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_SPI_0_SLAVE_PIN_SS -#define MYNEWT_VAL_SPI_0_SLAVE_PIN_SS (44) -#endif - -#ifndef MYNEWT_VAL_SPI_1_MASTER -#define MYNEWT_VAL_SPI_1_MASTER (0) -#endif - -#undef MYNEWT_VAL_SPI_1_MASTER_PIN_MISO - -#undef MYNEWT_VAL_SPI_1_MASTER_PIN_MOSI - -#undef MYNEWT_VAL_SPI_1_MASTER_PIN_SCK - -#ifndef MYNEWT_VAL_SPI_1_SLAVE -#define MYNEWT_VAL_SPI_1_SLAVE (0) -#endif - -#undef MYNEWT_VAL_SPI_1_SLAVE_PIN_MISO - -#undef MYNEWT_VAL_SPI_1_SLAVE_PIN_MOSI - -#undef MYNEWT_VAL_SPI_1_SLAVE_PIN_SCK - -#undef MYNEWT_VAL_SPI_1_SLAVE_PIN_SS - -#ifndef MYNEWT_VAL_SPI_2_MASTER -#define MYNEWT_VAL_SPI_2_MASTER (0) -#endif - -#undef MYNEWT_VAL_SPI_2_MASTER_PIN_MISO - -#undef MYNEWT_VAL_SPI_2_MASTER_PIN_MOSI - -#undef MYNEWT_VAL_SPI_2_MASTER_PIN_SCK - -#ifndef MYNEWT_VAL_SPI_2_SLAVE -#define MYNEWT_VAL_SPI_2_SLAVE (0) -#endif - -#undef MYNEWT_VAL_SPI_2_SLAVE_PIN_MISO - -#undef MYNEWT_VAL_SPI_2_SLAVE_PIN_MOSI - -#undef MYNEWT_VAL_SPI_2_SLAVE_PIN_SCK - -#undef MYNEWT_VAL_SPI_2_SLAVE_PIN_SS - -#ifndef MYNEWT_VAL_SPI_3_MASTER -#define MYNEWT_VAL_SPI_3_MASTER (0) -#endif - -#undef MYNEWT_VAL_SPI_3_MASTER_PIN_MISO - -#undef MYNEWT_VAL_SPI_3_MASTER_PIN_MOSI - -#undef MYNEWT_VAL_SPI_3_MASTER_PIN_SCK - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_TIMER_0 -#define MYNEWT_VAL_TIMER_0 (0) -#endif - -#ifndef MYNEWT_VAL_TIMER_1 -#define MYNEWT_VAL_TIMER_1 (0) -#endif - -#ifndef MYNEWT_VAL_TIMER_2 -#define MYNEWT_VAL_TIMER_2 (0) -#endif - -#ifndef MYNEWT_VAL_TIMER_3 -#define MYNEWT_VAL_TIMER_3 (0) -#endif - -#ifndef MYNEWT_VAL_TIMER_4 -#define MYNEWT_VAL_TIMER_4 (0) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_TIMER_5 -#define MYNEWT_VAL_TIMER_5 (1) -#endif - -#ifndef MYNEWT_VAL_TRNG -#define MYNEWT_VAL_TRNG (0) -#endif - -#ifndef MYNEWT_VAL_UART_0 -#define MYNEWT_VAL_UART_0 (1) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_UART_0_PIN_CTS -#define MYNEWT_VAL_UART_0_PIN_CTS (7) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_UART_0_PIN_RTS -#define MYNEWT_VAL_UART_0_PIN_RTS (5) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_UART_0_PIN_RX -#define MYNEWT_VAL_UART_0_PIN_RX (8) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_UART_0_PIN_TX -#define MYNEWT_VAL_UART_0_PIN_TX (6) -#endif - -#ifndef MYNEWT_VAL_UART_1 -#define MYNEWT_VAL_UART_1 (0) -#endif - -#ifndef MYNEWT_VAL_UART_1_PIN_CTS -#define MYNEWT_VAL_UART_1_PIN_CTS (-1) -#endif - -#ifndef MYNEWT_VAL_UART_1_PIN_RTS -#define MYNEWT_VAL_UART_1_PIN_RTS (-1) -#endif - -#undef MYNEWT_VAL_UART_1_PIN_RX - -#undef MYNEWT_VAL_UART_1_PIN_TX - -/* Overridden by @apache-mynewt-nimble/targets/riot (defined by @apache-mynewt-core/hw/mcu/nordic/nrf52xxx) */ -#ifndef MYNEWT_VAL_XTAL_32768 -#define MYNEWT_VAL_XTAL_32768 (1) -#endif - -#ifndef MYNEWT_VAL_XTAL_32768_SYNTH -#define MYNEWT_VAL_XTAL_32768_SYNTH (0) -#endif - -#ifndef MYNEWT_VAL_XTAL_RC -#define MYNEWT_VAL_XTAL_RC (0) -#endif - /*** @apache-mynewt-core/kernel/os */ #ifndef MYNEWT_VAL_FLOAT_USER #define MYNEWT_VAL_FLOAT_USER (0) #endif -/* Overridden by @apache-mynewt-nimble/targets/riot (defined by @apache-mynewt-core/kernel/os) */ #ifndef MYNEWT_VAL_MSYS_1_BLOCK_COUNT #define MYNEWT_VAL_MSYS_1_BLOCK_COUNT (12) #endif -/* Overridden by @apache-mynewt-nimble/targets/riot (defined by @apache-mynewt-core/kernel/os) */ #ifndef MYNEWT_VAL_MSYS_1_BLOCK_SIZE -#define MYNEWT_VAL_MSYS_1_BLOCK_SIZE (88) +#define MYNEWT_VAL_MSYS_1_BLOCK_SIZE (292) #endif #ifndef MYNEWT_VAL_MSYS_1_SANITY_MIN_COUNT @@ -500,12 +98,10 @@ #ifndef MYNEWT_VAL_OS_COREDUMP #define MYNEWT_VAL_OS_COREDUMP (0) #endif -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/kernel/os) */ #ifndef MYNEWT_VAL_OS_CPUTIME_FREQ #define MYNEWT_VAL_OS_CPUTIME_FREQ (32768) #endif -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-core/kernel/os) */ #ifndef MYNEWT_VAL_OS_CPUTIME_TIMER_NUM #define MYNEWT_VAL_OS_CPUTIME_TIMER_NUM (5) #endif @@ -634,15 +230,6 @@ #ifndef MYNEWT_VAL_WATCHDOG_INTERVAL #define MYNEWT_VAL_WATCHDOG_INTERVAL (30000) #endif -/*** @apache-mynewt-core/libc/baselibc */ -#ifndef MYNEWT_VAL_BASELIBC_ASSERT_FILE_LINE -#define MYNEWT_VAL_BASELIBC_ASSERT_FILE_LINE (0) -#endif - -#ifndef MYNEWT_VAL_BASELIBC_PRESENT -#define MYNEWT_VAL_BASELIBC_PRESENT (1) -#endif - /*** @apache-mynewt-core/sys/console/stub */ #ifndef MYNEWT_VAL_CONSOLE_UART_BAUD #define MYNEWT_VAL_CONSOLE_UART_BAUD (115200) @@ -713,7 +300,7 @@ #define MYNEWT_VAL_LOG_FCB_SLOT1 (0) #endif #ifndef MYNEWT_VAL_LOG_LEVEL -#define MYNEWT_VAL_LOG_LEVEL (0) +#define MYNEWT_VAL_LOG_LEVEL (255) #endif /*** @apache-mynewt-core/sys/mfg */ @@ -786,9 +373,8 @@ #ifndef MYNEWT_VAL_BLE_MAX_CONNECTIONS #define MYNEWT_VAL_BLE_MAX_CONNECTIONS (1) #endif -/* Overridden by @apache-mynewt-nimble/targets/riot (defined by @apache-mynewt-nimble/nimble) */ #ifndef MYNEWT_VAL_BLE_MAX_PERIODIC_SYNCS -#define MYNEWT_VAL_BLE_MAX_PERIODIC_SYNCS (0) +#define MYNEWT_VAL_BLE_MAX_PERIODIC_SYNCS (1) #endif #ifndef MYNEWT_VAL_BLE_MULTI_ADV_INSTANCES @@ -799,6 +385,10 @@ #ifndef MYNEWT_VAL_BLE_PERIODIC_ADV #define MYNEWT_VAL_BLE_PERIODIC_ADV (0) #endif +#ifndef MYNEWT_VAL_BLE_PERIODIC_ADV_SYNC_TRANSFER +#define MYNEWT_VAL_BLE_PERIODIC_ADV_SYNC_TRANSFER (0) +#endif + #ifndef MYNEWT_VAL_BLE_ROLE_BROADCASTER #define MYNEWT_VAL_BLE_ROLE_BROADCASTER (1) #endif @@ -823,251 +413,6 @@ #ifndef MYNEWT_VAL_BLE_WHITELIST #define MYNEWT_VAL_BLE_WHITELIST (1) #endif -/*** @apache-mynewt-nimble/nimble/controller */ -#ifndef MYNEWT_VAL_BLE_CONTROLLER -#define MYNEWT_VAL_BLE_CONTROLLER (1) -#endif - -#ifndef MYNEWT_VAL_BLE_DEVICE -#define MYNEWT_VAL_BLE_DEVICE (1) -#endif - -/* Overridden by @apache-mynewt-nimble/targets/riot (defined by @apache-mynewt-nimble/nimble/controller) */ -#ifndef MYNEWT_VAL_BLE_HW_WHITELIST_ENABLE -#define MYNEWT_VAL_BLE_HW_WHITELIST_ENABLE (0) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_ADD_STRICT_SCHED_PERIODS -#define MYNEWT_VAL_BLE_LL_ADD_STRICT_SCHED_PERIODS (0) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_CFG_FEAT_CONN_PARAM_REQ -#define MYNEWT_VAL_BLE_LL_CFG_FEAT_CONN_PARAM_REQ (1) -#endif - -/* Overridden by @apache-mynewt-nimble/targets/riot (defined by @apache-mynewt-nimble/nimble/controller) */ -#ifndef MYNEWT_VAL_BLE_LL_CFG_FEAT_DATA_LEN_EXT -#define MYNEWT_VAL_BLE_LL_CFG_FEAT_DATA_LEN_EXT (0) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_CFG_FEAT_EXT_SCAN_FILT -#define MYNEWT_VAL_BLE_LL_CFG_FEAT_EXT_SCAN_FILT (0) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_CFG_FEAT_LE_2M_PHY -#define MYNEWT_VAL_BLE_LL_CFG_FEAT_LE_2M_PHY (0) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_CFG_FEAT_LE_CODED_PHY -#define MYNEWT_VAL_BLE_LL_CFG_FEAT_LE_CODED_PHY (0) -#endif - -/* Overridden by @apache-mynewt-nimble/targets/riot (defined by @apache-mynewt-nimble/nimble/controller) */ -#ifndef MYNEWT_VAL_BLE_LL_CFG_FEAT_LE_CSA2 -#define MYNEWT_VAL_BLE_LL_CFG_FEAT_LE_CSA2 (1) -#endif - -/* Overridden by @apache-mynewt-nimble/targets/riot (defined by @apache-mynewt-nimble/nimble/controller) */ -#ifndef MYNEWT_VAL_BLE_LL_CFG_FEAT_LE_ENCRYPTION -#define MYNEWT_VAL_BLE_LL_CFG_FEAT_LE_ENCRYPTION (1) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_CFG_FEAT_LE_PING -#define MYNEWT_VAL_BLE_LL_CFG_FEAT_LE_PING (MYNEWT_VAL_BLE_LL_CFG_FEAT_LE_ENCRYPTION) -#endif - -/* Value copied from BLE_EXT_ADV */ -#ifndef MYNEWT_VAL_BLE_LL_CFG_FEAT_LL_EXT_ADV -#define MYNEWT_VAL_BLE_LL_CFG_FEAT_LL_EXT_ADV (0) -#endif - -/* Value copied from BLE_PERIODIC_ADV */ -#ifndef MYNEWT_VAL_BLE_LL_CFG_FEAT_LL_PERIODIC_ADV -#define MYNEWT_VAL_BLE_LL_CFG_FEAT_LL_PERIODIC_ADV (0) -#endif - -/* Value copied from BLE_MAX_PERIODIC_SYNCS */ -#ifndef MYNEWT_VAL_BLE_LL_CFG_FEAT_LL_PERIODIC_ADV_SYNC_CNT -#define MYNEWT_VAL_BLE_LL_CFG_FEAT_LL_PERIODIC_ADV_SYNC_CNT (0) -#endif - -/* Overridden by @apache-mynewt-nimble/targets/riot (defined by @apache-mynewt-nimble/nimble/controller) */ -#ifndef MYNEWT_VAL_BLE_LL_CFG_FEAT_LL_PRIVACY -#define MYNEWT_VAL_BLE_LL_CFG_FEAT_LL_PRIVACY (0) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_CFG_FEAT_SLAVE_INIT_FEAT_XCHG -#define MYNEWT_VAL_BLE_LL_CFG_FEAT_SLAVE_INIT_FEAT_XCHG (1) -#endif - -/* Overridden by @apache-mynewt-nimble/targets/riot (defined by @apache-mynewt-nimble/nimble/controller) */ -#ifndef MYNEWT_VAL_BLE_LL_CONN_INIT_MAX_TX_BYTES -#define MYNEWT_VAL_BLE_LL_CONN_INIT_MAX_TX_BYTES (MYNEWT_VAL_BLE_LL_MAX_PKT_SIZE) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_CONN_INIT_MIN_WIN_OFFSET -#define MYNEWT_VAL_BLE_LL_CONN_INIT_MIN_WIN_OFFSET (0) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_CONN_INIT_SLOTS -#define MYNEWT_VAL_BLE_LL_CONN_INIT_SLOTS (4) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_DBG_HCI_CMD_PIN -#define MYNEWT_VAL_BLE_LL_DBG_HCI_CMD_PIN (-1) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_DBG_HCI_EV_PIN -#define MYNEWT_VAL_BLE_LL_DBG_HCI_EV_PIN (-1) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_DIRECT_TEST_MODE -#define MYNEWT_VAL_BLE_LL_DIRECT_TEST_MODE (0) -#endif - -/* Value copied from BLE_LL_DIRECT_TEST_MODE */ -#ifndef MYNEWT_VAL_BLE_LL_DTM -#define MYNEWT_VAL_BLE_LL_DTM (0) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_DTM_EXTENSIONS -#define MYNEWT_VAL_BLE_LL_DTM_EXTENSIONS (0) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_EXT_ADV_AUX_PTR_CNT -#define MYNEWT_VAL_BLE_LL_EXT_ADV_AUX_PTR_CNT (0) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_MASTER_SCA -#define MYNEWT_VAL_BLE_LL_MASTER_SCA (4) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_MAX_PKT_SIZE -#define MYNEWT_VAL_BLE_LL_MAX_PKT_SIZE (251) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_MFRG_ID -#define MYNEWT_VAL_BLE_LL_MFRG_ID (0xFFFF) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_NUM_COMP_PKT_ITVL_MS -#define MYNEWT_VAL_BLE_LL_NUM_COMP_PKT_ITVL_MS (2000) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_NUM_SCAN_DUP_ADVS -#define MYNEWT_VAL_BLE_LL_NUM_SCAN_DUP_ADVS (8) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_NUM_SCAN_RSP_ADVS -#define MYNEWT_VAL_BLE_LL_NUM_SCAN_RSP_ADVS (8) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_OUR_SCA -#define MYNEWT_VAL_BLE_LL_OUR_SCA (60) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_PRIO -#define MYNEWT_VAL_BLE_LL_PRIO (0) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_RESOLV_LIST_SIZE -#define MYNEWT_VAL_BLE_LL_RESOLV_LIST_SIZE (4) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_RNG_BUFSIZE -#define MYNEWT_VAL_BLE_LL_RNG_BUFSIZE (32) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_SCHED_AUX_CHAIN_MAFS_DELAY -#define MYNEWT_VAL_BLE_LL_SCHED_AUX_CHAIN_MAFS_DELAY (0) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_SCHED_AUX_MAFS_DELAY -#define MYNEWT_VAL_BLE_LL_SCHED_AUX_MAFS_DELAY (0) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_STRICT_CONN_SCHEDULING -#define MYNEWT_VAL_BLE_LL_STRICT_CONN_SCHEDULING (0) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_SUPP_MAX_RX_BYTES -#define MYNEWT_VAL_BLE_LL_SUPP_MAX_RX_BYTES (MYNEWT_VAL_BLE_LL_MAX_PKT_SIZE) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_SUPP_MAX_TX_BYTES -#define MYNEWT_VAL_BLE_LL_SUPP_MAX_TX_BYTES (MYNEWT_VAL_BLE_LL_MAX_PKT_SIZE) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_SYSINIT_STAGE -#define MYNEWT_VAL_BLE_LL_SYSINIT_STAGE (250) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_SYSVIEW -#define MYNEWT_VAL_BLE_LL_SYSVIEW (0) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_TX_PWR_DBM -#define MYNEWT_VAL_BLE_LL_TX_PWR_DBM (0) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_USECS_PER_PERIOD -#define MYNEWT_VAL_BLE_LL_USECS_PER_PERIOD (3250) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_VND_EVENT_ON_ASSERT -#define MYNEWT_VAL_BLE_LL_VND_EVENT_ON_ASSERT (0) -#endif - -#ifndef MYNEWT_VAL_BLE_LL_WHITELIST_SIZE -#define MYNEWT_VAL_BLE_LL_WHITELIST_SIZE (8) -#endif - -#ifndef MYNEWT_VAL_BLE_LP_CLOCK -#define MYNEWT_VAL_BLE_LP_CLOCK (1) -#endif - -#ifndef MYNEWT_VAL_BLE_NUM_COMP_PKT_RATE -#define MYNEWT_VAL_BLE_NUM_COMP_PKT_RATE ((2 * OS_TICKS_PER_SEC)) -#endif - -#ifndef MYNEWT_VAL_BLE_PUBLIC_DEV_ADDR -#define MYNEWT_VAL_BLE_PUBLIC_DEV_ADDR ((uint8_t[6]){0x00, 0x00, 0x00, 0x00, 0x00, 0x00}) -#endif - -/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-nimble/nimble/controller) */ -#ifndef MYNEWT_VAL_BLE_XTAL_SETTLE_TIME -#define MYNEWT_VAL_BLE_XTAL_SETTLE_TIME (1500) -#endif - -/*** @apache-mynewt-nimble/nimble/drivers/nrf52 */ -#ifndef MYNEWT_VAL_BLE_PHY_CODED_RX_IFS_EXTRA_MARGIN -#define MYNEWT_VAL_BLE_PHY_CODED_RX_IFS_EXTRA_MARGIN (0) -#endif - -#ifndef MYNEWT_VAL_BLE_PHY_DBG_TIME_ADDRESS_END_PIN -#define MYNEWT_VAL_BLE_PHY_DBG_TIME_ADDRESS_END_PIN (-1) -#endif - -#ifndef MYNEWT_VAL_BLE_PHY_DBG_TIME_TXRXEN_READY_PIN -#define MYNEWT_VAL_BLE_PHY_DBG_TIME_TXRXEN_READY_PIN (-1) -#endif - -#ifndef MYNEWT_VAL_BLE_PHY_DBG_TIME_WFR_PIN -#define MYNEWT_VAL_BLE_PHY_DBG_TIME_WFR_PIN (-1) -#endif - -#ifndef MYNEWT_VAL_BLE_PHY_NRF52840_ERRATA_164 -#define MYNEWT_VAL_BLE_PHY_NRF52840_ERRATA_164 (0) -#endif - -#ifndef MYNEWT_VAL_BLE_PHY_NRF52840_ERRATA_191 -#define MYNEWT_VAL_BLE_PHY_NRF52840_ERRATA_191 (1) -#endif - -#ifndef MYNEWT_VAL_BLE_PHY_SYSVIEW -#define MYNEWT_VAL_BLE_PHY_SYSVIEW (0) -#endif - /*** @apache-mynewt-nimble/nimble/host */ #ifndef MYNEWT_VAL_BLE_ATT_PREFERRED_MTU #define MYNEWT_VAL_BLE_ATT_PREFERRED_MTU (256) @@ -1250,7 +595,7 @@ #define MYNEWT_VAL_BLE_HS_FLOW_CTRL_TX_ON_DISCONNECT (0) #endif #ifndef MYNEWT_VAL_BLE_HS_LOG_LVL -#define MYNEWT_VAL_BLE_HS_LOG_LVL (0) +#define MYNEWT_VAL_BLE_HS_LOG_LVL (1) #endif #ifndef MYNEWT_VAL_BLE_HS_LOG_MOD @@ -1285,6 +630,10 @@ #ifndef MYNEWT_VAL_BLE_L2CAP_COC_MPS #define MYNEWT_VAL_BLE_L2CAP_COC_MPS (MYNEWT_VAL_MSYS_1_BLOCK_SIZE-8) #endif +#ifndef MYNEWT_VAL_BLE_L2CAP_ENHANCED_COC +#define MYNEWT_VAL_BLE_L2CAP_ENHANCED_COC (0) +#endif + #ifndef MYNEWT_VAL_BLE_L2CAP_JOIN_RX_FRAGS #define MYNEWT_VAL_BLE_L2CAP_JOIN_RX_FRAGS (1) #endif @@ -1314,7 +663,7 @@ #define MYNEWT_VAL_BLE_MONITOR_RTT (0) #endif #ifndef MYNEWT_VAL_BLE_MONITOR_RTT_BUFFERED -#define MYNEWT_VAL_BLE_MONITOR_RTT_BUFFERED (1) +#define MYNEWT_VAL_BLE_MONITOR_RTT_BUFFERED (0) #endif #ifndef MYNEWT_VAL_BLE_MONITOR_RTT_BUFFER_NAME @@ -1397,6 +746,103 @@ #ifndef MYNEWT_VAL_BLE_STORE_MAX_CCCDS #define MYNEWT_VAL_BLE_STORE_MAX_CCCDS (8) #endif +/*** @apache-mynewt-nimble/nimble/host/services/ans */ +#ifndef MYNEWT_VAL_BLE_SVC_ANS_NEW_ALERT_CAT +#define MYNEWT_VAL_BLE_SVC_ANS_NEW_ALERT_CAT (0) +#endif + +#ifndef MYNEWT_VAL_BLE_SVC_ANS_SYSINIT_STAGE +#define MYNEWT_VAL_BLE_SVC_ANS_SYSINIT_STAGE (303) +#endif + +#ifndef MYNEWT_VAL_BLE_SVC_ANS_UNR_ALERT_CAT +#define MYNEWT_VAL_BLE_SVC_ANS_UNR_ALERT_CAT (0) +#endif + +/*** @apache-mynewt-nimble/nimble/host/services/bas */ +#ifndef MYNEWT_VAL_BLE_SVC_BAS_BATTERY_LEVEL_NOTIFY_ENABLE +#define MYNEWT_VAL_BLE_SVC_BAS_BATTERY_LEVEL_NOTIFY_ENABLE (1) +#endif + +#ifndef MYNEWT_VAL_BLE_SVC_BAS_BATTERY_LEVEL_READ_PERM +#define MYNEWT_VAL_BLE_SVC_BAS_BATTERY_LEVEL_READ_PERM (0) +#endif + +#ifndef MYNEWT_VAL_BLE_SVC_BAS_SYSINIT_STAGE +#define MYNEWT_VAL_BLE_SVC_BAS_SYSINIT_STAGE (303) +#endif + +/*** @apache-mynewt-nimble/nimble/host/services/dis */ +#ifndef MYNEWT_VAL_BLE_SVC_DIS_DEFAULT_READ_PERM +#define MYNEWT_VAL_BLE_SVC_DIS_DEFAULT_READ_PERM (-1) +#endif + +#ifndef MYNEWT_VAL_BLE_SVC_DIS_FIRMWARE_REVISION_DEFAULT +#define MYNEWT_VAL_BLE_SVC_DIS_FIRMWARE_REVISION_DEFAULT (NULL) +#endif + +/* Value copied from BLE_SVC_DIS_DEFAULT_READ_PERM */ +#ifndef MYNEWT_VAL_BLE_SVC_DIS_FIRMWARE_REVISION_READ_PERM +#define MYNEWT_VAL_BLE_SVC_DIS_FIRMWARE_REVISION_READ_PERM (-1) +#endif + +#ifndef MYNEWT_VAL_BLE_SVC_DIS_HARDWARE_REVISION_DEFAULT +#define MYNEWT_VAL_BLE_SVC_DIS_HARDWARE_REVISION_DEFAULT (NULL) +#endif + +/* Value copied from BLE_SVC_DIS_DEFAULT_READ_PERM */ +#ifndef MYNEWT_VAL_BLE_SVC_DIS_HARDWARE_REVISION_READ_PERM +#define MYNEWT_VAL_BLE_SVC_DIS_HARDWARE_REVISION_READ_PERM (-1) +#endif + +#ifndef MYNEWT_VAL_BLE_SVC_DIS_MANUFACTURER_NAME_DEFAULT +#define MYNEWT_VAL_BLE_SVC_DIS_MANUFACTURER_NAME_DEFAULT (NULL) +#endif + +/* Value copied from BLE_SVC_DIS_DEFAULT_READ_PERM */ +#ifndef MYNEWT_VAL_BLE_SVC_DIS_MANUFACTURER_NAME_READ_PERM +#define MYNEWT_VAL_BLE_SVC_DIS_MANUFACTURER_NAME_READ_PERM (-1) +#endif + +#ifndef MYNEWT_VAL_BLE_SVC_DIS_MODEL_NUMBER_DEFAULT +#define MYNEWT_VAL_BLE_SVC_DIS_MODEL_NUMBER_DEFAULT ("Apache Mynewt NimBLE") +#endif + +#ifndef MYNEWT_VAL_BLE_SVC_DIS_MODEL_NUMBER_READ_PERM +#define MYNEWT_VAL_BLE_SVC_DIS_MODEL_NUMBER_READ_PERM (0) +#endif + +#ifndef MYNEWT_VAL_BLE_SVC_DIS_SERIAL_NUMBER_DEFAULT +#define MYNEWT_VAL_BLE_SVC_DIS_SERIAL_NUMBER_DEFAULT (NULL) +#endif + +/* Value copied from BLE_SVC_DIS_DEFAULT_READ_PERM */ +#ifndef MYNEWT_VAL_BLE_SVC_DIS_SERIAL_NUMBER_READ_PERM +#define MYNEWT_VAL_BLE_SVC_DIS_SERIAL_NUMBER_READ_PERM (-1) +#endif + +#ifndef MYNEWT_VAL_BLE_SVC_DIS_SOFTWARE_REVISION_DEFAULT +#define MYNEWT_VAL_BLE_SVC_DIS_SOFTWARE_REVISION_DEFAULT (NULL) +#endif + +/* Value copied from BLE_SVC_DIS_DEFAULT_READ_PERM */ +#ifndef MYNEWT_VAL_BLE_SVC_DIS_SOFTWARE_REVISION_READ_PERM +#define MYNEWT_VAL_BLE_SVC_DIS_SOFTWARE_REVISION_READ_PERM (-1) +#endif + +#ifndef MYNEWT_VAL_BLE_SVC_DIS_SYSINIT_STAGE +#define MYNEWT_VAL_BLE_SVC_DIS_SYSINIT_STAGE (303) +#endif + +#ifndef MYNEWT_VAL_BLE_SVC_DIS_SYSTEM_ID_DEFAULT +#define MYNEWT_VAL_BLE_SVC_DIS_SYSTEM_ID_DEFAULT (NULL) +#endif + +/* Value copied from BLE_SVC_DIS_DEFAULT_READ_PERM */ +#ifndef MYNEWT_VAL_BLE_SVC_DIS_SYSTEM_ID_READ_PERM +#define MYNEWT_VAL_BLE_SVC_DIS_SYSTEM_ID_READ_PERM (-1) +#endif + /*** @apache-mynewt-nimble/nimble/host/services/gap */ #ifndef MYNEWT_VAL_BLE_SVC_GAP_APPEARANCE #define MYNEWT_VAL_BLE_SVC_GAP_APPEARANCE (0) @@ -1447,31 +893,77 @@ #ifndef MYNEWT_VAL_BLE_SVC_GATT_SYSINIT_STAGE #define MYNEWT_VAL_BLE_SVC_GATT_SYSINIT_STAGE (302) #endif -/*** @apache-mynewt-nimble/nimble/transport/ram */ -/* Overridden by @apache-mynewt-nimble/targets/riot (defined by @apache-mynewt-nimble/nimble/transport/ram) */ +/*** @apache-mynewt-nimble/nimble/host/services/ias */ +#ifndef MYNEWT_VAL_BLE_SVC_IAS_SYSINIT_STAGE +#define MYNEWT_VAL_BLE_SVC_IAS_SYSINIT_STAGE (303) +#endif + +/*** @apache-mynewt-nimble/nimble/host/services/ipss */ +#ifndef MYNEWT_VAL_BLE_SVC_IPSS_SYSINIT_STAGE +#define MYNEWT_VAL_BLE_SVC_IPSS_SYSINIT_STAGE (303) +#endif + +/*** @apache-mynewt-nimble/nimble/host/services/lls */ +#ifndef MYNEWT_VAL_BLE_SVC_LLS_SYSINIT_STAGE +#define MYNEWT_VAL_BLE_SVC_LLS_SYSINIT_STAGE (303) +#endif + +/*** @apache-mynewt-nimble/nimble/host/services/tps */ +#ifndef MYNEWT_VAL_BLE_SVC_TPS_SYSINIT_STAGE +#define MYNEWT_VAL_BLE_SVC_TPS_SYSINIT_STAGE (303) +#endif + +/*** @apache-mynewt-nimble/nimble/transport/socket */ #ifndef MYNEWT_VAL_BLE_ACL_BUF_COUNT -#define MYNEWT_VAL_BLE_ACL_BUF_COUNT (4) +#define MYNEWT_VAL_BLE_ACL_BUF_COUNT (24) #endif #ifndef MYNEWT_VAL_BLE_ACL_BUF_SIZE #define MYNEWT_VAL_BLE_ACL_BUF_SIZE (255) #endif +#ifndef MYNEWT_VAL_BLE_HCI_ACL_OUT_COUNT +#define MYNEWT_VAL_BLE_HCI_ACL_OUT_COUNT (12) +#endif + #ifndef MYNEWT_VAL_BLE_HCI_EVT_BUF_SIZE #define MYNEWT_VAL_BLE_HCI_EVT_BUF_SIZE (70) #endif -/* Overridden by @apache-mynewt-nimble/targets/riot (defined by @apache-mynewt-nimble/nimble/transport/ram) */ #ifndef MYNEWT_VAL_BLE_HCI_EVT_HI_BUF_COUNT -#define MYNEWT_VAL_BLE_HCI_EVT_HI_BUF_COUNT (2) +#define MYNEWT_VAL_BLE_HCI_EVT_HI_BUF_COUNT (8) #endif #ifndef MYNEWT_VAL_BLE_HCI_EVT_LO_BUF_COUNT #define MYNEWT_VAL_BLE_HCI_EVT_LO_BUF_COUNT (8) #endif -#ifndef MYNEWT_VAL_BLE_TRANS_RAM_SYSINIT_STAGE -#define MYNEWT_VAL_BLE_TRANS_RAM_SYSINIT_STAGE (100) +#ifndef MYNEWT_VAL_BLE_SOCK_CLI_SYSINIT_STAGE +#define MYNEWT_VAL_BLE_SOCK_CLI_SYSINIT_STAGE (500) +#endif + +#ifndef MYNEWT_VAL_BLE_SOCK_LINUX_DEV +#define MYNEWT_VAL_BLE_SOCK_LINUX_DEV (0) +#endif + +#ifndef MYNEWT_VAL_BLE_SOCK_STACK_SIZE +#define MYNEWT_VAL_BLE_SOCK_STACK_SIZE (80) +#endif + +#ifndef MYNEWT_VAL_BLE_SOCK_TASK_PRIO +#define MYNEWT_VAL_BLE_SOCK_TASK_PRIO (9) +#endif + +#ifndef MYNEWT_VAL_BLE_SOCK_TCP_PORT +#define MYNEWT_VAL_BLE_SOCK_TCP_PORT (14433) +#endif + +#ifndef MYNEWT_VAL_BLE_SOCK_USE_LINUX_BLUE +#define MYNEWT_VAL_BLE_SOCK_USE_LINUX_BLUE (0) +#endif + +#ifndef MYNEWT_VAL_BLE_SOCK_USE_TCP +#define MYNEWT_VAL_BLE_SOCK_USE_TCP (1) #endif /*** newt */ @@ -1484,19 +976,19 @@ #define MYNEWT_VAL_APP_dummy_app (1) #endif #ifndef MYNEWT_VAL_ARCH_NAME -#define MYNEWT_VAL_ARCH_NAME ("cortex_m4") +#define MYNEWT_VAL_ARCH_NAME ("dummy") #endif -#ifndef MYNEWT_VAL_ARCH_cortex_m4 -#define MYNEWT_VAL_ARCH_cortex_m4 (1) +#ifndef MYNEWT_VAL_ARCH_dummy +#define MYNEWT_VAL_ARCH_dummy (1) #endif #ifndef MYNEWT_VAL_BSP_NAME -#define MYNEWT_VAL_BSP_NAME ("nordic_pca10056") +#define MYNEWT_VAL_BSP_NAME ("dummy_bsp") #endif -#ifndef MYNEWT_VAL_BSP_nordic_pca10056 -#define MYNEWT_VAL_BSP_nordic_pca10056 (1) +#ifndef MYNEWT_VAL_BSP_dummy_bsp +#define MYNEWT_VAL_BSP_dummy_bsp (1) #endif #ifndef MYNEWT_VAL_NEWT_FEATURE_LOGCFG @@ -1508,11 +1000,268 @@ #define MYNEWT_VAL_NEWT_FEATURE_SYSDOWN (1) #endif #ifndef MYNEWT_VAL_TARGET_NAME -#define MYNEWT_VAL_TARGET_NAME ("riot") +#define MYNEWT_VAL_TARGET_NAME ("porting_default") +#endif + +#ifndef MYNEWT_VAL_TARGET_porting_default +#define MYNEWT_VAL_TARGET_porting_default (1) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_TX_PWR_DBM +#define MYNEWT_VAL_BLE_LL_TX_PWR_DBM (0) +#endif + +#ifndef MYNEWT_VAL_BLE_PUBLIC_DEV_ADDR +#define MYNEWT_VAL_BLE_PUBLIC_DEV_ADDR ((uint8_t[6]){0x00, 0x00, 0x00, 0x00, 0x00, 0x00}) +#endif + +/*** @apache-mynewt-nimble/nimble/controller */ +#ifndef MYNEWT_VAL_BLE_CONTROLLER +#define MYNEWT_VAL_BLE_CONTROLLER (1) +#endif + +#ifndef MYNEWT_VAL_BLE_DEVICE +#define MYNEWT_VAL_BLE_DEVICE (1) +#endif + +/* Overridden by @apache-mynewt-nimble/targets/riot (defined by @apache-mynewt-nimble/nimble/controller) */ +#ifndef MYNEWT_VAL_BLE_HW_WHITELIST_ENABLE +#define MYNEWT_VAL_BLE_HW_WHITELIST_ENABLE (0) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_ADD_STRICT_SCHED_PERIODS +#define MYNEWT_VAL_BLE_LL_ADD_STRICT_SCHED_PERIODS (0) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_CFG_FEAT_CONN_PARAM_REQ +#define MYNEWT_VAL_BLE_LL_CFG_FEAT_CONN_PARAM_REQ (1) +#endif + +/* Overridden by @apache-mynewt-nimble/targets/riot (defined by @apache-mynewt-nimble/nimble/controller) */ +#ifndef MYNEWT_VAL_BLE_LL_CFG_FEAT_DATA_LEN_EXT +#define MYNEWT_VAL_BLE_LL_CFG_FEAT_DATA_LEN_EXT (0) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_CFG_FEAT_EXT_SCAN_FILT +#define MYNEWT_VAL_BLE_LL_CFG_FEAT_EXT_SCAN_FILT (0) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_CFG_FEAT_LE_2M_PHY +#define MYNEWT_VAL_BLE_LL_CFG_FEAT_LE_2M_PHY (0) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_CFG_FEAT_LE_CODED_PHY +#define MYNEWT_VAL_BLE_LL_CFG_FEAT_LE_CODED_PHY (0) +#endif + +/* Overridden by @apache-mynewt-nimble/targets/riot (defined by @apache-mynewt-nimble/nimble/controller) */ +#ifndef MYNEWT_VAL_BLE_LL_CFG_FEAT_LE_CSA2 +#define MYNEWT_VAL_BLE_LL_CFG_FEAT_LE_CSA2 (1) +#endif + +/* Overridden by @apache-mynewt-nimble/targets/riot (defined by @apache-mynewt-nimble/nimble/controller) */ +#ifndef MYNEWT_VAL_BLE_LL_CFG_FEAT_LE_ENCRYPTION +#define MYNEWT_VAL_BLE_LL_CFG_FEAT_LE_ENCRYPTION (1) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_CFG_FEAT_LE_PING +#define MYNEWT_VAL_BLE_LL_CFG_FEAT_LE_PING (MYNEWT_VAL_BLE_LL_CFG_FEAT_LE_ENCRYPTION) +#endif + +/* Value copied from BLE_EXT_ADV */ +#ifndef MYNEWT_VAL_BLE_LL_CFG_FEAT_LL_EXT_ADV +#define MYNEWT_VAL_BLE_LL_CFG_FEAT_LL_EXT_ADV (0) +#endif + +/* Value copied from BLE_PERIODIC_ADV */ +#ifndef MYNEWT_VAL_BLE_LL_CFG_FEAT_LL_PERIODIC_ADV +#define MYNEWT_VAL_BLE_LL_CFG_FEAT_LL_PERIODIC_ADV (0) +#endif + +/* Value copied from BLE_MAX_PERIODIC_SYNCS */ +#ifndef MYNEWT_VAL_BLE_LL_CFG_FEAT_LL_PERIODIC_ADV_SYNC_CNT +#define MYNEWT_VAL_BLE_LL_CFG_FEAT_LL_PERIODIC_ADV_SYNC_CNT (0) +#endif + +/* Overridden by @apache-mynewt-nimble/targets/riot (defined by @apache-mynewt-nimble/nimble/controller) */ +#ifndef MYNEWT_VAL_BLE_LL_CFG_FEAT_LL_PRIVACY +#define MYNEWT_VAL_BLE_LL_CFG_FEAT_LL_PRIVACY (0) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_CFG_FEAT_SLAVE_INIT_FEAT_XCHG +#define MYNEWT_VAL_BLE_LL_CFG_FEAT_SLAVE_INIT_FEAT_XCHG (1) +#endif + +/* Overridden by @apache-mynewt-nimble/targets/riot (defined by @apache-mynewt-nimble/nimble/controller) */ +#ifndef MYNEWT_VAL_BLE_LL_CONN_INIT_MAX_TX_BYTES +#define MYNEWT_VAL_BLE_LL_CONN_INIT_MAX_TX_BYTES (MYNEWT_VAL_BLE_LL_MAX_PKT_SIZE) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_CONN_INIT_MIN_WIN_OFFSET +#define MYNEWT_VAL_BLE_LL_CONN_INIT_MIN_WIN_OFFSET (0) #endif -#ifndef MYNEWT_VAL_TARGET_riot -#define MYNEWT_VAL_TARGET_riot (1) +#ifndef MYNEWT_VAL_BLE_LL_CONN_INIT_SLOTS +#define MYNEWT_VAL_BLE_LL_CONN_INIT_SLOTS (4) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_DBG_HCI_CMD_PIN +#define MYNEWT_VAL_BLE_LL_DBG_HCI_CMD_PIN (-1) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_DBG_HCI_EV_PIN +#define MYNEWT_VAL_BLE_LL_DBG_HCI_EV_PIN (-1) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_DIRECT_TEST_MODE +#define MYNEWT_VAL_BLE_LL_DIRECT_TEST_MODE (0) +#endif + +/* Value copied from BLE_LL_DIRECT_TEST_MODE */ +#ifndef MYNEWT_VAL_BLE_LL_DTM +#define MYNEWT_VAL_BLE_LL_DTM (0) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_DTM_EXTENSIONS +#define MYNEWT_VAL_BLE_LL_DTM_EXTENSIONS (0) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_EXT_ADV_AUX_PTR_CNT +#define MYNEWT_VAL_BLE_LL_EXT_ADV_AUX_PTR_CNT (0) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_MASTER_SCA +#define MYNEWT_VAL_BLE_LL_MASTER_SCA (4) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_MAX_PKT_SIZE +#define MYNEWT_VAL_BLE_LL_MAX_PKT_SIZE (251) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_MFRG_ID +#define MYNEWT_VAL_BLE_LL_MFRG_ID (0xFFFF) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_NUM_COMP_PKT_ITVL_MS +#define MYNEWT_VAL_BLE_LL_NUM_COMP_PKT_ITVL_MS (2000) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_NUM_SCAN_DUP_ADVS +#define MYNEWT_VAL_BLE_LL_NUM_SCAN_DUP_ADVS (8) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_NUM_SCAN_RSP_ADVS +#define MYNEWT_VAL_BLE_LL_NUM_SCAN_RSP_ADVS (8) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_OUR_SCA +#define MYNEWT_VAL_BLE_LL_OUR_SCA (60) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_PRIO +#define MYNEWT_VAL_BLE_LL_PRIO (0) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_RESOLV_LIST_SIZE +#define MYNEWT_VAL_BLE_LL_RESOLV_LIST_SIZE (4) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_RNG_BUFSIZE +#define MYNEWT_VAL_BLE_LL_RNG_BUFSIZE (32) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_SCHED_AUX_CHAIN_MAFS_DELAY +#define MYNEWT_VAL_BLE_LL_SCHED_AUX_CHAIN_MAFS_DELAY (0) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_SCHED_AUX_MAFS_DELAY +#define MYNEWT_VAL_BLE_LL_SCHED_AUX_MAFS_DELAY (0) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_STRICT_CONN_SCHEDULING +#define MYNEWT_VAL_BLE_LL_STRICT_CONN_SCHEDULING (0) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_SUPP_MAX_RX_BYTES +#define MYNEWT_VAL_BLE_LL_SUPP_MAX_RX_BYTES (MYNEWT_VAL_BLE_LL_MAX_PKT_SIZE) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_SUPP_MAX_TX_BYTES +#define MYNEWT_VAL_BLE_LL_SUPP_MAX_TX_BYTES (MYNEWT_VAL_BLE_LL_MAX_PKT_SIZE) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_SYSINIT_STAGE +#define MYNEWT_VAL_BLE_LL_SYSINIT_STAGE (250) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_SYSVIEW +#define MYNEWT_VAL_BLE_LL_SYSVIEW (0) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_TX_PWR_DBM +#define MYNEWT_VAL_BLE_LL_TX_PWR_DBM (0) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_USECS_PER_PERIOD +#define MYNEWT_VAL_BLE_LL_USECS_PER_PERIOD (3250) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_VND_EVENT_ON_ASSERT +#define MYNEWT_VAL_BLE_LL_VND_EVENT_ON_ASSERT (0) +#endif + +#ifndef MYNEWT_VAL_BLE_LL_WHITELIST_SIZE +#define MYNEWT_VAL_BLE_LL_WHITELIST_SIZE (8) +#endif + +#ifndef MYNEWT_VAL_BLE_LP_CLOCK +#define MYNEWT_VAL_BLE_LP_CLOCK (1) +#endif + +#ifndef MYNEWT_VAL_BLE_NUM_COMP_PKT_RATE +#define MYNEWT_VAL_BLE_NUM_COMP_PKT_RATE ((2 * OS_TICKS_PER_SEC)) +#endif + +#ifndef MYNEWT_VAL_BLE_PUBLIC_DEV_ADDR +#define MYNEWT_VAL_BLE_PUBLIC_DEV_ADDR ((uint8_t[6]){0x00, 0x00, 0x00, 0x00, 0x00, 0x00}) +#endif + +/* Overridden by @apache-mynewt-core/hw/bsp/nordic_pca10056 (defined by @apache-mynewt-nimble/nimble/controller) */ +#ifndef MYNEWT_VAL_BLE_XTAL_SETTLE_TIME +#define MYNEWT_VAL_BLE_XTAL_SETTLE_TIME (1500) +#endif + +/*** @apache-mynewt-nimble/nimble/drivers/nrf52 */ +#ifndef MYNEWT_VAL_BLE_PHY_CODED_RX_IFS_EXTRA_MARGIN +#define MYNEWT_VAL_BLE_PHY_CODED_RX_IFS_EXTRA_MARGIN (0) +#endif + +#ifndef MYNEWT_VAL_BLE_PHY_DBG_TIME_ADDRESS_END_PIN +#define MYNEWT_VAL_BLE_PHY_DBG_TIME_ADDRESS_END_PIN (-1) +#endif + +#ifndef MYNEWT_VAL_BLE_PHY_DBG_TIME_TXRXEN_READY_PIN +#define MYNEWT_VAL_BLE_PHY_DBG_TIME_TXRXEN_READY_PIN (-1) +#endif + +#ifndef MYNEWT_VAL_BLE_PHY_DBG_TIME_WFR_PIN +#define MYNEWT_VAL_BLE_PHY_DBG_TIME_WFR_PIN (-1) +#endif + +#ifndef MYNEWT_VAL_BLE_PHY_NRF52840_ERRATA_164 +#define MYNEWT_VAL_BLE_PHY_NRF52840_ERRATA_164 (0) +#endif + +#ifndef MYNEWT_VAL_BLE_PHY_NRF52840_ERRATA_191 +#define MYNEWT_VAL_BLE_PHY_NRF52840_ERRATA_191 (1) +#endif + +#ifndef MYNEWT_VAL_BLE_PHY_SYSVIEW +#define MYNEWT_VAL_BLE_PHY_SYSVIEW (0) +#endif + +#ifndef MYNEWT_VAL_TIMER_5 +#define MYNEWT_VAL_TIMER_5 (1) #endif #endif diff --git a/src/libs/mynewt-nimble/porting/npl/freertos/src/npl_os_freertos.c b/src/libs/mynewt-nimble/porting/npl/freertos/src/npl_os_freertos.c index 87936bd8de33ad0259c5912ed05846b4effa7891..2bbcc598c2079381b8a6f3bd3cfe09574bf2fe48 100644 --- a/src/libs/mynewt-nimble/porting/npl/freertos/src/npl_os_freertos.c +++ b/src/libs/mynewt-nimble/porting/npl/freertos/src/npl_os_freertos.c @@ -20,6 +20,7 @@ #include <assert.h> #include <stddef.h> #include <string.h> +#include <sdk/components/libraries/log/nrf_log.h> #include "nimble/nimble_npl.h" static inline bool diff --git a/src/main.cpp b/src/main.cpp index 869e4246ac69b58d8908515d86f9a287bd1f37a0..41943892ce6bc45ac942f2b0c7ef9d9ce023cab3 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -201,6 +201,7 @@ nimble_port_freertos_init(BleHost); } void nimble_port_ll_task_func(void *args) { + extern void ble_ll_task(void *); ble_ll_task(args); } } diff --git a/src/sdk_config.h b/src/sdk_config.h index a63eb6fb0dc78708302bded89fb34b65d2f769fa..e83bde4b14d26d0a5b9f73d1b2a1d27aa64c844b 100644 --- a/src/sdk_config.h +++ b/src/sdk_config.h @@ -12817,7 +12817,7 @@ #endif // <o> SEGGER_RTT_CONFIG_MAX_NUM_UP_BUFFERS - Maximum number of upstream buffers. #ifndef SEGGER_RTT_CONFIG_MAX_NUM_UP_BUFFERS -#define SEGGER_RTT_CONFIG_MAX_NUM_UP_BUFFERS 2 +#define SEGGER_RTT_CONFIG_MAX_NUM_UP_BUFFERS 4 #endif // <o> SEGGER_RTT_CONFIG_BUFFER_SIZE_DOWN - Size of downstream buffer.