drivers: modem: gsm: convert work to delayable work
The 'work' argument of a delayable work's handler should be converted to delayable work before passing into the CONTAINER_OF macro. Signed-off-by: Yong Cong Sin <yongcong.sin@gmail.com>
This commit is contained in:
parent
b2b9343c95
commit
d9ea07b7bd
1 changed files with 12 additions and 8 deletions
|
@ -574,12 +574,14 @@ static void set_ppp_carrier_on(struct gsm_modem *gsm)
|
|||
static void rssi_handler(struct k_work *work)
|
||||
{
|
||||
int ret;
|
||||
struct k_work_delayable *dwork = k_work_delayable_from_work(work);
|
||||
struct gsm_modem *gsm = CONTAINER_OF(dwork, struct gsm_modem, rssi_work_handle);
|
||||
#if defined(CONFIG_MODEM_GSM_ENABLE_CESQ_RSSI)
|
||||
ret = modem_cmd_send_nolock(&gsm.context.iface, &gsm.context.cmd_handler,
|
||||
&read_rssi_cmd, 1, "AT+CESQ", &gsm.sem_response, GSM_CMD_SETUP_TIMEOUT);
|
||||
ret = modem_cmd_send_nolock(&gsm->context.iface, &gsm->context.cmd_handler,
|
||||
&read_rssi_cmd, 1, "AT+CESQ", &gsm->sem_response, GSM_CMD_SETUP_TIMEOUT);
|
||||
#else
|
||||
ret = modem_cmd_send_nolock(&gsm.context.iface, &gsm.context.cmd_handler,
|
||||
&read_rssi_cmd, 1, "AT+CSQ", &gsm.sem_response, GSM_CMD_SETUP_TIMEOUT);
|
||||
ret = modem_cmd_send_nolock(&gsm->context.iface, &gsm->context.cmd_handler,
|
||||
&read_rssi_cmd, 1, "AT+CSQ", &gsm->sem_response, GSM_CMD_SETUP_TIMEOUT);
|
||||
#endif
|
||||
|
||||
if (ret < 0) {
|
||||
|
@ -588,9 +590,9 @@ static void rssi_handler(struct k_work *work)
|
|||
|
||||
#if defined(CONFIG_GSM_MUX)
|
||||
#if defined(CONFIG_MODEM_CELL_INFO)
|
||||
(void)gsm_query_cellinfo(&gsm);
|
||||
(void)gsm_query_cellinfo(gsm);
|
||||
#endif
|
||||
(void)gsm_work_reschedule(&gsm.rssi_work_handle,
|
||||
(void)gsm_work_reschedule(&gsm->rssi_work_handle,
|
||||
K_SECONDS(CONFIG_MODEM_GSM_RSSI_POLLING_PERIOD));
|
||||
#endif
|
||||
|
||||
|
@ -864,7 +866,8 @@ static int mux_attach(const struct device *mux, const struct device *uart,
|
|||
|
||||
static void mux_setup(struct k_work *work)
|
||||
{
|
||||
struct gsm_modem *gsm = CONTAINER_OF(work, struct gsm_modem,
|
||||
struct k_work_delayable *dwork = k_work_delayable_from_work(work);
|
||||
struct gsm_modem *gsm = CONTAINER_OF(dwork, struct gsm_modem,
|
||||
gsm_configure_work);
|
||||
const struct device *uart = DEVICE_DT_GET(GSM_UART_NODE);
|
||||
int ret;
|
||||
|
@ -967,7 +970,8 @@ fail:
|
|||
|
||||
static void gsm_configure(struct k_work *work)
|
||||
{
|
||||
struct gsm_modem *gsm = CONTAINER_OF(work, struct gsm_modem,
|
||||
struct k_work_delayable *dwork = k_work_delayable_from_work(work);
|
||||
struct gsm_modem *gsm = CONTAINER_OF(dwork, struct gsm_modem,
|
||||
gsm_configure_work);
|
||||
int ret = -1;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue