Thread (95 messages) 95 messages, 32 authors, 2014-06-25

[PATCH 2/2] mtd: orion-nand: fix build error with ARMv4

From: geert@linux-m68k.org (Geert Uytterhoeven)
Date: 2014-05-09 19:29:21
Also in: lkml

On Fri, May 9, 2014 at 8:45 PM, Ezequiel Garcia
[off-list ref] wrote:
quoted hunk ↗ jump to hunk
--- a/drivers/mtd/nand/orion_nand.c
+++ b/drivers/mtd/nand/orion_nand.c
@@ -52,6 +52,7 @@ static void orion_nand_read_buf(struct mtd_info *mtd, uint8_t *buf, int len)
        uint64_t *buf64;
        int i = 0;

+#if __LINUX_ARM_ARCH__ >= 5
        while (len && (unsigned long)buf & 7) {
                *buf++ = readb(io_base);
                len--;
@@ -69,6 +70,14 @@ static void orion_nand_read_buf(struct mtd_info *mtd, uint8_t *buf, int len)
                buf64[i++] = x;
        }
        i *= 8;
+#else
+       while (len && (unsigned long)buf & 3) {
+               *buf++ = readb(io_base);
+               len--;
+       }
+       readsl(io_base, buf, len/4);
+       i = (len / 4 * 4) * 4;
Why multiply by 4 twice? "i" is supposed to be the number of bytes read,
right?

BTW, Arnd's version should just need s/8/4/g to make it work.
+#endif
        while (i < len)
                buf[i++] = readb(io_base);
 }
Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help