patch-2.4.2 linux/include/asm-arm/arch-ebsa285/io.h

Next file: linux/include/asm-arm/arch-nexuspci/io.h
Previous file: linux/include/asm-arm/arch-ebsa110/processor.h
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.4.1/linux/include/asm-arm/arch-ebsa285/io.h linux/include/asm-arm/arch-ebsa285/io.h
@@ -19,7 +19,7 @@
 /*
  * Translation of various region addresses to virtual addresses
  */
-#define __io_pci(a)		(PCIO_BASE + (a))
+#define __io(a)			(PCIO_BASE + (a))
 #if 1
 #define __mem_pci(a)		((unsigned long)(a))
 #define __mem_isa(a)		(PCIMEM_BASE + (unsigned long)(a))
@@ -42,41 +42,11 @@
 #define __mem_isa(a)		___mem_isa((unsigned long)(a))
 #endif
 
-/* the following macro is depreciated */
-#define __ioaddr(p)		__io_pci(p)
-
 /*
  * Generic virtual read/write
  */
-#define __arch_getb(a)		(*(volatile unsigned char *)(a))
-#define __arch_getl(a)		(*(volatile unsigned int  *)(a))
-
-extern __inline__ unsigned int __arch_getw(unsigned long a)
-{
-	unsigned int value;
-	__asm__ __volatile__("ldr%?h	%0, [%1, #0]	@ getw"
-		: "=&r" (value)
-		: "r" (a));
-	return value;
-}
-
-
-#define __arch_putb(v,a)	(*(volatile unsigned char *)(a) = (v))
-#define __arch_putl(v,a)	(*(volatile unsigned int  *)(a) = (v))
-
-extern __inline__ void __arch_putw(unsigned int value, unsigned long a)
-{
-	__asm__ __volatile__("str%?h	%0, [%1, #0]	@ putw"
-		: : "r" (value), "r" (a));
-}
-
-#define inb(p)			__arch_getb(__io_pci(p))
-#define inw(p)			__arch_getw(__io_pci(p))
-#define inl(p)			__arch_getl(__io_pci(p))
-
-#define outb(v,p)		__arch_putb(v,__io_pci(p))
-#define outw(v,p)		__arch_putw(v,__io_pci(p))
-#define outl(v,p)		__arch_putl(v,__io_pci(p))
+#define __arch_getw(a)		(*(volatile unsigned short *)(a))
+#define __arch_putw(v,a)	(*(volatile unsigned short *)(a) = (v))
 
 #include <asm/hardware/dec21285.h>
 
@@ -85,20 +55,9 @@
  * and convert a PCI memory address to a physical
  * address for the page tables.
  */
-#define valid_ioaddr(off,sz)	((off) < 0x80000000 && (off) + (sz) <= 0x80000000)
-#define io_to_phys(off)		((off) + DC21285_PCI_MEM)
+#define iomem_valid_addr(iomem,sz) \
+	((iomem) < 0x80000000 && (iomem) + (sz) <= 0x80000000)
 
-/*
- * ioremap takes a PCI memory address, as specified in
- * linux/Documentation/IO-mapping.txt
- */
-#define __arch_ioremap(off,size,nocache)			\
-({								\
-	unsigned long _off = (off), _size = (size);		\
-	void *_ret = (void *)0;					\
-	if (valid_ioaddr(_off, _size))				\
-		_ret = __ioremap(io_to_phys(_off), _size, 0);	\
-	_ret;							\
-})
+#define iomem_to_phys(iomem)	((iomem) + DC21285_PCI_MEM)
 
 #endif

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)