Browse Source

[Components][USB][RNDIS] fix delay linkup using soft timer

ZYH 5 years ago
parent
commit
e1517a0981
2 changed files with 2 additions and 1 deletions
  1. 1 0
      components/drivers/Kconfig
  2. 1 1
      components/drivers/usb/usbdevice/class/rndis.c

+ 1 - 0
components/drivers/Kconfig

@@ -644,6 +644,7 @@ menu "Using USB"
                 if RT_USB_DEVICE_RNDIS
                 if RT_USB_DEVICE_RNDIS
                     config RNDIS_DELAY_LINK_UP
                     config RNDIS_DELAY_LINK_UP
                         bool "Delay linkup media connection"
                         bool "Delay linkup media connection"
+                        select RT_USING_TIMER_SOFT
                         default n
                         default n
                 endif
                 endif
 
 

+ 1 - 1
components/drivers/usb/usbdevice/class/rndis.c

@@ -1391,7 +1391,7 @@ ufunction_t rt_usbd_function_rndis_create(udevice_t device)
                   timer_timeout,
                   timer_timeout,
                   _rndis,
                   _rndis,
                   RT_TICK_PER_SECOND * 2,
                   RT_TICK_PER_SECOND * 2,
-                  RT_TIMER_FLAG_ONE_SHOT);
+                  RT_TIMER_FLAG_ONE_SHOT | RT_TIMER_FLAG_SOFT_TIMER);
 #endif  /* RNDIS_DELAY_LINK_UP */
 #endif  /* RNDIS_DELAY_LINK_UP */
 
 
     /* OUI 00-00-00, only for test. */
     /* OUI 00-00-00, only for test. */