-
Notifications
You must be signed in to change notification settings - Fork 390
mt76: add kernel version compatibility for timer APIs #1026
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
|
The timer_delete_sync() and container_of() functions will also work in kernel 6.12. |
|
How is the latest commit |
|
There is also a function/macro timer_container_of() (since v6.16) Look at lwfinger/rtw88#373 |
|
Thanks for your review! |
Add version checks to support both old and new timer APIs across different kernel versions: - Use timer_delete_sync() on kernels >= 6.1, fall back to del_timer_sync() on older kernels. The timer_delete_sync() function was introduced in kernel 6.1 as a replacement for del_timer_sync(). - Use from_timer() for timer callbacks on kernels >= 4.15, fall back to container_of() on older kernels. The from_timer() macro was introduced in kernel 4.15 as part of the timer API modernization. - Use hrtimer_setup() on kernels >= 4.15, fall back to manual hrtimer_init() and function assignment on older kernels. The hrtimer_setup() helper was introduced alongside the timer callback changes in kernel 4.15. - Use timer_container_of() on kernels >= 6.16 and container_of() for older kernels. Since the minimum supported kernel is currently 6.12, there is no need to add container_of() for older kernels. Signed-off-by: John Audia <therealgraysky@proton.me>
|
Maybe before someone looks at this PR, create an alternative patch directly in OpenWRT in package/kernel/mt76/patches. |
Add version checks to support both old and new timer APIs across different kernel versions: