On 06/27/2013 05:28 PM, Geert Uytterhoeven wrote: > 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. Really it is, if Arnd's patch for asm-generic/io.h pass checking and is applied, thanks. Hello Arnd: Can you help to send the related patch too, since you have already send the patch for asm-generic/io.h, which this patch depends on. Thanks. -- Chen Gang -- 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