[MTD] fix dataflash 64-bit divisions
authorArtem Bityutskiy <Artem.Bityutskiy@nokia.com>
Thu, 18 Dec 2008 12:09:56 +0000 (14:09 +0200)
committerDavid Woodhouse <David.Woodhouse@intel.com>
Fri, 19 Dec 2008 16:23:18 +0000 (16:23 +0000)
commit5b7f3a500cd097d673a6283fbb748c1e4f87bac6
tree03bbc9e2f01cf3ed6d0891700ae3c4c14a429332
parent03ed107805aff09ae13e50a86ea929f12ff74eb7
[MTD] fix dataflash 64-bit divisions

MTD has recently been upgraded for 64-bit support, see commit
number 69423d99fc182a81f3c5db3eb5c140acc6fc64be in the
mtd-2.6.git tree (git://git.infradead.org/mtd-2.6.git)
or see this URL:
http://git.infradead.org/mtd-2.6.git?a=commit;h=69423d99fc182a81f3c5db3eb5c140acc6fc64be

Some variables in MTD data structures which were 32-bit
became 64-bit. Namely, the 'size' field in 'struct mtd_info'
and the 'addr'/'len' fields in 'struct erase_info'. This
means we have to use 'do_div' to divide them.

This patch fixes the following linking error:
ERROR: "__udivdi3" [drivers/mtd/devices/mtd_dataflash.ko] undefined!
ERROR: "__umoddi3" [drivers/mtd/devices/mtd_dataflash.ko] undefined!

This patch changes divisions of 64-bit variable so that they use
'do_div'. This patch also change some print placeholders to
get rid of gcc warnings.

Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
Cc: David Brownell <david-b@pacbell.net>
Cc: Nicolas Pitre <nico@cam.org>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
drivers/mtd/devices/mtd_dataflash.c