mirror of
https://github.com/espressif/esp-nimble.git
synced 2026-09-07 01:30:05 +00:00
btshell and blestress: update l2cap coc rx buffers
Updated apps to support setting the RX SDU buffers number.
This commit is contained in:
committed by
Szymon Janc
parent
d3dc966fc7
commit
154bdd46ac
@@ -167,11 +167,13 @@ stress_l2cap_coc_accept(uint16_t peer_mtu, struct ble_l2cap_chan *chan)
|
|||||||
console_printf("LE CoC accepting, chan: 0x%08lx, peer_mtu %d\n",
|
console_printf("LE CoC accepting, chan: 0x%08lx, peer_mtu %d\n",
|
||||||
(uint32_t) chan, peer_mtu);
|
(uint32_t) chan, peer_mtu);
|
||||||
|
|
||||||
sdu_rx = os_msys_get_pkthdr(STRESS_COC_MTU, 0);
|
for (int i = 0; i < MYNEWT_VAL(BLE_L2CAP_COC_SDU_BUFF_COUNT); i++) {
|
||||||
assert(sdu_rx != NULL);
|
sdu_rx = os_msys_get_pkthdr(STRESS_COC_MTU, 0);
|
||||||
|
assert(sdu_rx != NULL);
|
||||||
|
|
||||||
rc = ble_l2cap_recv_ready(chan, sdu_rx);
|
rc = ble_l2cap_recv_ready(chan, sdu_rx);
|
||||||
assert(rc == 0);
|
assert(rc == 0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|||||||
@@ -67,6 +67,9 @@ syscfg.vals:
|
|||||||
#
|
#
|
||||||
BLE_L2CAP_COC_MAX_NUM: 2
|
BLE_L2CAP_COC_MAX_NUM: 2
|
||||||
|
|
||||||
|
# L2CAP COC SDU buffers in RX endpoint
|
||||||
|
BLE_L2CAP_COC_SDU_BUFF_COUNT: 1
|
||||||
|
|
||||||
# Enable 2M PHY
|
# Enable 2M PHY
|
||||||
BLE_LL_CFG_FEAT_LE_2M_PHY: 1
|
BLE_LL_CFG_FEAT_LE_2M_PHY: 1
|
||||||
|
|
||||||
|
|||||||
+11
-5
@@ -2224,19 +2224,25 @@ btshell_l2cap_coc_recv(struct ble_l2cap_chan *chan, struct os_mbuf *sdu)
|
|||||||
|
|
||||||
static int
|
static int
|
||||||
btshell_l2cap_coc_accept(uint16_t conn_handle, uint16_t peer_mtu,
|
btshell_l2cap_coc_accept(uint16_t conn_handle, uint16_t peer_mtu,
|
||||||
struct ble_l2cap_chan *chan)
|
struct ble_l2cap_chan *chan)
|
||||||
{
|
{
|
||||||
struct os_mbuf *sdu_rx;
|
struct os_mbuf *sdu_rx;
|
||||||
|
int rc;
|
||||||
|
|
||||||
console_printf("LE CoC accepting, chan: 0x%08lx, peer_mtu %d\n",
|
console_printf("LE CoC accepting, chan: 0x%08lx, peer_mtu %d\n",
|
||||||
(uint32_t) chan, peer_mtu);
|
(uint32_t) chan, peer_mtu);
|
||||||
|
|
||||||
sdu_rx = os_mbuf_get_pkthdr(&sdu_os_mbuf_pool, 0);
|
for (int i = 0; i < MYNEWT_VAL(BLE_L2CAP_COC_SDU_BUFF_COUNT); i++) {
|
||||||
if (!sdu_rx) {
|
sdu_rx = os_mbuf_get_pkthdr(&sdu_os_mbuf_pool, 0);
|
||||||
return BLE_HS_ENOMEM;
|
if (!sdu_rx) {
|
||||||
|
return BLE_HS_ENOMEM;
|
||||||
|
}
|
||||||
|
|
||||||
|
rc = ble_l2cap_recv_ready(chan, sdu_rx);
|
||||||
|
assert(rc == 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
return ble_l2cap_recv_ready(chan, sdu_rx);
|
return rc;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|||||||
@@ -41,5 +41,8 @@ syscfg.vals:
|
|||||||
# Whether to save data to sys/config, or just keep it in RAM.
|
# Whether to save data to sys/config, or just keep it in RAM.
|
||||||
BLE_STORE_CONFIG_PERSIST: 0
|
BLE_STORE_CONFIG_PERSIST: 0
|
||||||
|
|
||||||
|
# L2CAP COC SDU buffers in RX endpoint
|
||||||
|
BLE_L2CAP_COC_SDU_BUFF_COUNT: 1
|
||||||
|
|
||||||
syscfg.vals.BLE_MESH:
|
syscfg.vals.BLE_MESH:
|
||||||
MSYS_1_BLOCK_COUNT: 16
|
MSYS_1_BLOCK_COUNT: 16
|
||||||
|
|||||||
Reference in New Issue
Block a user