drm/radeon/kms: use udelay for short delays
authorDave Airlie <airlied@redhat.com>
Sat, 30 Jan 2010 21:07:14 +0000 (07:07 +1000)
committerDave Airlie <airlied@redhat.com>
Thu, 18 Feb 2010 05:00:08 +0000 (15:00 +1000)
For usec delays use udelay instead of scheduling, this should
allow reclocking to happen faster. This also was the cause
of reported 33s delays at bootup on certain systems.

fixes: freedesktop.org bug 25506

Cc: stable@kernel.org
Signed-off-by: Dave Airlie <airlied@redhat.com>
drivers/gpu/drm/radeon/atom.c

index 2a3df55..7f152f6 100644 (file)
@@ -643,7 +643,7 @@ static void atom_op_delay(atom_exec_context *ctx, int *ptr, int arg)
        uint8_t count = U8((*ptr)++);
        SDEBUG("   count: %d\n", count);
        if (arg == ATOM_UNIT_MICROSEC)
-               schedule_timeout_uninterruptible(usecs_to_jiffies(count));
+               udelay(count);
        else
                schedule_timeout_uninterruptible(msecs_to_jiffies(count));
 }