net: lwm2m: split out lwm2m context initialization
Create an internal function lwm2m_engine_context_init() which sets the extra packet pools and initializes retransmit work internal to the LwM2M engine. This function will be used by firmware pull support which establishes a new LwM2M context for downloading firmware. Signed-off-by: Michael Scott <michael.scott@linaro.org>
This commit is contained in:
parent
f630857e69
commit
788c013d5b
2 changed files with 14 additions and 6 deletions
|
@ -2932,6 +2932,16 @@ int lwm2m_engine_set_net_pkt_pool(struct lwm2m_ctx *ctx,
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_NET_CONTEXT_NET_PKT_POOL */
|
#endif /* CONFIG_NET_CONTEXT_NET_PKT_POOL */
|
||||||
|
|
||||||
|
void lwm2m_engine_context_init(struct lwm2m_ctx *client_ctx)
|
||||||
|
{
|
||||||
|
k_delayed_work_init(&client_ctx->retransmit_work, retransmit_request);
|
||||||
|
|
||||||
|
#if defined(CONFIG_NET_CONTEXT_NET_PKT_POOL)
|
||||||
|
net_app_set_net_pkt_pool(&client_ctx->net_app_ctx,
|
||||||
|
client_ctx->tx_slab, client_ctx->data_pool);
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
int lwm2m_engine_start(struct lwm2m_ctx *client_ctx,
|
int lwm2m_engine_start(struct lwm2m_ctx *client_ctx,
|
||||||
char *peer_str, u16_t peer_port)
|
char *peer_str, u16_t peer_port)
|
||||||
{
|
{
|
||||||
|
@ -2949,12 +2959,7 @@ int lwm2m_engine_start(struct lwm2m_ctx *client_ctx,
|
||||||
goto error_start;
|
goto error_start;
|
||||||
}
|
}
|
||||||
|
|
||||||
k_delayed_work_init(&client_ctx->retransmit_work, retransmit_request);
|
lwm2m_engine_context_init(client_ctx);
|
||||||
|
|
||||||
#if defined(CONFIG_NET_CONTEXT_NET_PKT_POOL)
|
|
||||||
net_app_set_net_pkt_pool(&client_ctx->net_app_ctx,
|
|
||||||
client_ctx->tx_slab, client_ctx->data_pool);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* set net_app callbacks */
|
/* set net_app callbacks */
|
||||||
ret = net_app_set_cb(&client_ctx->net_app_ctx,
|
ret = net_app_set_cb(&client_ctx->net_app_ctx,
|
||||||
|
|
|
@ -85,6 +85,9 @@ int lwm2m_get_or_create_engine_obj(struct lwm2m_engine_context *context,
|
||||||
struct lwm2m_engine_obj_inst **obj_inst,
|
struct lwm2m_engine_obj_inst **obj_inst,
|
||||||
u8_t *created);
|
u8_t *created);
|
||||||
|
|
||||||
|
/* LwM2M context functions */
|
||||||
|
void lwm2m_engine_context_init(struct lwm2m_ctx *client_ctx);
|
||||||
|
|
||||||
/* LwM2M message functions */
|
/* LwM2M message functions */
|
||||||
struct lwm2m_message *lwm2m_get_message(struct lwm2m_ctx *client_ctx);
|
struct lwm2m_message *lwm2m_get_message(struct lwm2m_ctx *client_ctx);
|
||||||
void lwm2m_release_message(struct lwm2m_message *msg);
|
void lwm2m_release_message(struct lwm2m_message *msg);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue