Author: JF <jf@codingfield.com>
Merge branch 'nimble_1_3_0' into develop
%!v(PANIC=String method: strings: negative Repeat count)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 9f43c782b11cf5006d1054cd9777d3d122954aff..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 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/SystemTask/SystemTask.cpp b/src/SystemTask/SystemTask.cpp index 61b3c6383c9c905a0851c6dfe7a9e3b50a7a5aaa..df08c07f56b8257f3fee8f1575673d09c2093d4b 100644 --- a/src/SystemTask/SystemTask.cpp +++ b/src/SystemTask/SystemTask.cpp @@ -48,8 +48,8 @@ app->Work(); } void SystemTask::Work() { - watchdog.Setup(7); - watchdog.Start(); + //watchdog.Setup(7); + //watchdog.Start(); NRF_LOG_INFO("Last reset reason : %s", Pinetime::Drivers::Watchdog::ResetReasonToString(watchdog.ResetReason())); APP_GPIOTE_INIT(2); 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 @@ - <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(¶ms, 1); /* L2CAP - Local unsupported; L2CAP timeout. */ ble_gap_test_util_update_l2cap_tmo(¶ms, 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.
7
2