siimage: remove resetproc() method
authorSergei Shtylyov <sshtylyov@ru.mvista.com>
Tue, 27 Nov 2007 20:35:53 +0000 (21:35 +0100)
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Tue, 27 Nov 2007 20:35:53 +0000 (21:35 +0100)
The intent behind siimage_reset() was probably to hard reset the interface and
the SATA PHY but as the code writes to two reserved bits instead, it obviously
has been ineffective from the start. So, just remove it.

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
drivers/ide/pci/siimage.c

index 6d99441c605be1836843c514de2a780b8dcee804..5709c252543b5c7a68a4b04064f26e85ef8ac2dc 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * linux/drivers/ide/pci/siimage.c             Version 1.18    Oct 18 2007
+ * linux/drivers/ide/pci/siimage.c             Version 1.19    Nov 16 2007
  *
  * Copyright (C) 2001-2002     Andre Hedrick <andre@linux-ide.org>
  * Copyright (C) 2003          Red Hat <alan@redhat.com>
@@ -459,48 +459,6 @@ static void sil_sata_pre_reset(ide_drive_t *drive)
        }
 }
 
-/**
- *     siimage_reset   -       reset a device on an siimage controller
- *     @drive: drive to reset
- *
- *     Perform a controller level reset fo the device. For
- *     SATA we must also check the PHY.
- */
-static void siimage_reset (ide_drive_t *drive)
-{
-       ide_hwif_t *hwif        = HWIF(drive);
-       u8 reset                = 0;
-       unsigned long addr      = siimage_selreg(hwif, 0);
-
-       if (hwif->mmio) {
-               reset = hwif->INB(addr);
-               hwif->OUTB((reset|0x03), addr);
-               /* FIXME:posting */
-               udelay(25);
-               hwif->OUTB(reset, addr);
-               (void) hwif->INB(addr);
-       } else {
-               pci_read_config_byte(hwif->pci_dev, addr, &reset);
-               pci_write_config_byte(hwif->pci_dev, addr, reset|0x03);
-               udelay(25);
-               pci_write_config_byte(hwif->pci_dev, addr, reset);
-               pci_read_config_byte(hwif->pci_dev, addr, &reset);
-       }
-
-       if (SATA_STATUS_REG) {
-               /* SATA_STATUS_REG is valid only when in MMIO mode */
-               u32 sata_stat = readl((void __iomem *)SATA_STATUS_REG);
-               printk(KERN_WARNING "%s: reset phy, status=0x%08x, %s\n",
-                       hwif->name, sata_stat, __FUNCTION__);
-               if (!(sata_stat)) {
-                       printk(KERN_WARNING "%s: reset phy dead, status=0x%08x\n",
-                               hwif->name, sata_stat);
-                       drive->failures++;
-               }
-       }
-}
-
 /**
  *     proc_reports_siimage            -       add siimage controller to proc
  *     @dev: PCI device
@@ -857,7 +815,6 @@ static void __devinit init_hwif_siimage(ide_hwif_t *hwif)
 {
        u8 sata = is_sata(hwif);
 
-       hwif->resetproc = &siimage_reset;
        hwif->set_pio_mode = &sil_set_pio_mode;
        hwif->set_dma_mode = &sil_set_dma_mode;