Commit e966d308 authored by Paul Burton's avatar Paul Burton

MIPS: Remove SLOW_DOWN_IO

arch/mips appears to have inherited SLOW_DOWN_IO from arch/x86 in
antiquity, but we never define CONF_SLOWDOWN_IO so this is unused code.

Perhaps it was once useful to keep the MIPS header close to the x86
version to ease comparisons or porting changes, but they've diverged
significantly at this point & x86 does this differently now anyway.

Delete the dead code.
Signed-off-by: default avatarPaul Burton <paul.burton@mips.com>
Patchwork: https://patchwork.linux-mips.org/patch/20343/
Cc: linux-mips@linux-mips.org
parent b962aeb0
...@@ -33,11 +33,6 @@ ...@@ -33,11 +33,6 @@
#include <ioremap.h> #include <ioremap.h>
#include <mangle-port.h> #include <mangle-port.h>
/*
* Slowdown I/O port space accesses for antique hardware.
*/
#undef CONF_SLOWDOWN_IO
/* /*
* Raw operations are never swapped in software. OTOH values that raw * Raw operations are never swapped in software. OTOH values that raw
* operations are working on may or may not have been swapped by the bus * operations are working on may or may not have been swapped by the bus
...@@ -89,33 +84,6 @@ static inline void set_io_port_base(unsigned long base) ...@@ -89,33 +84,6 @@ static inline void set_io_port_base(unsigned long base)
#define PIO_MASK IO_SPACE_LIMIT #define PIO_MASK IO_SPACE_LIMIT
#define PIO_RESERVED 0x0UL #define PIO_RESERVED 0x0UL
/*
* Thanks to James van Artsdalen for a better timing-fix than
* the two short jumps: using outb's to a nonexistent port seems
* to guarantee better timings even on fast machines.
*
* On the other hand, I'd like to be sure of a non-existent port:
* I feel a bit unsafe about using 0x80 (should be safe, though)
*
* Linus
*
*/
#define __SLOW_DOWN_IO \
__asm__ __volatile__( \
"sb\t$0,0x80(%0)" \
: : "r" (mips_io_port_base));
#ifdef CONF_SLOWDOWN_IO
#ifdef REALLY_SLOW_IO
#define SLOW_DOWN_IO { __SLOW_DOWN_IO; __SLOW_DOWN_IO; __SLOW_DOWN_IO; __SLOW_DOWN_IO; }
#else
#define SLOW_DOWN_IO __SLOW_DOWN_IO
#endif
#else
#define SLOW_DOWN_IO
#endif
/* /*
* virt_to_phys - map virtual addresses to physical * virt_to_phys - map virtual addresses to physical
* @address: address to remap * @address: address to remap
...@@ -399,7 +367,7 @@ static inline type pfx##read##bwlq(const volatile void __iomem *mem) \ ...@@ -399,7 +367,7 @@ static inline type pfx##read##bwlq(const volatile void __iomem *mem) \
return pfx##ioswab##bwlq(__mem, __val); \ return pfx##ioswab##bwlq(__mem, __val); \
} }
#define __BUILD_IOPORT_SINGLE(pfx, bwlq, type, p, slow) \ #define __BUILD_IOPORT_SINGLE(pfx, bwlq, type, p) \
\ \
static inline void pfx##out##bwlq##p(type val, unsigned long port) \ static inline void pfx##out##bwlq##p(type val, unsigned long port) \
{ \ { \
...@@ -416,7 +384,6 @@ static inline void pfx##out##bwlq##p(type val, unsigned long port) \ ...@@ -416,7 +384,6 @@ static inline void pfx##out##bwlq##p(type val, unsigned long port) \
BUILD_BUG_ON(sizeof(type) > sizeof(unsigned long)); \ BUILD_BUG_ON(sizeof(type) > sizeof(unsigned long)); \
\ \
*__addr = __val; \ *__addr = __val; \
slow; \
} \ } \
\ \
static inline type pfx##in##bwlq##p(unsigned long port) \ static inline type pfx##in##bwlq##p(unsigned long port) \
...@@ -429,7 +396,6 @@ static inline type pfx##in##bwlq##p(unsigned long port) \ ...@@ -429,7 +396,6 @@ static inline type pfx##in##bwlq##p(unsigned long port) \
BUILD_BUG_ON(sizeof(type) > sizeof(unsigned long)); \ BUILD_BUG_ON(sizeof(type) > sizeof(unsigned long)); \
\ \
__val = *__addr; \ __val = *__addr; \
slow; \
\ \
/* prevent prefetching of coherent DMA data prematurely */ \ /* prevent prefetching of coherent DMA data prematurely */ \
rmb(); \ rmb(); \
...@@ -452,8 +418,8 @@ BUILDIO_MEM(l, u32) ...@@ -452,8 +418,8 @@ BUILDIO_MEM(l, u32)
BUILDIO_MEM(q, u64) BUILDIO_MEM(q, u64)
#define __BUILD_IOPORT_PFX(bus, bwlq, type) \ #define __BUILD_IOPORT_PFX(bus, bwlq, type) \
__BUILD_IOPORT_SINGLE(bus, bwlq, type, ,) \ __BUILD_IOPORT_SINGLE(bus, bwlq, type,) \
__BUILD_IOPORT_SINGLE(bus, bwlq, type, _p, SLOW_DOWN_IO) __BUILD_IOPORT_SINGLE(bus, bwlq, type, _p)
#define BUILDIO_IOPORT(bwlq, type) \ #define BUILDIO_IOPORT(bwlq, type) \
__BUILD_IOPORT_PFX(, bwlq, type) \ __BUILD_IOPORT_PFX(, bwlq, type) \
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment