From: Koul, Vinod Date: Mon, 20 Oct 2014 16:06:13 +0000 (+0530) Subject: mtd: mxc_nand: use __iowrite32_copy for 32 bit copy X-Git-Tag: firefly_0821_release~176^2~2648^2~27 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=33a87a159cca9deb29b6b72e9aed9d6644b5d1c8;p=firefly-linux-kernel-4.4.55.git mtd: mxc_nand: use __iowrite32_copy for 32 bit copy The driver was also using own method to do 32bit copy, turns out we have a kernel API so use that instead Signed-off-by: Vinod Koul Signed-off-by: Brian Norris --- diff --git a/drivers/mtd/nand/mxc_nand.c b/drivers/mtd/nand/mxc_nand.c index dba262bf766f..23e075428dc4 100644 --- a/drivers/mtd/nand/mxc_nand.c +++ b/drivers/mtd/nand/mxc_nand.c @@ -280,14 +280,10 @@ static void memcpy32_fromio(void *trg, const void __iomem *src, size_t size) *t++ = __raw_readl(s++); } -static void memcpy32_toio(void __iomem *trg, const void *src, int size) +static inline void memcpy32_toio(void __iomem *trg, const void *src, int size) { - int i; - u32 __iomem *t = trg; - const u32 *s = src; - - for (i = 0; i < (size >> 2); i++) - __raw_writel(*s++, t++); + /* __iowrite32_copy use 32bit size values so divide by 4 */ + __iowrite32_copy(trg, src, size / 4); } static int check_int_v3(struct mxc_nand_host *host)