Commit Graph

310 Commits

Author SHA1 Message Date
Deomid "rojer" Ryabkov 064f050919 porting/npl/linux: PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP is a GNU extension
Need to provide `__USE_GNU` hint to pthread.h
2023-07-20 21:57:23 +02:00
Szymon Janc fd20c10596 porting/npl: Fix linux tests build
For now build with -m32 flag.
2023-07-20 21:56:27 +02:00
Szymon Janc 9bf905ffd5 porting/npl: Fix linux tests makefile clean target
clean target was failing if there was incomplete build.
2023-07-20 21:56:27 +02:00
Deomid "rojer" Ryabkov 188256f1ef porting/npl/linux: Replace pthread_yield() with sched_yield()
Per `pthread_yield(3)`:
```
  This call is nonstandard, but present on several other systems.
  Use the standardized sched_yield(2) instead.
```
2023-07-20 18:47:20 +02:00
Deomid "rojer" Ryabkov 18738b2743 if MYNEWT -> ifdef MYNEWT
Currently there's a mix of `#if MYNEWT` and `#ifdef MYNEWT` used
in the codebase to check if the environment is Mynewt or not.
This is incompatible with `-Wundef`, so switch common parts of the code to
uniformly use `#ifdef`.
2023-07-20 15:15:07 +02:00
Mingjie Shen cc556e97f4 porting: Add missing return statement 2023-07-19 13:54:20 +02:00
Mingjie Shen 28649933ad porting/examples: Fix implicit function declaration 2023-07-19 13:53:55 +02:00
Petro Karashchenko 62cfff4840 porting/npl/nuttx: add support for thread names
Use pthread_setname_np() to set names for created tasks

Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2023-07-08 22:08:07 +02:00
Petro Karashchenko a0f74cd181 porting/examples/nuttx: align parameters passed to ble_npl_task_init()
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2023-07-08 22:08:07 +02:00
Bas van den Berg 333c575bbf build: fix various compile warnings
mostly comparison signed vs unsigned and possible un-initialized usage
2023-04-17 13:13:02 +02:00
raiden00pl 88758a8107 porting/nuttx/example: perform initialization if not done by NSH
For example, when Nimble NuttX example is the entry point for users applications.
2023-03-14 01:17:11 +01:00
Szymon Janc 17a8e61fde porting: Remove unused SYSINIT_PANIC_MSG
Those are no longer used.
2023-02-21 17:12:42 +01:00
Xiang Xiao e0e9629afe porting/nuttx; Fix error: unrecognized command-line option '-m32'
-m32 is supported by x64 toolchain, not arm-none-eabi-gcc

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-02-21 12:12:26 +01:00
Szymon Janc efb9058a42 nimble/ll: Add option to control initial DLE update
New option allows to select if controller should initiate DLE update
automatically for connection. By default it is enabled to not change
existing controller behavior.
2023-02-10 14:49:51 +01:00
Xiang Xiao 69c0d323a9 porting: Fix SYSINIT_PANIC_ASSERT_MSG refinition warning
porting/npl/nuttx/include/nimble/nimble_npl_os.h:40: warning: "SYSINIT_PANIC_ASSERT_MSG" redefined
   40 | #define SYSINIT_PANIC_ASSERT_MSG(rc, msg) do \
      |
