diff --git a/hal/led/hal_usb_led.c b/hal/led/hal_usb_led.c index 117bc93..ae0535c 100644 --- a/hal/led/hal_usb_led.c +++ b/hal/led/hal_usb_led.c @@ -1815,9 +1815,17 @@ void BlinkHandler(PLED_USB pLed) * Callback function of LED BlinkTimer, * it just schedules to corresponding BlinkWorkItem/led_blink_hdl * */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 15, 0) +void BlinkTimerCallback(struct timer_list *t) +#else void BlinkTimerCallback(void *data) +#endif { +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 15, 0) + PLED_USB pLed = from_timer(pLed, t, BlinkTimer); +#else PLED_USB pLed = (PLED_USB)data; +#endif _adapter *padapter = pLed->padapter; /* RTW_INFO("%s\n", __FUNCTION__); */ @@ -4229,7 +4237,11 @@ InitLed( pLed->LedPin = LedPin; ResetLedStatus(pLed); - _init_timer(&(pLed->BlinkTimer), padapter->pnetdev, BlinkTimerCallback, pLed); +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 15, 0) + timer_setup(&pLed->BlinkTimer, BlinkTimerCallback, 0); +#else + _init_timer(&pLed->BlinkTimer, padapter->pnetdev, BlinkTimerCallback, pLed); +#endif _init_workitem(&(pLed->BlinkWorkItem), BlinkWorkItemCallback, pLed); }