Loading drivers/scsi/sata_mv.c +10 −1 Original line number Original line Diff line number Diff line Loading @@ -509,6 +509,12 @@ static const struct mv_hw_ops mv6xxx_ops = { .reset_bus = mv_reset_pci_bus, .reset_bus = mv_reset_pci_bus, }; }; /* * module options */ static int msi; /* Use PCI msi; either zero (off, default) or non-zero */ /* /* * Functions * Functions */ */ Loading Loading @@ -2191,7 +2197,7 @@ static int mv_init_one(struct pci_dev *pdev, const struct pci_device_id *ent) } } /* Enable interrupts */ /* Enable interrupts */ if (pci_enable_msi(pdev) == 0) { if (msi && pci_enable_msi(pdev) == 0) { hpriv->hp_flags |= MV_HP_FLAG_MSI; hpriv->hp_flags |= MV_HP_FLAG_MSI; } else { } else { pci_intx(pdev, 1); pci_intx(pdev, 1); Loading Loading @@ -2246,5 +2252,8 @@ MODULE_LICENSE("GPL"); MODULE_DEVICE_TABLE(pci, mv_pci_tbl); MODULE_DEVICE_TABLE(pci, mv_pci_tbl); MODULE_VERSION(DRV_VERSION); MODULE_VERSION(DRV_VERSION); module_param(msi, int, 0444); MODULE_PARM_DESC(msi, "Enable use of PCI MSI (0=off, 1=on)"); module_init(mv_init); module_init(mv_init); module_exit(mv_exit); module_exit(mv_exit); drivers/scsi/sata_sil.c +8 −2 Original line number Original line Diff line number Diff line Loading @@ -231,6 +231,10 @@ MODULE_LICENSE("GPL"); MODULE_DEVICE_TABLE(pci, sil_pci_tbl); MODULE_DEVICE_TABLE(pci, sil_pci_tbl); MODULE_VERSION(DRV_VERSION); MODULE_VERSION(DRV_VERSION); static int slow_down = 0; module_param(slow_down, int, 0444); MODULE_PARM_DESC(slow_down, "Sledgehammer used to work around random problems, by limiting commands to 15 sectors (0=off, 1=on)"); static unsigned char sil_get_device_cache_line(struct pci_dev *pdev) static unsigned char sil_get_device_cache_line(struct pci_dev *pdev) { { Loading Loading @@ -354,8 +358,10 @@ static void sil_dev_config(struct ata_port *ap, struct ata_device *dev) } } /* limit requests to 15 sectors */ /* limit requests to 15 sectors */ if ((ap->flags & SIL_FLAG_MOD15WRITE) && (quirks & SIL_QUIRK_MOD15WRITE)) { if (slow_down || printk(KERN_INFO "ata%u(%u): applying Seagate errata fix\n", ((ap->flags & SIL_FLAG_MOD15WRITE) && (quirks & SIL_QUIRK_MOD15WRITE))) { printk(KERN_INFO "ata%u(%u): applying Seagate errata fix (mod15write workaround)\n", ap->id, dev->devno); ap->id, dev->devno); ap->host->max_sectors = 15; ap->host->max_sectors = 15; ap->host->hostt->max_sectors = 15; ap->host->hostt->max_sectors = 15; Loading Loading
drivers/scsi/sata_mv.c +10 −1 Original line number Original line Diff line number Diff line Loading @@ -509,6 +509,12 @@ static const struct mv_hw_ops mv6xxx_ops = { .reset_bus = mv_reset_pci_bus, .reset_bus = mv_reset_pci_bus, }; }; /* * module options */ static int msi; /* Use PCI msi; either zero (off, default) or non-zero */ /* /* * Functions * Functions */ */ Loading Loading @@ -2191,7 +2197,7 @@ static int mv_init_one(struct pci_dev *pdev, const struct pci_device_id *ent) } } /* Enable interrupts */ /* Enable interrupts */ if (pci_enable_msi(pdev) == 0) { if (msi && pci_enable_msi(pdev) == 0) { hpriv->hp_flags |= MV_HP_FLAG_MSI; hpriv->hp_flags |= MV_HP_FLAG_MSI; } else { } else { pci_intx(pdev, 1); pci_intx(pdev, 1); Loading Loading @@ -2246,5 +2252,8 @@ MODULE_LICENSE("GPL"); MODULE_DEVICE_TABLE(pci, mv_pci_tbl); MODULE_DEVICE_TABLE(pci, mv_pci_tbl); MODULE_VERSION(DRV_VERSION); MODULE_VERSION(DRV_VERSION); module_param(msi, int, 0444); MODULE_PARM_DESC(msi, "Enable use of PCI MSI (0=off, 1=on)"); module_init(mv_init); module_init(mv_init); module_exit(mv_exit); module_exit(mv_exit);
drivers/scsi/sata_sil.c +8 −2 Original line number Original line Diff line number Diff line Loading @@ -231,6 +231,10 @@ MODULE_LICENSE("GPL"); MODULE_DEVICE_TABLE(pci, sil_pci_tbl); MODULE_DEVICE_TABLE(pci, sil_pci_tbl); MODULE_VERSION(DRV_VERSION); MODULE_VERSION(DRV_VERSION); static int slow_down = 0; module_param(slow_down, int, 0444); MODULE_PARM_DESC(slow_down, "Sledgehammer used to work around random problems, by limiting commands to 15 sectors (0=off, 1=on)"); static unsigned char sil_get_device_cache_line(struct pci_dev *pdev) static unsigned char sil_get_device_cache_line(struct pci_dev *pdev) { { Loading Loading @@ -354,8 +358,10 @@ static void sil_dev_config(struct ata_port *ap, struct ata_device *dev) } } /* limit requests to 15 sectors */ /* limit requests to 15 sectors */ if ((ap->flags & SIL_FLAG_MOD15WRITE) && (quirks & SIL_QUIRK_MOD15WRITE)) { if (slow_down || printk(KERN_INFO "ata%u(%u): applying Seagate errata fix\n", ((ap->flags & SIL_FLAG_MOD15WRITE) && (quirks & SIL_QUIRK_MOD15WRITE))) { printk(KERN_INFO "ata%u(%u): applying Seagate errata fix (mod15write workaround)\n", ap->id, dev->devno); ap->id, dev->devno); ap->host->max_sectors = 15; ap->host->max_sectors = 15; ap->host->hostt->max_sectors = 15; ap->host->hostt->max_sectors = 15; Loading