i2c-designware: use div_u64 to fix link
authorVincent Stehlé <vincent.stehle@freescale.com>
Tue, 2 Jul 2013 09:46:54 +0000 (11:46 +0200)
committerWolfram Sang <wsa@the-dreams.de>
Wed, 3 Jul 2013 20:07:51 +0000 (22:07 +0200)
This fixes the following link error:

  drivers/built-in.o: In function `dw_i2c_probe':
  of_iommu.c:(.text+0x18c8f0): undefined reference to `__aeabi_uldivmod'
  make: *** [vmlinux] Error 1

Signed-off-by: Vincent Stehlé <vincent.stehle@freescale.com>
Tested-by: Kevin Hilman <khilman@linaro.org>
Reviewed-by: Christian Ruppert <christian.ruppert@abilis.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
drivers/i2c/busses/i2c-designware-platdrv.c

index def79b5..4c5fada 100644 (file)
@@ -122,7 +122,8 @@ static int dw_i2c_probe(struct platform_device *pdev)
 
                of_property_read_u32(pdev->dev.of_node,
                                        "i2c-sda-hold-time-ns", &ht);
-               dev->sda_hold_time = ((u64)ic_clk * ht + 500000) / 1000000;
+               dev->sda_hold_time = div_u64((u64)ic_clk * ht + 500000,
+                                            1000000);
        }
 
        dev->functionality =