heyuanjie87 5 лет назад
Родитель
Сommit
e5ac6476ff
1 измененных файлов с 4 добавлено и 2 удалено
  1. 4 2
      src/wiz.c

+ 4 - 2
src/wiz.c

@@ -664,7 +664,7 @@ static void wiz_dhcp_work(struct rt_work *dhcp_work, void *dhcp_work_data)
     struct netdev *netdev = (struct netdev *)dhcp_work_data;
 
     uint8_t dhcp_times = 0;
-    uint8_t data_buffer[1024];
+    static uint8_t data_buffer[1024];
     uint32_t dhcp_status = 0;
 
     rt_timer_start(dhcp_timer);
@@ -749,7 +749,9 @@ static int wiz_network_dhcp(struct netdev *netdev)
     if (dhcp_work == RT_NULL)
         return -RT_ENOMEM;
 
-    wiz_dhcp_work(dhcp_work, netdev);
+    rt_work_init(dhcp_work, wiz_dhcp_work, (void *)netdev);
+    rt_work_submit(dhcp_work, WIZ_DHCP_WORK_RETRY_TIME);
+
     return RT_EOK;
 }
 #endif /* WIZ_USING_DHCP */