1
1
/*
2
- * Copyright (c) 2018, 2019 O.S.Systems
2
+ * Copyright (c) 2018-2020 O.S.Systems
3
3
*
4
4
* SPDX-License-Identifier: Apache-2.0
5
5
*/
@@ -66,6 +66,8 @@ static struct update_info {
66
66
int image_size ;
67
67
} update_info ;
68
68
69
+ static struct k_delayed_work updatehub_work_handle ;
70
+
69
71
static void wait_fds (void )
70
72
{
71
73
if (poll (ctx .fds , ctx .nfds , NETWORK_TIMEOUT ) < 0 ) {
@@ -76,7 +78,7 @@ static void wait_fds(void)
76
78
static void prepare_fds (void )
77
79
{
78
80
ctx .fds [ctx .nfds ].fd = ctx .sock ;
79
- ctx .fds [ctx .nfds ].events = 1 ;
81
+ ctx .fds [ctx .nfds ].events = POLLIN ;
80
82
ctx .nfds ++ ;
81
83
}
82
84
@@ -288,7 +290,7 @@ static int send_request(enum coap_msgtype msgtype, enum coap_method method,
288
290
}
289
291
290
292
ret = coap_packet_append_payload (& request_packet ,
291
- & ctx .payload ,
293
+ ctx .payload ,
292
294
strlen (ctx .payload ));
293
295
if (ret < 0 ) {
294
296
LOG_ERR ("Not able to append payload" );
@@ -614,8 +616,6 @@ enum updatehub_response updatehub_probe(void)
614
616
goto error ;
615
617
}
616
618
617
- k_sem_init (& ctx .semaphore , 0 , 1 );
618
-
619
619
if (!boot_is_img_confirmed ()) {
620
620
LOG_ERR ("The current image is not confirmed" );
621
621
ctx .code_status = UPDATEHUB_UNCONFIRMED_IMAGE ;
@@ -765,7 +765,7 @@ enum updatehub_response updatehub_update(void)
765
765
return ctx .code_status ;
766
766
}
767
767
768
- static void autohandler (struct k_delayed_work * work )
768
+ static void autohandler (struct k_work * work )
769
769
{
770
770
switch (updatehub_probe ()) {
771
771
case UPDATEHUB_UNCONFIRMED_IMAGE :
@@ -794,13 +794,11 @@ static void autohandler(struct k_delayed_work *work)
794
794
break ;
795
795
}
796
796
797
- k_delayed_work_submit (work , UPDATEHUB_POLL_INTERVAL );
797
+ k_delayed_work_submit (& updatehub_work_handle , UPDATEHUB_POLL_INTERVAL );
798
798
}
799
799
800
800
void updatehub_autohandler (void )
801
801
{
802
- static struct k_delayed_work work ;
803
-
804
- k_delayed_work_init (& work , autohandler );
805
- k_delayed_work_submit (& work , K_NO_WAIT );
802
+ k_delayed_work_init (& updatehub_work_handle , autohandler );
803
+ k_delayed_work_submit (& updatehub_work_handle , K_NO_WAIT );
806
804
}
0 commit comments