drm/msm: split out timeout_to_jiffies helper
Signed-off-by: Rob Clark <robdclark@gmail.com>
This commit is contained in:
parent
79f0e20215
commit
340ff4104f
@ -302,5 +302,20 @@ static inline int align_pitch(int width, int bpp)
|
||||
/* for conditionally setting boolean flag(s): */
|
||||
#define COND(bool, val) ((bool) ? (val) : 0)
|
||||
|
||||
static inline unsigned long timeout_to_jiffies(const ktime_t *timeout)
|
||||
{
|
||||
ktime_t now = ktime_get();
|
||||
unsigned long remaining_jiffies;
|
||||
|
||||
if (ktime_compare(*timeout, now) < 0) {
|
||||
remaining_jiffies = 0;
|
||||
} else {
|
||||
ktime_t rem = ktime_sub(*timeout, now);
|
||||
struct timespec ts = ktime_to_timespec(rem);
|
||||
remaining_jiffies = timespec_to_jiffies(&ts);
|
||||
}
|
||||
|
||||
return remaining_jiffies;
|
||||
}
|
||||
|
||||
#endif /* __MSM_DRV_H__ */
|
||||
|
@ -44,16 +44,7 @@ int msm_wait_fence(struct drm_device *dev, uint32_t fence,
|
||||
/* no-wait: */
|
||||
ret = fence_completed(dev, fence) ? 0 : -EBUSY;
|
||||
} else {
|
||||
ktime_t now = ktime_get();
|
||||
unsigned long remaining_jiffies;
|
||||
|
||||
if (ktime_compare(*timeout, now) < 0) {
|
||||
remaining_jiffies = 0;
|
||||
} else {
|
||||
ktime_t rem = ktime_sub(*timeout, now);
|
||||
struct timespec ts = ktime_to_timespec(rem);
|
||||
remaining_jiffies = timespec_to_jiffies(&ts);
|
||||
}
|
||||
unsigned long remaining_jiffies = timeout_to_jiffies(timeout);
|
||||
|
||||
if (interruptible)
|
||||
ret = wait_event_interruptible_timeout(priv->fence_event,
|
||||
|
Loading…
x
Reference in New Issue
Block a user