Loading drivers/scsi/ahci.c +16 −14 Original line number Diff line number Diff line Loading @@ -48,7 +48,7 @@ #include <asm/io.h> #define DRV_NAME "ahci" #define DRV_VERSION "1.01" #define DRV_VERSION "1.2" enum { Loading Loading @@ -558,13 +558,15 @@ static void ahci_qc_prep(struct ata_queued_cmd *qc) pp->cmd_slot[0].opts |= cpu_to_le32(n_elem << 16); } static void ahci_intr_error(struct ata_port *ap, u32 irq_stat) static void ahci_restart_port(struct ata_port *ap, u32 irq_stat) { void __iomem *mmio = ap->host_set->mmio_base; void __iomem *port_mmio = ahci_port_base(mmio, ap->port_no); u32 tmp; int work; if ((ap->device[0].class != ATA_DEV_ATAPI) || ((irq_stat & PORT_IRQ_TF_ERR) == 0)) printk(KERN_WARNING "ata%u: port reset, " "p_is %x is %x pis %x cmd %x tf %x ss %x se %x\n", ap->id, Loading Loading @@ -632,7 +634,7 @@ static void ahci_eng_timeout(struct ata_port *ap) printk(KERN_ERR "ata%u: BUG: timeout without command\n", ap->id); } else { ahci_intr_error(ap, readl(port_mmio + PORT_IRQ_STAT)); ahci_restart_port(ap, readl(port_mmio + PORT_IRQ_STAT)); /* hack alert! We cannot use the supplied completion * function from inside the ->eh_strategy_handler() thread. Loading Loading @@ -677,7 +679,7 @@ static inline int ahci_host_intr(struct ata_port *ap, struct ata_queued_cmd *qc) err_mask = AC_ERR_HOST_BUS; /* command processing has stopped due to error; restart */ ahci_intr_error(ap, status); ahci_restart_port(ap, status); if (qc) ata_qc_complete(qc, err_mask); Loading drivers/scsi/ata_piix.c +1 −1 Original line number Diff line number Diff line Loading @@ -50,7 +50,7 @@ #include <linux/libata.h> #define DRV_NAME "ata_piix" #define DRV_VERSION "1.04" #define DRV_VERSION "1.05" enum { PIIX_IOCFG = 0x54, /* IDE I/O configuration register */ Loading drivers/scsi/libata-core.c +4 −2 Original line number Diff line number Diff line Loading @@ -1575,6 +1575,8 @@ int ata_timing_compute(struct ata_device *adev, unsigned short speed, if (!(s = ata_timing_find_mode(speed))) return -EINVAL; memcpy(t, s, sizeof(*s)); /* * If the drive is an EIDE drive, it can tell us it needs extended * PIO/MW_DMA cycle timing. Loading @@ -1595,7 +1597,7 @@ int ata_timing_compute(struct ata_device *adev, unsigned short speed, * Convert the timing to bus clock counts. */ ata_timing_quantize(s, t, T, UT); ata_timing_quantize(t, t, T, UT); /* * Even in DMA/UDMA modes we still use PIO access for IDENTIFY, S.M.A.R.T Loading drivers/scsi/libata.h +1 −1 Original line number Diff line number Diff line Loading @@ -29,7 +29,7 @@ #define __LIBATA_H__ #define DRV_NAME "libata" #define DRV_VERSION "1.12" /* must be exactly four chars */ #define DRV_VERSION "1.20" /* must be exactly four chars */ struct ata_scsi_args { u16 *id; Loading drivers/scsi/sata_promise.c +1 −1 Original line number Diff line number Diff line Loading @@ -46,7 +46,7 @@ #include "sata_promise.h" #define DRV_NAME "sata_promise" #define DRV_VERSION "1.02" #define DRV_VERSION "1.03" enum { Loading Loading
drivers/scsi/ahci.c +16 −14 Original line number Diff line number Diff line Loading @@ -48,7 +48,7 @@ #include <asm/io.h> #define DRV_NAME "ahci" #define DRV_VERSION "1.01" #define DRV_VERSION "1.2" enum { Loading Loading @@ -558,13 +558,15 @@ static void ahci_qc_prep(struct ata_queued_cmd *qc) pp->cmd_slot[0].opts |= cpu_to_le32(n_elem << 16); } static void ahci_intr_error(struct ata_port *ap, u32 irq_stat) static void ahci_restart_port(struct ata_port *ap, u32 irq_stat) { void __iomem *mmio = ap->host_set->mmio_base; void __iomem *port_mmio = ahci_port_base(mmio, ap->port_no); u32 tmp; int work; if ((ap->device[0].class != ATA_DEV_ATAPI) || ((irq_stat & PORT_IRQ_TF_ERR) == 0)) printk(KERN_WARNING "ata%u: port reset, " "p_is %x is %x pis %x cmd %x tf %x ss %x se %x\n", ap->id, Loading Loading @@ -632,7 +634,7 @@ static void ahci_eng_timeout(struct ata_port *ap) printk(KERN_ERR "ata%u: BUG: timeout without command\n", ap->id); } else { ahci_intr_error(ap, readl(port_mmio + PORT_IRQ_STAT)); ahci_restart_port(ap, readl(port_mmio + PORT_IRQ_STAT)); /* hack alert! We cannot use the supplied completion * function from inside the ->eh_strategy_handler() thread. Loading Loading @@ -677,7 +679,7 @@ static inline int ahci_host_intr(struct ata_port *ap, struct ata_queued_cmd *qc) err_mask = AC_ERR_HOST_BUS; /* command processing has stopped due to error; restart */ ahci_intr_error(ap, status); ahci_restart_port(ap, status); if (qc) ata_qc_complete(qc, err_mask); Loading
drivers/scsi/ata_piix.c +1 −1 Original line number Diff line number Diff line Loading @@ -50,7 +50,7 @@ #include <linux/libata.h> #define DRV_NAME "ata_piix" #define DRV_VERSION "1.04" #define DRV_VERSION "1.05" enum { PIIX_IOCFG = 0x54, /* IDE I/O configuration register */ Loading
drivers/scsi/libata-core.c +4 −2 Original line number Diff line number Diff line Loading @@ -1575,6 +1575,8 @@ int ata_timing_compute(struct ata_device *adev, unsigned short speed, if (!(s = ata_timing_find_mode(speed))) return -EINVAL; memcpy(t, s, sizeof(*s)); /* * If the drive is an EIDE drive, it can tell us it needs extended * PIO/MW_DMA cycle timing. Loading @@ -1595,7 +1597,7 @@ int ata_timing_compute(struct ata_device *adev, unsigned short speed, * Convert the timing to bus clock counts. */ ata_timing_quantize(s, t, T, UT); ata_timing_quantize(t, t, T, UT); /* * Even in DMA/UDMA modes we still use PIO access for IDENTIFY, S.M.A.R.T Loading
drivers/scsi/libata.h +1 −1 Original line number Diff line number Diff line Loading @@ -29,7 +29,7 @@ #define __LIBATA_H__ #define DRV_NAME "libata" #define DRV_VERSION "1.12" /* must be exactly four chars */ #define DRV_VERSION "1.20" /* must be exactly four chars */ struct ata_scsi_args { u16 *id; Loading
drivers/scsi/sata_promise.c +1 −1 Original line number Diff line number Diff line Loading @@ -46,7 +46,7 @@ #include "sata_promise.h" #define DRV_NAME "sata_promise" #define DRV_VERSION "1.02" #define DRV_VERSION "1.03" enum { Loading