#include <asm/bitops.h>
-static u8 ide_inb (u32 port)
+static u8 ide_inb (ide_ioreg_t port)
{
return (u8) inb(port);
}
-static u16 ide_inw (u32 port)
+static u16 ide_inw (ide_ioreg_t port)
{
return (u16) inw(port);
}
-static void ide_insw (u32 port, void *addr, u32 count)
+static void ide_insw (ide_ioreg_t port, void *addr, u32 count)
{
return insw(port, addr, count);
}
-static u32 ide_inl (u32 port)
+static u32 ide_inl (ide_ioreg_t port)
{
return (u32) inl(port);
}
-static void ide_insl (u32 port, void *addr, u32 count)
+static void ide_insl (ide_ioreg_t port, void *addr, u32 count)
{
insl(port, addr, count);
}
-static void ide_outb (u8 addr, u32 port)
+static void ide_outb (u8 addr, ide_ioreg_t port)
{
outb(addr, port);
}
-static void ide_outw (u16 addr, u32 port)
+static void ide_outw (u16 addr, ide_ioreg_t port)
{
outw(addr, port);
}
-static void ide_outsw (u32 port, void *addr, u32 count)
+static void ide_outsw (ide_ioreg_t port, void *addr, u32 count)
{
outsw(port, addr, count);
}
-static void ide_outl (u32 addr, u32 port)
+static void ide_outl (u32 addr, ide_ioreg_t port)
{
outl(addr, port);
}
-static void ide_outsl (u32 port, void *addr, u32 count)
+static void ide_outsl (ide_ioreg_t port, void *addr, u32 count)
{
return outsl(port, addr, count);
}
EXPORT_SYMBOL(default_hwif_iops);
-static u8 ide_mm_inb (u32 port)
+static u8 ide_mm_inb (ide_ioreg_t port)
{
return (u8) readb(port);
}
-static u16 ide_mm_inw (u32 port)
+static u16 ide_mm_inw (ide_ioreg_t port)
{
return (u16) readw(port);
}
-static void ide_mm_insw (u32 port, void *addr, u32 count)
+static void ide_mm_insw (ide_ioreg_t port, void *addr, u32 count)
{
#ifdef CONFIG_PPC
/* Can we move the barrier out of the loop ? */
#endif
}
-static u32 ide_mm_inl (u32 port)
+static u32 ide_mm_inl (ide_ioreg_t port)
{
return (u32) readl(port);
}
-static void ide_mm_insl (u32 port, void *addr, u32 count)
+static void ide_mm_insl (ide_ioreg_t port, void *addr, u32 count)
{
#ifdef CONFIG_PPC
/* Can we move the barrier out of the loop ? */
#endif
}
-static void ide_mm_outb (u8 value, u32 port)
+static void ide_mm_outb (u8 value, ide_ioreg_t port)
{
writeb(value, port);
}
-static void ide_mm_outw (u16 value, u32 port)
+static void ide_mm_outw (u16 value, ide_ioreg_t port)
{
writew(value, port);
}
-static void ide_mm_outsw (u32 port, void *addr, u32 count)
+static void ide_mm_outsw (ide_ioreg_t port, void *addr, u32 count)
{
#ifdef CONFIG_PPC
/* Can we move the barrier out of the loop ? */
#endif
}
-static void ide_mm_outl (u32 value, u32 port)
+static void ide_mm_outl (u32 value, ide_ioreg_t port)
{
writel(value, port);
}
-static void ide_mm_outsl (u32 port, void *addr, u32 count)
+static void ide_mm_outsl (ide_ioreg_t port, void *addr, u32 count)
{
#ifdef CONFIG_PPC
while (count--) { __raw_writel(*(u32 *)addr, port); iobarrier_w(); addr += 4; }
typedef struct ide_io_ops_s {
/* insert io operations here! */
- void (*OUTB)(u8 addr, u32 port);
- void (*OUTW)(u16 addr, u32 port);
- void (*OUTL)(u32 addr, u32 port);
- void (*OUTSW)(u32 port, void *addr, u32 count);
- void (*OUTSL)(u32 port, void *addr, u32 count);
-
- u8 (*INB)(u32 port);
- u16 (*INW)(u32 port);
- u32 (*INL)(u32 port);
- void (*INSW)(u32 port, void *addr, u32 count);
- void (*INSL)(u32 port, void *addr, u32 count);
+ void (*OUTB)(u8 addr, ide_ioreg_t port);
+ void (*OUTW)(u16 addr, ide_ioreg_t port);
+ void (*OUTL)(u32 addr, ide_ioreg_t port);
+ void (*OUTSW)(ide_ioreg_t port, void *addr, u32 count);
+ void (*OUTSL)(ide_ioreg_t port, void *addr, u32 count);
+
+ u8 (*INB)(ide_ioreg_t port);
+ u16 (*INW)(ide_ioreg_t port);
+ u32 (*INL)(ide_ioreg_t port);
+ void (*INSW)(ide_ioreg_t port, void *addr, u32 count);
+ void (*INSL)(ide_ioreg_t port, void *addr, u32 count);
} ide_io_ops_t;
/*
#if 0
ide_io_ops_t *iops;
#else
- void (*OUTB)(u8 addr, u32 port);
- void (*OUTW)(u16 addr, u32 port);
- void (*OUTL)(u32 addr, u32 port);
- void (*OUTSW)(u32 port, void *addr, u32 count);
- void (*OUTSL)(u32 port, void *addr, u32 count);
-
- u8 (*INB)(u32 port);
- u16 (*INW)(u32 port);
- u32 (*INL)(u32 port);
- void (*INSW)(u32 port, void *addr, u32 count);
- void (*INSL)(u32 port, void *addr, u32 count);
+ void (*OUTB)(u8 addr, ide_ioreg_t port);
+ void (*OUTW)(u16 addr, ide_ioreg_t port);
+ void (*OUTL)(u32 addr, ide_ioreg_t port);
+ void (*OUTSW)(ide_ioreg_t port, void *addr, u32 count);
+ void (*OUTSL)(ide_ioreg_t port, void *addr, u32 count);
+
+ u8 (*INB)(ide_ioreg_t port);
+ u16 (*INW)(ide_ioreg_t port);
+ u32 (*INL)(ide_ioreg_t port);
+ void (*INSW)(ide_ioreg_t port, void *addr, u32 count);
+ void (*INSL)(ide_ioreg_t port, void *addr, u32 count);
#endif
/* dma physical region descriptor table (cpu view) */