[media] fc2580: use macro for 64 bit division and reminder
authorGianluca Gennari <gennarone@gmail.com>
Mon, 24 Sep 2012 10:37:18 +0000 (07:37 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Mon, 1 Oct 2012 20:07:06 +0000 (17:07 -0300)
Fixes the following warnings on a 32 bit system with GCC 4.4.3 and kernel Ubuntu 2.6.32-43 32 bit:
WARNING: "__udivdi3" [fc2580.ko] undefined!
WARNING: "__umoddi3" [fc2580.ko] undefined!

Signed-off-by: Gianluca Gennari <gennarone@gmail.com>
Reviewed-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/tuners/fc2580.c

index dacf85578c4bf627022a8ebff1ddbf9bee5b9c10..aff39ae457a0d1c469ea8ff1e9a4e81136347a17 100644 (file)
@@ -168,8 +168,7 @@ static int fc2580_set_params(struct dvb_frontend *fe)
        }
 
        f_ref = 2UL * priv->cfg->clock / r_val;
-       n_val = f_vco / f_ref;
-       k_val = f_vco % f_ref;
+       n_val = div_u64_rem(f_vco, f_ref, &k_val);
        k_val_reg = 1UL * k_val * (1 << 20) / f_ref;
 
        ret = fc2580_wr_reg(priv, 0x18, r18_val | ((k_val_reg >> 16) & 0xff));