drivers: modem: rote conversion of k_work API
Replace all existing deprecated API with the recommended alternative. Be aware that this does not address architectural errors in the use of the work API. Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no> Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
This commit is contained in:
parent
9fcd75160e
commit
cc090726e6
5 changed files with 52 additions and 58 deletions
|
@ -51,7 +51,7 @@ static struct gsm_modem {
|
||||||
struct k_sem sem_response;
|
struct k_sem sem_response;
|
||||||
|
|
||||||
struct modem_iface_uart_data gsm_data;
|
struct modem_iface_uart_data gsm_data;
|
||||||
struct k_delayed_work gsm_configure_work;
|
struct k_work_delayable gsm_configure_work;
|
||||||
char gsm_rx_rb_buf[PPP_MRU * 3];
|
char gsm_rx_rb_buf[PPP_MRU * 3];
|
||||||
|
|
||||||
uint8_t *ppp_recv_buf;
|
uint8_t *ppp_recv_buf;
|
||||||
|
@ -368,8 +368,8 @@ static void gsm_finalize_connection(struct gsm_modem *gsm)
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
LOG_ERR("modem setup returned %d, %s",
|
LOG_ERR("modem setup returned %d, %s",
|
||||||
ret, "retrying...");
|
ret, "retrying...");
|
||||||
(void)k_delayed_work_submit(&gsm->gsm_configure_work,
|
(void)k_work_reschedule(&gsm->gsm_configure_work,
|
||||||
K_SECONDS(1));
|
K_SECONDS(1));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -395,8 +395,7 @@ static void gsm_finalize_connection(struct gsm_modem *gsm)
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
LOG_DBG("modem setup returned %d, %s",
|
LOG_DBG("modem setup returned %d, %s",
|
||||||
ret, "retrying...");
|
ret, "retrying...");
|
||||||
(void)k_delayed_work_submit(&gsm->gsm_configure_work,
|
(void)k_work_reschedule(&gsm->gsm_configure_work, K_SECONDS(1));
|
||||||
K_SECONDS(1));
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -422,8 +421,9 @@ attaching:
|
||||||
}
|
}
|
||||||
|
|
||||||
LOG_DBG("Not attached, %s", "retrying...");
|
LOG_DBG("Not attached, %s", "retrying...");
|
||||||
(void)k_delayed_work_submit(&gsm->gsm_configure_work,
|
|
||||||
K_MSEC(GSM_ATTACH_RETRY_DELAY_MSEC));
|
(void)k_work_reschedule(&gsm->gsm_configure_work,
|
||||||
|
K_MSEC(GSM_ATTACH_RETRY_DELAY_MSEC));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -441,8 +441,7 @@ attaching:
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
LOG_DBG("modem setup returned %d, %s",
|
LOG_DBG("modem setup returned %d, %s",
|
||||||
ret, "retrying...");
|
ret, "retrying...");
|
||||||
(void)k_delayed_work_submit(&gsm->gsm_configure_work,
|
(void)k_work_reschedule(&gsm->gsm_configure_work, K_SECONDS(1));
|
||||||
K_SECONDS(1));
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -523,7 +522,7 @@ static int mux_enable(struct gsm_modem *gsm)
|
||||||
|
|
||||||
static void mux_setup_next(struct gsm_modem *gsm)
|
static void mux_setup_next(struct gsm_modem *gsm)
|
||||||
{
|
{
|
||||||
(void)k_delayed_work_submit(&gsm->gsm_configure_work, K_MSEC(1));
|
(void)k_work_reschedule(&gsm->gsm_configure_work, K_MSEC(1));
|
||||||
}
|
}
|
||||||
|
|
||||||
static void mux_attach_cb(const struct device *mux, int dlci_address,
|
static void mux_attach_cb(const struct device *mux, int dlci_address,
|
||||||
|
@ -674,8 +673,7 @@ static void gsm_configure(struct k_work *work)
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
LOG_DBG("modem not ready %d", ret);
|
LOG_DBG("modem not ready %d", ret);
|
||||||
|
|
||||||
(void)k_delayed_work_submit(&gsm->gsm_configure_work,
|
(void)k_work_reschedule(&gsm->gsm_configure_work, K_NO_WAIT);
|
||||||
K_NO_WAIT);
|
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -689,8 +687,8 @@ static void gsm_configure(struct k_work *work)
|
||||||
gsm->mux_enabled = true;
|
gsm->mux_enabled = true;
|
||||||
} else {
|
} else {
|
||||||
gsm->mux_enabled = false;
|
gsm->mux_enabled = false;
|
||||||
(void)k_delayed_work_submit(&gsm->gsm_configure_work,
|
(void)k_work_reschedule(&gsm->gsm_configure_work,
|
||||||
K_NO_WAIT);
|
K_NO_WAIT);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -700,11 +698,11 @@ static void gsm_configure(struct k_work *work)
|
||||||
if (gsm->mux_enabled) {
|
if (gsm->mux_enabled) {
|
||||||
gsm->state = STATE_INIT;
|
gsm->state = STATE_INIT;
|
||||||
|
|
||||||
k_delayed_work_init(&gsm->gsm_configure_work,
|
k_work_init_delayable(&gsm->gsm_configure_work,
|
||||||
mux_setup);
|
mux_setup);
|
||||||
|
|
||||||
(void)k_delayed_work_submit(&gsm->gsm_configure_work,
|
(void)k_work_reschedule(&gsm->gsm_configure_work,
|
||||||
K_NO_WAIT);
|
K_NO_WAIT);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -724,8 +722,8 @@ void gsm_ppp_start(const struct device *dev)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
k_delayed_work_init(&gsm->gsm_configure_work, gsm_configure);
|
k_work_init_delayable(&gsm->gsm_configure_work, gsm_configure);
|
||||||
(void)k_delayed_work_submit(&gsm->gsm_configure_work, K_NO_WAIT);
|
(void)k_work_reschedule(&gsm->gsm_configure_work, K_NO_WAIT);
|
||||||
}
|
}
|
||||||
|
|
||||||
void gsm_ppp_stop(const struct device *dev)
|
void gsm_ppp_stop(const struct device *dev)
|
||||||
|
|
|
@ -896,9 +896,9 @@ static void modem_rssi_query_work(struct k_work *work)
|
||||||
|
|
||||||
/* Re-start RSSI query work */
|
/* Re-start RSSI query work */
|
||||||
if (work) {
|
if (work) {
|
||||||
k_delayed_work_submit_to_queue(&modem_workq,
|
k_work_reschedule_for_queue(&modem_workq,
|
||||||
&mdata.rssi_query_work,
|
&mdata.rssi_query_work,
|
||||||
K_SECONDS(RSSI_TIMEOUT_SECS));
|
K_SECONDS(RSSI_TIMEOUT_SECS));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1019,7 +1019,7 @@ restart:
|
||||||
counter = 0;
|
counter = 0;
|
||||||
|
|
||||||
/* stop RSSI delay work */
|
/* stop RSSI delay work */
|
||||||
k_delayed_work_cancel(&mdata.rssi_query_work);
|
k_work_cancel_delayable(&mdata.rssi_query_work);
|
||||||
|
|
||||||
/* Let the modem respond. */
|
/* Let the modem respond. */
|
||||||
LOG_INF("Waiting for modem to respond");
|
LOG_INF("Waiting for modem to respond");
|
||||||
|
@ -1068,9 +1068,8 @@ restart_rssi:
|
||||||
|
|
||||||
/* Network is ready - Start RSSI work in the background. */
|
/* Network is ready - Start RSSI work in the background. */
|
||||||
LOG_INF("Network is ready.");
|
LOG_INF("Network is ready.");
|
||||||
k_delayed_work_submit_to_queue(&modem_workq,
|
k_work_reschedule_for_queue(&modem_workq, &mdata.rssi_query_work,
|
||||||
&mdata.rssi_query_work,
|
K_SECONDS(RSSI_TIMEOUT_SECS));
|
||||||
K_SECONDS(RSSI_TIMEOUT_SECS));
|
|
||||||
|
|
||||||
/* Once the network is ready, we try to activate the PDP context. */
|
/* Once the network is ready, we try to activate the PDP context. */
|
||||||
ret = modem_pdp_context_activate();
|
ret = modem_pdp_context_activate();
|
||||||
|
@ -1145,9 +1144,9 @@ static int modem_init(const struct device *dev)
|
||||||
k_sem_init(&mdata.sem_response, 0, 1);
|
k_sem_init(&mdata.sem_response, 0, 1);
|
||||||
k_sem_init(&mdata.sem_tx_ready, 0, 1);
|
k_sem_init(&mdata.sem_tx_ready, 0, 1);
|
||||||
k_sem_init(&mdata.sem_sock_conn, 0, 1);
|
k_sem_init(&mdata.sem_sock_conn, 0, 1);
|
||||||
k_work_q_start(&modem_workq, modem_workq_stack,
|
k_work_queue_start(&modem_workq, modem_workq_stack,
|
||||||
K_KERNEL_STACK_SIZEOF(modem_workq_stack),
|
K_KERNEL_STACK_SIZEOF(modem_workq_stack),
|
||||||
K_PRIO_COOP(7));
|
K_PRIO_COOP(7), NULL);
|
||||||
|
|
||||||
/* socket config */
|
/* socket config */
|
||||||
mdata.socket_config.sockets = &mdata.sockets[0];
|
mdata.socket_config.sockets = &mdata.sockets[0];
|
||||||
|
@ -1210,7 +1209,7 @@ static int modem_init(const struct device *dev)
|
||||||
NULL, NULL, NULL, K_PRIO_COOP(7), 0, K_NO_WAIT);
|
NULL, NULL, NULL, K_PRIO_COOP(7), 0, K_NO_WAIT);
|
||||||
|
|
||||||
/* Init RSSI query */
|
/* Init RSSI query */
|
||||||
k_delayed_work_init(&mdata.rssi_query_work, modem_rssi_query_work);
|
k_work_init_delayable(&mdata.rssi_query_work, modem_rssi_query_work);
|
||||||
return modem_setup();
|
return modem_setup();
|
||||||
|
|
||||||
error:
|
error:
|
||||||
|
|
|
@ -89,7 +89,7 @@ struct modem_data {
|
||||||
struct modem_socket sockets[MDM_MAX_SOCKETS];
|
struct modem_socket sockets[MDM_MAX_SOCKETS];
|
||||||
|
|
||||||
/* RSSI work */
|
/* RSSI work */
|
||||||
struct k_delayed_work rssi_query_work;
|
struct k_work_delayable rssi_query_work;
|
||||||
|
|
||||||
/* modem data */
|
/* modem data */
|
||||||
char mdm_manufacturer[MDM_MANUFACTURER_LENGTH];
|
char mdm_manufacturer[MDM_MANUFACTURER_LENGTH];
|
||||||
|
|
|
@ -141,7 +141,7 @@ struct modem_data {
|
||||||
|
|
||||||
#if defined(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK)
|
#if defined(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK)
|
||||||
/* RSSI work */
|
/* RSSI work */
|
||||||
struct k_delayed_work rssi_query_work;
|
struct k_work_delayable rssi_query_work;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* modem data */
|
/* modem data */
|
||||||
|
@ -924,8 +924,8 @@ static void modem_rssi_query_work(struct k_work *work)
|
||||||
#if defined(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK)
|
#if defined(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK)
|
||||||
/* re-start RSSI query work */
|
/* re-start RSSI query work */
|
||||||
if (work) {
|
if (work) {
|
||||||
k_delayed_work_submit_to_queue(&modem_workq,
|
k_work_reschedule_for_queue(
|
||||||
&mdata.rssi_query_work,
|
&modem_workq, &mdata.rssi_query_work,
|
||||||
K_SECONDS(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK_PERIOD));
|
K_SECONDS(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK_PERIOD));
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@ -954,9 +954,9 @@ static void modem_rssi_query_work(struct k_work *work)
|
||||||
#if defined(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK)
|
#if defined(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK)
|
||||||
/* re-start RSSI query work */
|
/* re-start RSSI query work */
|
||||||
if (work) {
|
if (work) {
|
||||||
k_delayed_work_submit_to_queue(&modem_workq,
|
k_work_reschedule_for_queue(
|
||||||
&mdata.rssi_query_work,
|
&modem_workq, &mdata.rssi_query_work,
|
||||||
K_SECONDS(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK_PERIOD));
|
K_SECONDS(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK_PERIOD));
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
@ -1039,7 +1039,7 @@ restart:
|
||||||
|
|
||||||
#if defined(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK)
|
#if defined(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK)
|
||||||
/* stop RSSI delay work */
|
/* stop RSSI delay work */
|
||||||
k_delayed_work_cancel(&mdata.rssi_query_work);
|
k_work_cancel_delayable(&mdata.rssi_query_work);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
pin_init();
|
pin_init();
|
||||||
|
@ -1208,9 +1208,9 @@ restart:
|
||||||
|
|
||||||
#if defined(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK)
|
#if defined(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK)
|
||||||
/* start RSSI query */
|
/* start RSSI query */
|
||||||
k_delayed_work_submit_to_queue(&modem_workq,
|
k_work_reschedule_for_queue(
|
||||||
&mdata.rssi_query_work,
|
&modem_workq, &mdata.rssi_query_work,
|
||||||
K_SECONDS(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK_PERIOD));
|
K_SECONDS(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK_PERIOD));
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
error:
|
error:
|
||||||
|
@ -1839,10 +1839,9 @@ static int modem_init(const struct device *dev)
|
||||||
|
|
||||||
#if defined(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK)
|
#if defined(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK)
|
||||||
/* initialize the work queue */
|
/* initialize the work queue */
|
||||||
k_work_q_start(&modem_workq,
|
k_work_queue_start(&modem_workq, modem_workq_stack,
|
||||||
modem_workq_stack,
|
K_KERNEL_STACK_SIZEOF(modem_workq_stack),
|
||||||
K_KERNEL_STACK_SIZEOF(modem_workq_stack),
|
K_PRIO_COOP(7), NULL);
|
||||||
K_PRIO_COOP(7));
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* socket config */
|
/* socket config */
|
||||||
|
@ -1908,7 +1907,7 @@ static int modem_init(const struct device *dev)
|
||||||
|
|
||||||
#if defined(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK)
|
#if defined(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK)
|
||||||
/* init RSSI query */
|
/* init RSSI query */
|
||||||
k_delayed_work_init(&mdata.rssi_query_work, modem_rssi_query_work);
|
k_work_init_delayable(&mdata.rssi_query_work, modem_rssi_query_work);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
modem_reset();
|
modem_reset();
|
||||||
|
|
|
@ -197,7 +197,7 @@ struct wncm14a2a_iface_ctx {
|
||||||
struct k_sem response_sem;
|
struct k_sem response_sem;
|
||||||
|
|
||||||
/* RSSI work */
|
/* RSSI work */
|
||||||
struct k_delayed_work rssi_query_work;
|
struct k_work_delayable rssi_query_work;
|
||||||
|
|
||||||
/* modem data */
|
/* modem data */
|
||||||
char mdm_manufacturer[MDM_MANUFACTURER_LENGTH];
|
char mdm_manufacturer[MDM_MANUFACTURER_LENGTH];
|
||||||
|
@ -1322,9 +1322,8 @@ static void wncm14a2a_rssi_query_work(struct k_work *work)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* re-start RSSI query work */
|
/* re-start RSSI query work */
|
||||||
k_delayed_work_submit_to_queue(&wncm14a2a_workq,
|
k_work_reschedule_for_queue(&wncm14a2a_workq, &ictx.rssi_query_work,
|
||||||
&ictx.rssi_query_work,
|
K_SECONDS(RSSI_TIMEOUT_SECS));
|
||||||
K_SECONDS(RSSI_TIMEOUT_SECS));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void wncm14a2a_modem_reset(void)
|
static void wncm14a2a_modem_reset(void)
|
||||||
|
@ -1336,7 +1335,7 @@ static void wncm14a2a_modem_reset(void)
|
||||||
|
|
||||||
restart:
|
restart:
|
||||||
/* stop RSSI delay work */
|
/* stop RSSI delay work */
|
||||||
k_delayed_work_cancel(&ictx.rssi_query_work);
|
k_work_cancel_delayable(&ictx.rssi_query_work);
|
||||||
|
|
||||||
modem_pin_init();
|
modem_pin_init();
|
||||||
|
|
||||||
|
@ -1402,7 +1401,7 @@ restart:
|
||||||
(ictx.mdm_ctx.data_rssi <= -1000 ||
|
(ictx.mdm_ctx.data_rssi <= -1000 ||
|
||||||
ictx.mdm_ctx.data_rssi == 0)) {
|
ictx.mdm_ctx.data_rssi == 0)) {
|
||||||
/* stop RSSI delay work */
|
/* stop RSSI delay work */
|
||||||
k_delayed_work_cancel(&ictx.rssi_query_work);
|
k_work_cancel_delayable(&ictx.rssi_query_work);
|
||||||
wncm14a2a_rssi_query_work(NULL);
|
wncm14a2a_rssi_query_work(NULL);
|
||||||
k_sleep(K_SECONDS(2));
|
k_sleep(K_SECONDS(2));
|
||||||
}
|
}
|
||||||
|
@ -1460,10 +1459,9 @@ static int wncm14a2a_init(const struct device *dev)
|
||||||
k_sem_init(&ictx.response_sem, 0, 1);
|
k_sem_init(&ictx.response_sem, 0, 1);
|
||||||
|
|
||||||
/* initialize the work queue */
|
/* initialize the work queue */
|
||||||
k_work_q_start(&wncm14a2a_workq,
|
k_work_queue_start(&wncm14a2a_workq, wncm14a2a_workq_stack,
|
||||||
wncm14a2a_workq_stack,
|
K_KERNEL_STACK_SIZEOF(wncm14a2a_workq_stack),
|
||||||
K_KERNEL_STACK_SIZEOF(wncm14a2a_workq_stack),
|
K_PRIO_COOP(7), NULL);
|
||||||
K_PRIO_COOP(7));
|
|
||||||
|
|
||||||
ictx.last_socket_id = 0;
|
ictx.last_socket_id = 0;
|
||||||
|
|
||||||
|
@ -1503,7 +1501,7 @@ static int wncm14a2a_init(const struct device *dev)
|
||||||
NULL, NULL, NULL, K_PRIO_COOP(7), 0, K_NO_WAIT);
|
NULL, NULL, NULL, K_PRIO_COOP(7), 0, K_NO_WAIT);
|
||||||
|
|
||||||
/* init RSSI query */
|
/* init RSSI query */
|
||||||
k_delayed_work_init(&ictx.rssi_query_work, wncm14a2a_rssi_query_work);
|
k_work_init_delayable(&ictx.rssi_query_work, wncm14a2a_rssi_query_work);
|
||||||
|
|
||||||
wncm14a2a_modem_reset();
|
wncm14a2a_modem_reset();
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue