Skip to content

Commit cc09072

Browse files
pabigotnashif
authored andcommitted
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 <[email protected]> Signed-off-by: Jukka Rissanen <[email protected]>
1 parent 9fcd751 commit cc09072

File tree

5 files changed

+52
-58
lines changed

5 files changed

+52
-58
lines changed

drivers/modem/gsm_ppp.c

Lines changed: 18 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ static struct gsm_modem {
5151
struct k_sem sem_response;
5252

5353
struct modem_iface_uart_data gsm_data;
54-
struct k_delayed_work gsm_configure_work;
54+
struct k_work_delayable gsm_configure_work;
5555
char gsm_rx_rb_buf[PPP_MRU * 3];
5656

5757
uint8_t *ppp_recv_buf;
@@ -368,8 +368,8 @@ static void gsm_finalize_connection(struct gsm_modem *gsm)
368368
if (ret < 0) {
369369
LOG_ERR("modem setup returned %d, %s",
370370
ret, "retrying...");
371-
(void)k_delayed_work_submit(&gsm->gsm_configure_work,
372-
K_SECONDS(1));
371+
(void)k_work_reschedule(&gsm->gsm_configure_work,
372+
K_SECONDS(1));
373373
return;
374374
}
375375
}
@@ -395,8 +395,7 @@ static void gsm_finalize_connection(struct gsm_modem *gsm)
395395
if (ret < 0) {
396396
LOG_DBG("modem setup returned %d, %s",
397397
ret, "retrying...");
398-
(void)k_delayed_work_submit(&gsm->gsm_configure_work,
399-
K_SECONDS(1));
398+
(void)k_work_reschedule(&gsm->gsm_configure_work, K_SECONDS(1));
400399
return;
401400
}
402401

@@ -422,8 +421,9 @@ static void gsm_finalize_connection(struct gsm_modem *gsm)
422421
}
423422

424423
LOG_DBG("Not attached, %s", "retrying...");
425-
(void)k_delayed_work_submit(&gsm->gsm_configure_work,
426-
K_MSEC(GSM_ATTACH_RETRY_DELAY_MSEC));
424+
425+
(void)k_work_reschedule(&gsm->gsm_configure_work,
426+
K_MSEC(GSM_ATTACH_RETRY_DELAY_MSEC));
427427
return;
428428
}
429429

@@ -441,8 +441,7 @@ static void gsm_finalize_connection(struct gsm_modem *gsm)
441441
if (ret < 0) {
442442
LOG_DBG("modem setup returned %d, %s",
443443
ret, "retrying...");
444-
(void)k_delayed_work_submit(&gsm->gsm_configure_work,
445-
K_SECONDS(1));
444+
(void)k_work_reschedule(&gsm->gsm_configure_work, K_SECONDS(1));
446445
return;
447446
}
448447

@@ -523,7 +522,7 @@ static int mux_enable(struct gsm_modem *gsm)
523522

524523
static void mux_setup_next(struct gsm_modem *gsm)
525524
{
526-
(void)k_delayed_work_submit(&gsm->gsm_configure_work, K_MSEC(1));
525+
(void)k_work_reschedule(&gsm->gsm_configure_work, K_MSEC(1));
527526
}
528527

529528
static void mux_attach_cb(const struct device *mux, int dlci_address,
@@ -674,8 +673,7 @@ static void gsm_configure(struct k_work *work)
674673
if (ret < 0) {
675674
LOG_DBG("modem not ready %d", ret);
676675

677-
(void)k_delayed_work_submit(&gsm->gsm_configure_work,
678-
K_NO_WAIT);
676+
(void)k_work_reschedule(&gsm->gsm_configure_work, K_NO_WAIT);
679677

680678
return;
681679
}
@@ -689,8 +687,8 @@ static void gsm_configure(struct k_work *work)
689687
gsm->mux_enabled = true;
690688
} else {
691689
gsm->mux_enabled = false;
692-
(void)k_delayed_work_submit(&gsm->gsm_configure_work,
693-
K_NO_WAIT);
690+
(void)k_work_reschedule(&gsm->gsm_configure_work,
691+
K_NO_WAIT);
694692
return;
695693
}
696694

@@ -700,11 +698,11 @@ static void gsm_configure(struct k_work *work)
700698
if (gsm->mux_enabled) {
701699
gsm->state = STATE_INIT;
702700

703-
k_delayed_work_init(&gsm->gsm_configure_work,
704-
mux_setup);
701+
k_work_init_delayable(&gsm->gsm_configure_work,
702+
mux_setup);
705703

706-
(void)k_delayed_work_submit(&gsm->gsm_configure_work,
707-
K_NO_WAIT);
704+
(void)k_work_reschedule(&gsm->gsm_configure_work,
705+
K_NO_WAIT);
708706
return;
709707
}
710708
}
@@ -724,8 +722,8 @@ void gsm_ppp_start(const struct device *dev)
724722
return;
725723
}
726724

727-
k_delayed_work_init(&gsm->gsm_configure_work, gsm_configure);
728-
(void)k_delayed_work_submit(&gsm->gsm_configure_work, K_NO_WAIT);
725+
k_work_init_delayable(&gsm->gsm_configure_work, gsm_configure);
726+
(void)k_work_reschedule(&gsm->gsm_configure_work, K_NO_WAIT);
729727
}
730728

731729
void gsm_ppp_stop(const struct device *dev)

drivers/modem/quectel-bg9x.c

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -896,9 +896,9 @@ static void modem_rssi_query_work(struct k_work *work)
896896

897897
/* Re-start RSSI query work */
898898
if (work) {
899-
k_delayed_work_submit_to_queue(&modem_workq,
900-
&mdata.rssi_query_work,
901-
K_SECONDS(RSSI_TIMEOUT_SECS));
899+
k_work_reschedule_for_queue(&modem_workq,
900+
&mdata.rssi_query_work,
901+
K_SECONDS(RSSI_TIMEOUT_SECS));
902902
}
903903
}
904904

@@ -1019,7 +1019,7 @@ static int modem_setup(void)
10191019
counter = 0;
10201020

10211021
/* stop RSSI delay work */
1022-
k_delayed_work_cancel(&mdata.rssi_query_work);
1022+
k_work_cancel_delayable(&mdata.rssi_query_work);
10231023

10241024
/* Let the modem respond. */
10251025
LOG_INF("Waiting for modem to respond");
@@ -1068,9 +1068,8 @@ static int modem_setup(void)
10681068

10691069
/* Network is ready - Start RSSI work in the background. */
10701070
LOG_INF("Network is ready.");
1071-
k_delayed_work_submit_to_queue(&modem_workq,
1072-
&mdata.rssi_query_work,
1073-
K_SECONDS(RSSI_TIMEOUT_SECS));
1071+
k_work_reschedule_for_queue(&modem_workq, &mdata.rssi_query_work,
1072+
K_SECONDS(RSSI_TIMEOUT_SECS));
10741073

10751074
/* Once the network is ready, we try to activate the PDP context. */
10761075
ret = modem_pdp_context_activate();
@@ -1145,9 +1144,9 @@ static int modem_init(const struct device *dev)
11451144
k_sem_init(&mdata.sem_response, 0, 1);
11461145
k_sem_init(&mdata.sem_tx_ready, 0, 1);
11471146
k_sem_init(&mdata.sem_sock_conn, 0, 1);
1148-
k_work_q_start(&modem_workq, modem_workq_stack,
1149-
K_KERNEL_STACK_SIZEOF(modem_workq_stack),
1150-
K_PRIO_COOP(7));
1147+
k_work_queue_start(&modem_workq, modem_workq_stack,
1148+
K_KERNEL_STACK_SIZEOF(modem_workq_stack),
1149+
K_PRIO_COOP(7), NULL);
11511150

11521151
/* socket config */
11531152
mdata.socket_config.sockets = &mdata.sockets[0];
@@ -1210,7 +1209,7 @@ static int modem_init(const struct device *dev)
12101209
NULL, NULL, NULL, K_PRIO_COOP(7), 0, K_NO_WAIT);
12111210

12121211
/* Init RSSI query */
1213-
k_delayed_work_init(&mdata.rssi_query_work, modem_rssi_query_work);
1212+
k_work_init_delayable(&mdata.rssi_query_work, modem_rssi_query_work);
12141213
return modem_setup();
12151214

12161215
error:

drivers/modem/quectel-bg9x.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ struct modem_data {
8989
struct modem_socket sockets[MDM_MAX_SOCKETS];
9090

9191
/* RSSI work */
92-
struct k_delayed_work rssi_query_work;
92+
struct k_work_delayable rssi_query_work;
9393

9494
/* modem data */
9595
char mdm_manufacturer[MDM_MANUFACTURER_LENGTH];

drivers/modem/ublox-sara-r4.c

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ struct modem_data {
141141

142142
#if defined(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK)
143143
/* RSSI work */
144-
struct k_delayed_work rssi_query_work;
144+
struct k_work_delayable rssi_query_work;
145145
#endif
146146

147147
/* modem data */
@@ -924,8 +924,8 @@ static void modem_rssi_query_work(struct k_work *work)
924924
#if defined(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK)
925925
/* re-start RSSI query work */
926926
if (work) {
927-
k_delayed_work_submit_to_queue(&modem_workq,
928-
&mdata.rssi_query_work,
927+
k_work_reschedule_for_queue(
928+
&modem_workq, &mdata.rssi_query_work,
929929
K_SECONDS(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK_PERIOD));
930930
}
931931
#endif
@@ -954,9 +954,9 @@ static void modem_rssi_query_work(struct k_work *work)
954954
#if defined(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK)
955955
/* re-start RSSI query work */
956956
if (work) {
957-
k_delayed_work_submit_to_queue(&modem_workq,
958-
&mdata.rssi_query_work,
959-
K_SECONDS(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK_PERIOD));
957+
k_work_reschedule_for_queue(
958+
&modem_workq, &mdata.rssi_query_work,
959+
K_SECONDS(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK_PERIOD));
960960
}
961961
#endif
962962
}
@@ -1039,7 +1039,7 @@ static void modem_reset(void)
10391039

10401040
#if defined(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK)
10411041
/* stop RSSI delay work */
1042-
k_delayed_work_cancel(&mdata.rssi_query_work);
1042+
k_work_cancel_delayable(&mdata.rssi_query_work);
10431043
#endif
10441044

10451045
pin_init();
@@ -1208,9 +1208,9 @@ static void modem_reset(void)
12081208

12091209
#if defined(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK)
12101210
/* start RSSI query */
1211-
k_delayed_work_submit_to_queue(&modem_workq,
1212-
&mdata.rssi_query_work,
1213-
K_SECONDS(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK_PERIOD));
1211+
k_work_reschedule_for_queue(
1212+
&modem_workq, &mdata.rssi_query_work,
1213+
K_SECONDS(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK_PERIOD));
12141214
#endif
12151215

12161216
error:
@@ -1839,10 +1839,9 @@ static int modem_init(const struct device *dev)
18391839

18401840
#if defined(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK)
18411841
/* initialize the work queue */
1842-
k_work_q_start(&modem_workq,
1843-
modem_workq_stack,
1844-
K_KERNEL_STACK_SIZEOF(modem_workq_stack),
1845-
K_PRIO_COOP(7));
1842+
k_work_queue_start(&modem_workq, modem_workq_stack,
1843+
K_KERNEL_STACK_SIZEOF(modem_workq_stack),
1844+
K_PRIO_COOP(7), NULL);
18461845
#endif
18471846

18481847
/* socket config */
@@ -1908,7 +1907,7 @@ static int modem_init(const struct device *dev)
19081907

19091908
#if defined(CONFIG_MODEM_UBLOX_SARA_RSSI_WORK)
19101909
/* init RSSI query */
1911-
k_delayed_work_init(&mdata.rssi_query_work, modem_rssi_query_work);
1910+
k_work_init_delayable(&mdata.rssi_query_work, modem_rssi_query_work);
19121911
#endif
19131912

19141913
modem_reset();

drivers/modem/wncm14a2a.c

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -197,7 +197,7 @@ struct wncm14a2a_iface_ctx {
197197
struct k_sem response_sem;
198198

199199
/* RSSI work */
200-
struct k_delayed_work rssi_query_work;
200+
struct k_work_delayable rssi_query_work;
201201

202202
/* modem data */
203203
char mdm_manufacturer[MDM_MANUFACTURER_LENGTH];
@@ -1322,9 +1322,8 @@ static void wncm14a2a_rssi_query_work(struct k_work *work)
13221322
}
13231323

13241324
/* re-start RSSI query work */
1325-
k_delayed_work_submit_to_queue(&wncm14a2a_workq,
1326-
&ictx.rssi_query_work,
1327-
K_SECONDS(RSSI_TIMEOUT_SECS));
1325+
k_work_reschedule_for_queue(&wncm14a2a_workq, &ictx.rssi_query_work,
1326+
K_SECONDS(RSSI_TIMEOUT_SECS));
13281327
}
13291328

13301329
static void wncm14a2a_modem_reset(void)
@@ -1336,7 +1335,7 @@ static void wncm14a2a_modem_reset(void)
13361335

13371336
restart:
13381337
/* stop RSSI delay work */
1339-
k_delayed_work_cancel(&ictx.rssi_query_work);
1338+
k_work_cancel_delayable(&ictx.rssi_query_work);
13401339

13411340
modem_pin_init();
13421341

@@ -1402,7 +1401,7 @@ static void wncm14a2a_modem_reset(void)
14021401
(ictx.mdm_ctx.data_rssi <= -1000 ||
14031402
ictx.mdm_ctx.data_rssi == 0)) {
14041403
/* stop RSSI delay work */
1405-
k_delayed_work_cancel(&ictx.rssi_query_work);
1404+
k_work_cancel_delayable(&ictx.rssi_query_work);
14061405
wncm14a2a_rssi_query_work(NULL);
14071406
k_sleep(K_SECONDS(2));
14081407
}
@@ -1460,10 +1459,9 @@ static int wncm14a2a_init(const struct device *dev)
14601459
k_sem_init(&ictx.response_sem, 0, 1);
14611460

14621461
/* initialize the work queue */
1463-
k_work_q_start(&wncm14a2a_workq,
1464-
wncm14a2a_workq_stack,
1465-
K_KERNEL_STACK_SIZEOF(wncm14a2a_workq_stack),
1466-
K_PRIO_COOP(7));
1462+
k_work_queue_start(&wncm14a2a_workq, wncm14a2a_workq_stack,
1463+
K_KERNEL_STACK_SIZEOF(wncm14a2a_workq_stack),
1464+
K_PRIO_COOP(7), NULL);
14671465

14681466
ictx.last_socket_id = 0;
14691467

@@ -1503,7 +1501,7 @@ static int wncm14a2a_init(const struct device *dev)
15031501
NULL, NULL, NULL, K_PRIO_COOP(7), 0, K_NO_WAIT);
15041502

15051503
/* init RSSI query */
1506-
k_delayed_work_init(&ictx.rssi_query_work, wncm14a2a_rssi_query_work);
1504+
k_work_init_delayable(&ictx.rssi_query_work, wncm14a2a_rssi_query_work);
15071505

15081506
wncm14a2a_modem_reset();
15091507

0 commit comments

Comments
 (0)