nimble/host/services/tps/src/ble_svc_tps.c:22:
porting/nimble/include/sysinit/sysinit.h:32: note: this is the location of the previous definition
   32 | #define SYSINIT_PANIC_ASSERT_MSG(rc, msg)   assert(rc)
      |

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-02-08 16:12:16 +01:00
Szymon Janc 674eeafa0b nimble/ports: Refresh syscfg 2023-02-07 08:37:18 +01:00
Xiang Xiao ed083b36cb porting/nuttx: Fix error: implicit declaration of function 'usleep'
Report here:
https://github.com/apache/nuttx/actions/runs/4098214664/jobs/7067171681

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-02-06 08:44:58 +01:00
Szymon Janc 33942430e3 nimble/ports: Refresh syscfg 2023-02-02 20:04:35 +01:00
Szymon Janc 58a71bad16 portling/linux: Fix build on latest Fedora
This leads to implicit include of unistd.h which provides link symbol
that collide with mesh internal symbols. If needed c files may include
it directly.
2022-12-13 00:21:58 +01:00
Szymon Janc 2587fbfd8b nimble/mesh: Fix build on linux
Use MIN/MAX macros instead of min/max.
2022-12-13 00:21:58 +01:00
Szymon Janc eddc008fa5 porting/examples: Fix build error on linux
Since 'using namespace std' was removed from public header it is
needed to explicitly use it when using std::list
2022-12-13 00:21:58 +01:00
timoxd7 cea78d32c2 Fixed min/max formatting 2022-11-22 10:07:45 +01:00
timoxd7 32f2ab3ab6 Moved min/max macros from global scope in header file to translation unit exlusice c files 2022-11-22 10:07:45 +01:00
timoxd7 639da1a0f3 Removed 'using namespace std;' from header file 2022-11-22 10:07:45 +01:00
Rahul Tank 18203ccafc nimble/host: Add HCI Commands/ events for connection subrating 2022-10-05 16:09:52 +02:00
Szymon Janc b21575c894 nimble/ports: Refresh syscfg 2022-10-03 15:22:29 +02:00
Hang Fan d21a386e96 porting/examples: Fix build error
Add default macro of MYNEWT_VAL_BLE_L2CAP_COC_SDU_BUFF_COUNT
to avoid build error.
2022-09-27 08:32:45 +02:00
Szymon Janc 60b51b0b80 nimble/ports: Refresh syscfg 2022-09-08 11:58:53 +02:00
larry a77acc4250 porting/npl/nuttx: fix callout_handler implement
callout_thread is working for all timeout callout, it need
an endless loop to catch all message.
2022-08-04 09:01:51 +02:00
Krzysztof Kopyściński acaa9351b1 nimble/host/sm: rename BLE_SM_SC_LVL to BLE_SM_LVL
This rename makes it consistent with Core specification Vol. 3,
part C, 10.2.1 LE security mode 1. This level specifies security
requirements for both SC and legacy pairing, not only SC.
Updated description of this setting.
2022-06-29 13:53:36 +02:00
Hauke Petersen 49001982f2 porting/os_mbuf: silence Wcast-align warnings 2022-06-02 10:10:26 +02:00
Hauke Petersen 510dc550ed porting: fix transport init in nimble_port.c 2022-06-02 10:10:26 +02:00
Hauke Petersen 0806f83867 npl/hal: import hal_system.h 2022-06-02 10:10:26 +02:00
Bas van den Berg ef33a29592 port: remove unimplemented function 2022-05-18 10:17:48 +02:00
Szymon Janc 2a7135469e Update missing licenses and rat excludes 2022-04-20 09:36:26 +02:00
Rahul Tank 7ee72efb48 nimble/host: Add HCI commands / events for LE Power control 2022-04-19 10:32:31 +02:00
Andrzej Kaczmarek 8272e8baba porting: Fix dummy build
Dummy transport is no longer needed, use socket transport instead.
2022-03-24 18:27:11 +01:00
Andrzej Kaczmarek fd62bd71f9 porting: Update for new HCI transport
Adds required files to build, updates Linux sample app and also
regenerate syscfg.h.
2022-03-17 11:48:16 +01:00
Szymon Janc 4ac4eeca3a nimble/ports: Refresh syscfg 2022-02-09 09:54:31 +01:00
Szymon Janc a1e03722ae nimble/porting: Fix ports targets
Those are used to generate configurations for port so make sure all
MYNEWT_VAL are properly included.
2022-02-09 09:54:31 +01:00
Szymon Janc 3a6ab21ad4 nimble/ports: Refresh syscfg 2021-12-30 12:50:20 +01:00
Szymon Janc 605ade16f7 nimble/ports: Use native BSP for test targets
Dummy BSP could be getting out of sync with Mynewt BSP leading to
compile errors.
2021-12-30 12:50:20 +01:00
Szymon Janc f771348a4e ports: Build NimBLE with 32-bit environment
Some code in NimBLE assumes that pointers are 4 bytes. Until this
is properly fixed build with -m32 to make sure resulting binary
is no misbehaving.
2021-12-23 14:47:43 +01:00
Szymon Janc 6b40986a1f porting: Allow to build with -Wcast-align
It is expected that mbuf structures are properly aligned so we
can just cast to void pointer here and silence warning.
2021-12-07 13:52:10 +01:00
Krzysztof Kopyściński bc142016bd host/mesh: fix loopback in net
net_buf structure in Zephyr has field user_data, which was wrongly
ported as os_mbuf->om_data. To stick with porting net_buf as os_mbuf
we can base on old Zephyr's implementation, which was changed in commit
dd09cbc1c455ab1e067b53f46bee7b6d50689bbc. Before it, user_data was part
of data buffer of net_buf. We can implement this the same way, so
data_buf is last N octets of os_mbuf->om_data.

Accomodate mbuf allocation and freeing to NimBLE.
2021-12-02 07:40:45 +01:00
Andrzej Kaczmarek f1d2cbd8d3 porting/riot: Refresh syscfg 2021-11-30 11:29:09 +01:00
Krzysztof Kopyściński 5cc57dee07 porting: fix blemesh build after mesh sync 2021-11-10 06:24:00 +01:00
Krzysztof Kopyściński 7914dbd984 porting/blemesh: add missing defs
Added defs included in Mesh sync
2021-11-10 06:24:00 +01:00
Krzysztof Kopyściński 04d723ed05 host/mesh: define Low Latency mode for non-NimBLE controller
This fixes build for porting
2021-11-10 06:24:00 +01:00
Krzysztof Kopyściński 2dad0b9f2f host/mesh: Check the CID field before opcode compare
Bluetooth Mesh Vendor model hava company id field.

Accordin MeshPRFV1.0.1 3.7.3.1 Operation codes.

The 3-octet opcodes are used for manufacturer-specific opcodes.
The company identifiers are 16-bit values defined by the
Bluetooth SIG and are coded into the second and third octets of
the 3-octet opcodes.

Therefore, we can speed up the search process by checking whether
CID fields match, rather than comparing opcodes one by one.

This is port of cc0abee3db739413f2498d465386ab5a8bf7c1eb
2021-11-10 06:24:00 +01:00