Re: [PATCH] arch: m68k: include: asm: the 3rd parameter of 'insl' and 'outsl' need '<< 2'

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, May 30, 2013 at 11:39 AM, Chen Gang <gang.chen@xxxxxxxxxxx> wrote:
According to the original implementation in 2009, 'insl' and 'outsl'
need '<< 2'.

Sorry, now I'm confused. Which original implementation?
I can't find this one using "<< 2"?

Also add '#ifdef' to avoid multiple defination, and beautify code to
pass "./scripts/checkpatch.pl"

The related git number:
  for parport.h: "4914802 m68k,m68knommu: merge header files" in 2009
  for io_mm.h: "84b16b7 m68k/atari: ROM port ISA adapter support" in Apr 6 2013

The related warning (make EXTRA_CFLAG=-W ARCH=m68k allmodconfig):
  arch/m68k/include/asm/parport.h:14:0: warning: "insl" redefined [enabled by default]
  arch/m68k/include/asm/io_mm.h:403:0: note: this is the location of the previous definition
  arch/m68k/include/asm/parport.h:15:0: warning: "outsl" redefined [enabled by default]
  arch/m68k/include/asm/io_mm.h:406:0: note: this is the location of the previous definition


Signed-off-by: Chen Gang <gang.chen@xxxxxxxxxxx>
---
 arch/m68k/include/asm/io_mm.h   |    5 +++--
 arch/m68k/include/asm/parport.h |    9 +++++++--
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/arch/m68k/include/asm/io_mm.h b/arch/m68k/include/asm/io_mm.h
index ffdf54f4..66be3b2 100644
--- a/arch/m68k/include/asm/io_mm.h
+++ b/arch/m68k/include/asm/io_mm.h
@@ -400,10 +400,11 @@ static inline void isa_delay(void)

 #define insb(port, buf, nr)    ((port) < 1024 ? isa_rom_insb((port), (buf), (nr)) : isa_insb((port), (buf), (nr)))
 #define insw(port, buf, nr)    ((port) < 1024 ? isa_rom_insw((port), (buf), (nr)) : isa_insw((port), (buf), (nr)))
-#define insl                   isa_insl
+#define insl(port, buf, len)   isa_insb((port), (buf), (len) << 2)

Oops, changes from 32-bit accesses to byte accesses?

 #define outsb(port, buf, nr)   ((port) < 1024 ? isa_rom_outsb((port), (buf), (nr)) : isa_outsb((port), (buf), (nr)))
 #define outsw(port, buf, nr)   ((port) < 1024 ? isa_rom_outsw((port), (buf), (nr)) : isa_outsw((port), (buf), (nr)))
-#define outsl                  isa_outsl
+#define outsl(port, buf, len)  isa_outsb((port), (buf), (len) << 2)

 #define readb(addr)            in_8(addr)
 #define writeb(val, addr)      out_8((addr), (val))
diff --git a/arch/m68k/include/asm/parport.h b/arch/m68k/include/asm/parport.h
index 5ea75e6..e8e4a2a 100644
--- a/arch/m68k/include/asm/parport.h
+++ b/arch/m68k/include/asm/parport.h
@@ -11,8 +11,13 @@
 #ifndef _ASM_M68K_PARPORT_H
 #define _ASM_M68K_PARPORT_H 1

-#define insl(port,buf,len)   isa_insb(port,buf,(len)<<2)
-#define outsl(port,buf,len)  isa_outsb(port,buf,(len)<<2)
+#ifndef insl
+#define insl(port, buf, len)   isa_insb((port), (buf), (len) << 2)
+#endif
+
+#ifndef outsl
+#define outsl(port, buf, len)  isa_outsb((port), (buf), (len) << 2)
+#endif

Now the (re)definitions are identical to the originals, so they can just
be removed. But the ones in <asm/io.h> are not correct anymore, IMHO.

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-m68k" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Video for Linux]     [Yosemite News]     [Linux S/390]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux