On Thu, Jun 27, 2013 at 10:55 AM, Chen Gang <gang.chen@xxxxxxxxxxx> wrote: > On 06/27/2013 03:07 PM, Geert Uytterhoeven wrote: >> On Thu, Jun 27, 2013 at 6:37 AM, Chen Gang <gang.chen@xxxxxxxxxxx> wrote: >>> --- a/arch/m32r/include/asm/io.h >>> +++ b/arch/m32r/include/asm/io.h >>> @@ -169,6 +169,20 @@ static inline void _writel(unsigned long l, unsigned long addr) >>> #define iowrite16 writew >>> #define iowrite32 writel >>> >>> +#define ioread8_rep(p, dst, count) \ >>> + insb((unsigned long) (p), (dst), (count)) >> >> As ioread8() is mapped to readb() (I/O memory space), not inb() (I/O >> port space), >> ioread8_rep() should map to readsb() (which m32r doesn't have yet >> BTW), not insb(). >> For m32r this does matter, as inb() and readb() use different mechanisms >> internally. >> > > Reasonable, but excuse me, I am not quite familiar with it, can any > other members (or maintainer) to help implement it ? > > Thanks firstly. > > :-) > >> It seems include/asm-generic/io.h also has this wrong? >> > > I think it need improvement, if readsb has been defined, it should use > readsb() instead, or just use insb(). I think m32r can mostly use asm-generic/io.h. I.e. arch/m32r/include/asm/io.h has to #define all the operations it implements itself, and defer the rest to asm-generic/io.h. Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx 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 -- To unsubscribe from this list: send the line "unsubscribe linux-arch" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html