From patchwork Sun Jul 5 08:58:25 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jean Delvare X-Patchwork-Id: 34102 Received: from vger.kernel.org (vger.kernel.org [209.132.176.167]) by demeter.kernel.org (8.14.2/8.14.2) with ESMTP id n658wxgj032653 for ; Sun, 5 Jul 2009 08:58:59 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752311AbZGEI6d (ORCPT ); Sun, 5 Jul 2009 04:58:33 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1753284AbZGEI6d (ORCPT ); Sun, 5 Jul 2009 04:58:33 -0400 Received: from zone0.gcu-squad.org ([212.85.147.21]:26000 "EHLO services.gcu-squad.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752311AbZGEI6d (ORCPT ); Sun, 5 Jul 2009 04:58:33 -0400 Received: from jdelvare.pck.nerim.net ([62.212.121.182] helo=hyperion.delvare) by services.gcu-squad.org (GCU Mailer Daemon) with esmtpsa id 1MNOfl-0002WG-2d (TLSv1:AES256-SHA:256) (envelope-from ) ; Sun, 05 Jul 2009 12:10:13 +0200 Date: Sun, 5 Jul 2009 10:58:25 +0200 From: Jean Delvare To: LMML Cc: Andrzej Hajda , Trent Piepho Subject: Re: [PATCH 1/2 v2] Compatibility layer for hrtimer API Message-ID: <20090705105825.0e05160c@hyperion.delvare> In-Reply-To: <20090703224652.339a63e7@hyperion.delvare> References: <20090703224652.339a63e7@hyperion.delvare> X-Mailer: Claws Mail 3.5.0 (GTK+ 2.14.4; i586-suse-linux-gnu) Mime-Version: 1.0 Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org Kernels 2.6.22 to 2.6.24 (inclusive) need some compatibility quirks for the hrtimer API. For older kernels, some required functions were not exported so there's nothing we can do. This means that drivers using the hrtimer infrastructure will no longer work for kernels older than 2.6.22. Signed-off-by: Jean Delvare --- Updated according to Trent's comment: the compatibility code is only included if was already included by the driver. v4l/compat.h | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) --- v4l-dvb.orig/v4l/compat.h 2009-07-05 10:32:12.000000000 +0200 +++ v4l-dvb/v4l/compat.h 2009-07-05 10:33:37.000000000 +0200 @@ -480,4 +480,23 @@ static inline unsigned long v4l_compat_f } #endif +/* + * Compatibility code for hrtimer API + * This will make hrtimer usable for kernels 2.6.22 and later. + * For earlier kernels, not all required functions are exported + * so there's nothing we can do. + */ + +#ifdef _LINUX_HRTIMER_H +#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 25) && \ + LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22) +/* Forward a hrtimer so it expires after the hrtimer's current now */ +static inline unsigned long hrtimer_forward_now(struct hrtimer *timer, + ktime_t interval) +{ + return hrtimer_forward(timer, timer->base->get_time(), interval); +} +#endif +#endif /* _LINUX_HRTIMER_H */ + #endif /* _COMPAT_H */