patch-2.3.16 linux/include/asm-sparc64/io.h
Next file: linux/include/asm-sparc64/iommu.h
Previous file: linux/include/asm-sparc64/ide.h
Back to the patch index
Back to the overall index
- Lines: 82
- Date:
Tue Aug 31 11:23:30 1999
- Orig file:
v2.3.15/linux/include/asm-sparc64/io.h
- Orig date:
Sat May 15 11:12:10 1999
diff -u --recursive --new-file v2.3.15/linux/include/asm-sparc64/io.h linux/include/asm-sparc64/io.h
@@ -1,4 +1,4 @@
-/* $Id: io.h,v 1.20 1999/05/14 07:23:18 davem Exp $ */
+/* $Id: io.h,v 1.21 1999/08/30 10:14:44 davem Exp $ */
#ifndef __SPARC64_IO_H
#define __SPARC64_IO_H
@@ -61,7 +61,7 @@
__asm__ __volatile__("lduba [%1] %2, %0"
: "=r" (ret)
- : "r" (addr), "i" (ASI_PL));
+ : "r" (addr), "i" (ASI_PHYS_BYPASS_EC_E_L));
return ret;
}
@@ -72,7 +72,7 @@
__asm__ __volatile__("lduha [%1] %2, %0"
: "=r" (ret)
- : "r" (addr), "i" (ASI_PL));
+ : "r" (addr), "i" (ASI_PHYS_BYPASS_EC_E_L));
return ret;
}
@@ -83,7 +83,7 @@
__asm__ __volatile__("lduwa [%1] %2, %0"
: "=r" (ret)
- : "r" (addr), "i" (ASI_PL));
+ : "r" (addr), "i" (ASI_PHYS_BYPASS_EC_E_L));
return ret;
}
@@ -92,21 +92,21 @@
{
__asm__ __volatile__("stba %0, [%1] %2"
: /* no outputs */
- : "r" (b), "r" (addr), "i" (ASI_PL));
+ : "r" (b), "r" (addr), "i" (ASI_PHYS_BYPASS_EC_E_L));
}
extern __inline__ void outw(unsigned short w, unsigned long addr)
{
__asm__ __volatile__("stha %0, [%1] %2"
: /* no outputs */
- : "r" (w), "r" (addr), "i" (ASI_PL));
+ : "r" (w), "r" (addr), "i" (ASI_PHYS_BYPASS_EC_E_L));
}
extern __inline__ void outl(unsigned int l, unsigned long addr)
{
__asm__ __volatile__("stwa %0, [%1] %2"
: /* no outputs */
- : "r" (l), "r" (addr), "i" (ASI_PL));
+ : "r" (l), "r" (addr), "i" (ASI_PHYS_BYPASS_EC_E_L));
}
#define inb_p inb
@@ -190,19 +190,11 @@
return retval;
}
-/*
- * On the sparc we have the whole physical IO address space mapped at all
- * times, so ioremap() and iounmap() do not need to do anything.
+/* On sparc64 we have the whole physical IO address space accessible
+ * using physically addressed loads and stores, so this does nothing.
*/
-extern __inline__ void *ioremap(unsigned long offset, unsigned long size)
-{
- return __va(offset);
-}
-
-extern __inline__ void iounmap(void *addr)
-{
-}
-
+#define ioremap(__offset, __size) ((void *)(__offset))
+#define iounmap(__addr) do { } while(0)
extern void sparc_ultra_mapioaddr(unsigned long physaddr,
unsigned long virt_addr,
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)