Bluetooth: Mesh: Export some transport layer helpers
These will soon be needed by the Friend code to compose messages. Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
This commit is contained in:
parent
ae714e4028
commit
ab84517b45
2 changed files with 6 additions and 6 deletions
|
@ -32,16 +32,12 @@
|
||||||
#include "transport.h"
|
#include "transport.h"
|
||||||
|
|
||||||
#define AID_MASK ((u8_t)(BIT_MASK(6)))
|
#define AID_MASK ((u8_t)(BIT_MASK(6)))
|
||||||
#define OP_MASK ((u8_t)(BIT_MASK(7)))
|
|
||||||
|
|
||||||
#define SEG(data) ((data)[0] >> 7)
|
#define SEG(data) ((data)[0] >> 7)
|
||||||
#define AKF(data) (((data)[0] >> 6) & 0x01)
|
#define AKF(data) (((data)[0] >> 6) & 0x01)
|
||||||
#define AID(data) ((data)[0] & AID_MASK)
|
#define AID(data) ((data)[0] & AID_MASK)
|
||||||
#define MIC_SIZE(data) (((data)[1] & 0x80) ? 8 : 4)
|
#define MIC_SIZE(data) (((data)[1] & 0x80) ? 8 : 4)
|
||||||
|
|
||||||
#define CTL_OP(data) ((data)[0] & OP_MASK)
|
|
||||||
#define CTL_HDR(op, seg) ((op & OP_MASK) | (seg << 7))
|
|
||||||
|
|
||||||
#define SZMIC(mic_len) (mic_len == 8 ? 1 : 0)
|
#define SZMIC(mic_len) (mic_len == 8 ? 1 : 0)
|
||||||
|
|
||||||
#define UNSEG_HDR(akf, aid) ((akf << 6) | (aid & AID_MASK))
|
#define UNSEG_HDR(akf, aid) ((akf << 6) | (aid & AID_MASK))
|
||||||
|
@ -660,7 +656,7 @@ static int trans_heartbeat(struct bt_mesh_net_rx *rx,
|
||||||
static int ctl_recv(struct bt_mesh_net_rx *rx, u8_t hdr,
|
static int ctl_recv(struct bt_mesh_net_rx *rx, u8_t hdr,
|
||||||
struct net_buf_simple *buf)
|
struct net_buf_simple *buf)
|
||||||
{
|
{
|
||||||
u8_t ctl_op = CTL_OP(&hdr);
|
u8_t ctl_op = TRANS_CTL_OP(&hdr);
|
||||||
|
|
||||||
BT_DBG("OpCode 0x%02x len %u", ctl_op, buf->len);
|
BT_DBG("OpCode 0x%02x len %u", ctl_op, buf->len);
|
||||||
|
|
||||||
|
@ -762,7 +758,7 @@ int bt_mesh_ctl_send(struct bt_mesh_net_tx *tx, u8_t ctl_op, void *data,
|
||||||
|
|
||||||
net_buf_reserve(buf, BT_MESH_NET_HDR_LEN);
|
net_buf_reserve(buf, BT_MESH_NET_HDR_LEN);
|
||||||
|
|
||||||
net_buf_add_u8(buf, CTL_HDR(ctl_op, 0));
|
net_buf_add_u8(buf, TRANS_CTL_HDR(ctl_op, 0));
|
||||||
|
|
||||||
net_buf_add_mem(buf, data, data_len);
|
net_buf_add_mem(buf, data, data_len);
|
||||||
|
|
||||||
|
|
|
@ -9,6 +9,10 @@
|
||||||
#define BT_MESH_TX_SEG_COUNT (CONFIG_BT_MESH_ADV_BUF_COUNT - 3)
|
#define BT_MESH_TX_SEG_COUNT (CONFIG_BT_MESH_ADV_BUF_COUNT - 3)
|
||||||
#define BT_MESH_TX_SDU_MAX (BT_MESH_TX_SEG_COUNT * 12)
|
#define BT_MESH_TX_SDU_MAX (BT_MESH_TX_SEG_COUNT * 12)
|
||||||
|
|
||||||
|
#define TRANS_CTL_OP_MASK ((u8_t)BIT_MASK(7))
|
||||||
|
#define TRANS_CTL_OP(data) ((data)[0] & TRANS_CTL_OP_MASK)
|
||||||
|
#define TRANS_CTL_HDR(op, seg) ((op & TRANS_CTL_OP_MASK) | (seg << 7))
|
||||||
|
|
||||||
#define TRANS_CTL_OP_ACK 0x00
|
#define TRANS_CTL_OP_ACK 0x00
|
||||||
#define TRANS_CTL_OP_FRIEND_POLL 0x01
|
#define TRANS_CTL_OP_FRIEND_POLL 0x01
|
||||||
#define TRANS_CTL_OP_FRIEND_UPDATE 0x02
|
#define TRANS_CTL_OP_FRIEND_UPDATE 0x02
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue