瀏覽代碼

ide: remove ->INW and ->OUTW methods

* Remove no longer used ->INW and ->OUTW methods.

While at it:

* scc_pata.c: scc_ide_{out,in}w() is called only in scc_tf_{load,read}()
  so inline it there.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Bartlomiej Zolnierkiewicz 17 年之前
父節點
當前提交
7c0daf2681
共有 5 個文件被更改,包括 3 次插入47 次删除
  1. 0 2
      drivers/ide/cris/ide-cris.c
  2. 0 3
      drivers/ide/h8300/ide-h8300.c
  3. 0 24
      drivers/ide/ide-iops.c
  4. 3 16
      drivers/ide/pci/scc_pata.c
  5. 0 2
      include/linux/ide.h

+ 0 - 2
drivers/ide/cris/ide-cris.c

@@ -903,10 +903,8 @@ static int __init init_e100_ide(void)
 		hwif->output_data = cris_output_data;
 
 		hwif->OUTB = &cris_ide_outb;
-		hwif->OUTW = &cris_ide_outw;
 		hwif->OUTBSYNC = &cris_ide_outbsync;
 		hwif->INB = &cris_ide_inb;
-		hwif->INW = &cris_ide_inw;
 		hwif->cbl = ATA_CBL_PATA40;
 
 		idx[h] = hwif->index;

+ 0 - 3
drivers/ide/h8300/ide-h8300.c

@@ -176,9 +176,6 @@ static inline void hwif_setup(ide_hwif_t *hwif)
 
 	hwif->input_data  = h8300_input_data;
 	hwif->output_data = h8300_output_data;
-
-	hwif->OUTW  = mm_outw;
-	hwif->INW   = mm_inw;
 }
 
 static int __init h8300_ide_init(void)

+ 0 - 24
drivers/ide/ide-iops.c

@@ -37,11 +37,6 @@ static u8 ide_inb (unsigned long port)
 	return (u8) inb(port);
 }
 
-static u16 ide_inw (unsigned long port)
-{
-	return (u16) inw(port);
-}
-
 static void ide_outb (u8 val, unsigned long port)
 {
 	outb(val, port);
@@ -52,18 +47,11 @@ static void ide_outbsync (ide_drive_t *drive, u8 addr, unsigned long port)
 	outb(addr, port);
 }
 
-static void ide_outw (u16 val, unsigned long port)
-{
-	outw(val, port);
-}
-
 void default_hwif_iops (ide_hwif_t *hwif)
 {
 	hwif->OUTB	= ide_outb;
 	hwif->OUTBSYNC	= ide_outbsync;
-	hwif->OUTW	= ide_outw;
 	hwif->INB	= ide_inb;
-	hwif->INW	= ide_inw;
 }
 
 /*
@@ -75,11 +63,6 @@ static u8 ide_mm_inb (unsigned long port)
 	return (u8) readb((void __iomem *) port);
 }
 
-static u16 ide_mm_inw (unsigned long port)
-{
-	return (u16) readw((void __iomem *) port);
-}
-
 static void ide_mm_outb (u8 value, unsigned long port)
 {
 	writeb(value, (void __iomem *) port);
@@ -90,20 +73,13 @@ static void ide_mm_outbsync (ide_drive_t *drive, u8 value, unsigned long port)
 	writeb(value, (void __iomem *) port);
 }
 
-static void ide_mm_outw (u16 value, unsigned long port)
-{
-	writew(value, (void __iomem *) port);
-}
-
 void default_hwif_mmiops (ide_hwif_t *hwif)
 {
 	hwif->OUTB	= ide_mm_outb;
 	/* Most systems will need to override OUTBSYNC, alas however
 	   this one is controller specific! */
 	hwif->OUTBSYNC	= ide_mm_outbsync;
-	hwif->OUTW	= ide_mm_outw;
 	hwif->INB	= ide_mm_inb;
-	hwif->INW	= ide_mm_inw;
 }
 
 EXPORT_SYMBOL(default_hwif_mmiops);

+ 3 - 16
drivers/ide/pci/scc_pata.c

@@ -126,12 +126,6 @@ static u8 scc_ide_inb(unsigned long port)
 	return (u8)data;
 }
 
-static u16 scc_ide_inw(unsigned long port)
-{
-	u32 data = in_be32((void*)port);
-	return (u16)data;
-}
-
 static void scc_ide_insw(unsigned long port, void *addr, u32 count)
 {
 	u16 *ptr = (u16 *)addr;
@@ -154,11 +148,6 @@ static void scc_ide_outb(u8 addr, unsigned long port)
 	out_be32((void*)port, addr);
 }
 
-static void scc_ide_outw(u16 addr, unsigned long port)
-{
-	out_be32((void*)port, addr);
-}
-
 static void
 scc_ide_outbsync(ide_drive_t * drive, u8 addr, unsigned long port)
 {
@@ -630,8 +619,8 @@ static void scc_tf_load(ide_drive_t *drive, ide_task_t *task)
 	ide_set_irq(drive, 1);
 
 	if (task->tf_flags & IDE_TFLAG_OUT_DATA)
-		scc_ide_outw((tf->hob_data << 8) | tf->data,
-			     io_ports->data_addr);
+		out_be32((void *)io_ports->data_addr,
+			 (tf->hob_data << 8) | tf->data);
 
 	if (task->tf_flags & IDE_TFLAG_OUT_HOB_FEATURE)
 		scc_ide_outb(tf->hob_feature, io_ports->feature_addr);
@@ -666,7 +655,7 @@ static void scc_tf_read(ide_drive_t *drive, ide_task_t *task)
 	struct ide_taskfile *tf = &task->tf;
 
 	if (task->tf_flags & IDE_TFLAG_IN_DATA) {
-		u16 data = scc_ide_inw(io_ports->data_addr);
+		u16 data = (u16)in_be32((void *)io_ports->data_addr);
 
 		tf->data = data & 0xff;
 		tf->hob_data = (data >> 8) & 0xff;
@@ -755,10 +744,8 @@ static void __devinit init_mmio_iops_scc(ide_hwif_t *hwif)
 	hwif->output_data = scc_output_data;
 
 	hwif->INB = scc_ide_inb;
-	hwif->INW = scc_ide_inw;
 	hwif->OUTB = scc_ide_outb;
 	hwif->OUTBSYNC = scc_ide_outbsync;
-	hwif->OUTW = scc_ide_outw;
 
 	hwif->dma_base = dma_base;
 	hwif->config_data = ports->ctl;

+ 0 - 2
include/linux/ide.h

@@ -479,10 +479,8 @@ typedef struct hwif_s {
 
 	void (*OUTB)(u8 addr, unsigned long port);
 	void (*OUTBSYNC)(ide_drive_t *drive, u8 addr, unsigned long port);
-	void (*OUTW)(u16 addr, unsigned long port);
 
 	u8  (*INB)(unsigned long port);
-	u16 (*INW)(unsigned long port);
 
 	/* dma physical region descriptor table (cpu view) */
 	unsigned int	*dmatable_cpu;