drm/i915: fix up a raw 64bit divide
authorAndy Whitcroft <apw@canonical.com>
Wed, 1 Jul 2009 14:20:59 +0000 (15:20 +0100)
committerEric Anholt <eric@anholt.net>
Thu, 2 Jul 2009 01:01:11 +0000 (18:01 -0700)
We are seeing compilation failures on i386 in some environments due
to an undefined reference as below:

    ERROR: "__udivdi3" [drivers/gpu/drm/i915/i915.ko] undefined!

This is generated due to a raw 64 bit divide in the i915 driver.  Fix up
this raw divide.

Signed-off-by: Andy Whitcroft <apw@canonical.com>
Acked-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: Eric Anholt <eric@anholt.net>
drivers/gpu/drm/i915/intel_display.c

index a84ac05ef0483e0f4fb23cbcbe2a6610c2f09707..59de4951b6eec266854cf57c60f1d47fb970f10f 100644 (file)
@@ -1577,7 +1577,7 @@ igdng_compute_m_n(int bytes_per_pixel, int nlanes,
 
        temp = (u64) DATA_N * pixel_clock;
        temp = div_u64(temp, link_clock);
-       m_n->gmch_m = (temp * bytes_per_pixel) / nlanes;
+       m_n->gmch_m = div_u64(temp * bytes_per_pixel, nlanes);
        m_n->gmch_n = DATA_N;
        fdi_reduce_ratio(&m_n->gmch_m, &m_n->gmch_n);