mirror of
git://nv-tegra.nvidia.com/linux-nv-oot.git
synced 2025-12-22 17:25:35 +03:00
drivers: Update timer APIs for Linux v6.15
In Linux v6.15, the timer APIs hrtimer_init() and del_timer() have been removed. The hrtimer_setup() was added in Linux v6.13 to replace hrtimer_init() and hrtimer_init() have finally been removed. The functions del_timer()/del_timer_sync() were renamed to timer_delete()/timer_delete_sync() in Linux v6.15. Use conftest to detect these changes and update the drivers as necessary. JIRA LINQPJ14-47 Change-Id: Id3994900384aad4b91155507cda91e04898ab12c Signed-off-by: Jon Hunter <jonathanh@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/3336168 Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com> Reviewed-by: Brad Griffis <bgriffis@nvidia.com> GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com> Reviewed-by: svcacv <svcacv@nvidia.com>
This commit is contained in:
@@ -36,6 +36,8 @@
|
||||
#include <linux/miscdevice.h>
|
||||
#include "v4l2loopback.h"
|
||||
|
||||
#include <nvidia/conftest.h>
|
||||
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 0, 0)
|
||||
#error This module is not supported on kernels before 4.0.0.
|
||||
#endif
|
||||
@@ -1706,8 +1708,13 @@ static int vidioc_querybuf(struct file *file, void *fh, struct v4l2_buffer *b)
|
||||
static void buffer_written(struct v4l2_loopback_device *dev,
|
||||
struct v4l2l_buffer *buf)
|
||||
{
|
||||
#if defined(NV_TIMER_DELETE_PRESENT) /* Linux v6.15 */
|
||||
timer_delete_sync(&dev->sustain_timer);
|
||||
timer_delete_sync(&dev->timeout_timer);
|
||||
#else
|
||||
del_timer_sync(&dev->sustain_timer);
|
||||
del_timer_sync(&dev->timeout_timer);
|
||||
#endif
|
||||
|
||||
spin_lock_bh(&dev->list_lock);
|
||||
list_move_tail(&buf->list_head, &dev->outbufs_list);
|
||||
@@ -2274,8 +2281,13 @@ static int v4l2_loopback_close(struct file *file)
|
||||
|
||||
atomic_dec(&dev->open_count);
|
||||
if (dev->open_count.counter == 0) {
|
||||
#if defined(NV_TIMER_DELETE_PRESENT) /* Linux v6.15 */
|
||||
timer_delete_sync(&dev->sustain_timer);
|
||||
timer_delete_sync(&dev->timeout_timer);
|
||||
#else
|
||||
del_timer_sync(&dev->sustain_timer);
|
||||
del_timer_sync(&dev->timeout_timer);
|
||||
#endif
|
||||
}
|
||||
try_free_buffers(dev);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user