ble/net/link.h header reference
[Bluetooth Low Energy library module]
The source code of this header can be browsed online.
Description [link]
This handles a connection on low level. In particular, this layer handles cryptography if enabled. It also demuxes between L2CAP and LLCP.
This layer is expected to be bound on top of a physical layer (either Master or Slave).
The link layer handles throttling of data throughput, and may drop packets that are marked as unreliable is physical layer back-pressures too much.
In order to notify link layer of current radio conditions, Phsycial layer should periodically update its current packet queue status to link layer through a Link flow update task.
There is a generic implementation of this layer in the library that can be created through ble_link_create.
Members [link]
Types [link]
- enum ble_link_child_type_e
- struct ble_link_flow_update_s
- struct ble_link_param_s
- enum ble_link_task_type_e
Function [link]
- struct ble_link_flow_update_s * ble_link_flow_update_s_from_task(void *x)
Members detail [link]
#define BLE_NET_LINK_H_ [link]
This macro is declared in ble/net/link.h source file, line 21.
enum ble_link_child_type_e [link]
This enum is declared in ble/net/link.h source file, line 67.
Link-layer children types.
Identifier | Description |
---|---|
BLE_LINK_CHILD_LLCP | |
BLE_LINK_CHILD_L2CAP |
struct ble_link_flow_update_s [link]
This struct is declared in ble/net/link.h source file, line 93.
this struct is a network notification type that should be send by physical layers to attached link layer. It should carry type BLE_LINK_FLOW_UPDATE.
Field | Description |
---|---|
struct net_task_s task; | |
int32_t accepted_count; | Count of packets that may be accepted by physical layer from now on. This needs to be refreshed until more packets are accepted. |
struct ble_link_flow_update_s * ble_link_flow_update_s_from_task(void *x) [link]
This function is declared in ble/net/link.h source file, line 102.
struct ble_link_param_s [link]
This struct is declared in ble/net/link.h source file, line 83.
Field | Description |
---|---|
struct device_crypto_s * crypto; |
enum ble_link_task_type_e [link]
This enum is declared in ble/net/link.h source file, line 76.
Task types for link-layer tasks
Identifier | Description |
---|---|
BLE_LINK_FLOW_UPDATE | This task type should be assigned to struct ble_link_flow_update_s items. |