patch-2.4.22 linux-2.4.22/include/asm-mips/ide.h

Next file: linux-2.4.22/include/asm-mips/inventory.h
Previous file: linux-2.4.22/include/asm-mips/i8259.h
Back to the patch index
Back to the overall index

diff -urN linux-2.4.21/include/asm-mips/ide.h linux-2.4.22/include/asm-mips/ide.h
@@ -7,7 +7,6 @@
  *
  * Copyright (C) 1994-1996  Linus Torvalds & authors
  */
-
 #ifndef __ASM_IDE_H
 #define __ASM_IDE_H
 
@@ -44,7 +43,7 @@
 }
 
 static inline void ide_init_hwif_ports(hw_regs_t *hw, ide_ioreg_t data_port,
-                                       ide_ioreg_t ctrl_port, int *irq)
+	ide_ioreg_t ctrl_port, int *irq)
 {
 	ide_ops->ide_init_hwif_ports(hw, data_port, ctrl_port, irq);
 }
@@ -56,6 +55,7 @@
 	int index;
 
 	for(index = 0; index < MAX_HWIFS; index++) {
+		memset(&hw, 0, sizeof hw);
 		ide_init_hwif_ports(&hw, ide_default_io_base(index), 0, NULL);
 		hw.irq = ide_default_irq(ide_default_io_base(index));
 		ide_register_hw(&hw, NULL);
@@ -63,63 +63,12 @@
 #endif /* CONFIG_BLK_DEV_IDEPCI */
 }
 
-#undef  SUPPORT_VLB_SYNC
-#define SUPPORT_VLB_SYNC 0
-
-#if defined(__MIPSEB__)
-
-/* get rid of defs from io.h - ide has its private and conflicting versions */
-#ifdef insw
-#undef insw
-#endif
-#ifdef outsw
-#undef outsw
-#endif
-#ifdef insl
-#undef insl
-#endif
-#ifdef outsl
-#undef outsl
+#ifdef CONFIG_PCMCIA_SIBYTE
+#define IDE_ARCH_ACK_INTR
+#define ide_ack_intr(hwif)	((hwif)->hw.ack_intr ? (hwif)->hw.ack_intr(hwif) : 1)
 #endif
 
-#define insw(port, addr, count) ide_insw(port, addr, count)
-#define insl(port, addr, count) ide_insl(port, addr, count)
-#define outsw(port, addr, count) ide_outsw(port, addr, count)
-#define outsl(port, addr, count) ide_outsl(port, addr, count)
-
-static inline void ide_insw(unsigned long port, void *addr, unsigned int count)
-{
-	while (count--) {
-		*(u16 *)addr = *(volatile u16 *)(mips_io_port_base + port);
-		addr += 2;
-	}
-}
-
-static inline void ide_outsw(unsigned long port, void *addr, unsigned int count)
-{
-	while (count--) {
-		*(volatile u16 *)(mips_io_port_base + (port)) = *(u16 *)addr;
-		addr += 2;
-	}
-}
-
-static inline void ide_insl(unsigned long port, void *addr, unsigned int count)
-{
-	while (count--) {
-		*(u32 *)addr = *(volatile u32 *)(mips_io_port_base + port);
-		addr += 4;
-	}
-}
-
-static inline void ide_outsl(unsigned long port, void *addr, unsigned int count)
-{
-	while (count--) {
-		*(volatile u32 *)(mips_io_port_base + (port)) = *(u32 *)addr;
-		addr += 4;
-	}
-}
-
-#endif
+#include <asm-generic/ide_iops.h>
 
 #endif /* __KERNEL__ */
 

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