patch-1.3.93 linux/include/asm-sparc/swift.h
Next file: linux/include/asm-sparc/system.h
Previous file: linux/include/asm-sparc/string.h
Back to the patch index
Back to the overall index
- Lines: 41
- Date:
Sun Apr 21 12:30:34 1996
- Orig file:
v1.3.92/linux/include/asm-sparc/swift.h
- Orig date:
Mon Mar 4 08:50:03 1996
diff -u --recursive --new-file v1.3.92/linux/include/asm-sparc/swift.h linux/include/asm-sparc/swift.h
@@ -1,5 +1,5 @@
/* swift.h: Specific definitions for the _broken_ Swift SRMMU
- * MMU.
+ * MMU module.
*
* Copyright (C) 1996 David S. Miller (davem@caip.rutgers.edu)
*/
@@ -38,6 +38,33 @@
"r" (addr), "i" (ASI_M_DATAC_TAG));
}
+extern inline void swift_flush_dcache(void)
+{
+ unsigned long addr;
+
+ for(addr = 0; addr < (PAGE_SIZE << 2); addr += 16)
+ swift_inv_data_tag(addr);
+}
+
+extern inline void swift_flush_icache(void)
+{
+ unsigned long addr;
+
+ for(addr = 0; addr < (PAGE_SIZE << 2); addr += 16)
+ swift_inv_insn_tag(addr);
+}
+
+extern inline void swift_idflash_clear(void)
+{
+ unsigned long addr;
+
+ for(addr = 0; addr < (PAGE_SIZE << 2); addr += 16) {
+ swift_inv_insn_tag(addr);
+ swift_inv_data_tag(addr);
+ }
+}
+
+/* Swift is so broken, it isn't even safe to use the following. */
extern inline void swift_flush_page(unsigned long page)
{
__asm__ __volatile__("sta %%g0, [%0] %1\n\t" : :
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov
with Sam's (original) version of this