diff options
| -rw-r--r-- | drivers/ide/cmd64x.c | 6 | ||||
| -rw-r--r-- | drivers/ide/cs5535.c | 1 | ||||
| -rw-r--r-- | drivers/ide/ide-ioctls.c | 2 | ||||
| -rw-r--r-- | drivers/ide/ide-probe.c | 9 | ||||
| -rw-r--r-- | drivers/ide/slc90e66.c | 3 |
5 files changed, 7 insertions, 14 deletions
diff --git a/drivers/ide/cmd64x.c b/drivers/ide/cmd64x.c index 680e5975217f..ca0c46f6580a 100644 --- a/drivers/ide/cmd64x.c +++ b/drivers/ide/cmd64x.c | |||
| @@ -379,7 +379,8 @@ static const struct ide_port_info cmd64x_chipsets[] __devinitdata = { | |||
| 379 | .enablebits = {{0x00,0x00,0x00}, {0x51,0x08,0x08}}, | 379 | .enablebits = {{0x00,0x00,0x00}, {0x51,0x08,0x08}}, |
| 380 | .port_ops = &cmd64x_port_ops, | 380 | .port_ops = &cmd64x_port_ops, |
| 381 | .host_flags = IDE_HFLAG_CLEAR_SIMPLEX | | 381 | .host_flags = IDE_HFLAG_CLEAR_SIMPLEX | |
| 382 | IDE_HFLAG_ABUSE_PREFETCH, | 382 | IDE_HFLAG_ABUSE_PREFETCH | |
| 383 | IDE_HFLAG_SERIALIZE, | ||
| 383 | .pio_mask = ATA_PIO5, | 384 | .pio_mask = ATA_PIO5, |
| 384 | .mwdma_mask = ATA_MWDMA2, | 385 | .mwdma_mask = ATA_MWDMA2, |
| 385 | .udma_mask = 0x00, /* no udma */ | 386 | .udma_mask = 0x00, /* no udma */ |
| @@ -389,7 +390,8 @@ static const struct ide_port_info cmd64x_chipsets[] __devinitdata = { | |||
| 389 | .init_chipset = init_chipset_cmd64x, | 390 | .init_chipset = init_chipset_cmd64x, |
| 390 | .enablebits = {{0x51,0x04,0x04}, {0x51,0x08,0x08}}, | 391 | .enablebits = {{0x51,0x04,0x04}, {0x51,0x08,0x08}}, |
| 391 | .port_ops = &cmd648_port_ops, | 392 | .port_ops = &cmd648_port_ops, |
| 392 | .host_flags = IDE_HFLAG_ABUSE_PREFETCH, | 393 | .host_flags = IDE_HFLAG_ABUSE_PREFETCH | |
| 394 | IDE_HFLAG_SERIALIZE, | ||
| 393 | .pio_mask = ATA_PIO5, | 395 | .pio_mask = ATA_PIO5, |
| 394 | .mwdma_mask = ATA_MWDMA2, | 396 | .mwdma_mask = ATA_MWDMA2, |
| 395 | .udma_mask = ATA_UDMA2, | 397 | .udma_mask = ATA_UDMA2, |
diff --git a/drivers/ide/cs5535.c b/drivers/ide/cs5535.c index 983d957a0189..b883838adc24 100644 --- a/drivers/ide/cs5535.c +++ b/drivers/ide/cs5535.c | |||
| @@ -187,6 +187,7 @@ static int __devinit cs5535_init_one(struct pci_dev *dev, | |||
| 187 | 187 | ||
| 188 | static const struct pci_device_id cs5535_pci_tbl[] = { | 188 | static const struct pci_device_id cs5535_pci_tbl[] = { |
| 189 | { PCI_VDEVICE(NS, PCI_DEVICE_ID_NS_CS5535_IDE), 0 }, | 189 | { PCI_VDEVICE(NS, PCI_DEVICE_ID_NS_CS5535_IDE), 0 }, |
| 190 | { PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_CS5535_IDE), }, | ||
| 190 | { 0, }, | 191 | { 0, }, |
| 191 | }; | 192 | }; |
| 192 | 193 | ||
diff --git a/drivers/ide/ide-ioctls.c b/drivers/ide/ide-ioctls.c index d3440b5010a5..6e7ae2b6cfc6 100644 --- a/drivers/ide/ide-ioctls.c +++ b/drivers/ide/ide-ioctls.c | |||
| @@ -162,7 +162,7 @@ static int ide_cmd_ioctl(ide_drive_t *drive, unsigned long arg) | |||
| 162 | if (tf->command == ATA_CMD_SET_FEATURES && | 162 | if (tf->command == ATA_CMD_SET_FEATURES && |
| 163 | tf->feature == SETFEATURES_XFER && | 163 | tf->feature == SETFEATURES_XFER && |
| 164 | tf->nsect >= XFER_SW_DMA_0) { | 164 | tf->nsect >= XFER_SW_DMA_0) { |
| 165 | xfer_rate = ide_find_dma_mode(drive, XFER_UDMA_6); | 165 | xfer_rate = ide_find_dma_mode(drive, tf->nsect); |
| 166 | if (xfer_rate != tf->nsect) { | 166 | if (xfer_rate != tf->nsect) { |
| 167 | err = -EINVAL; | 167 | err = -EINVAL; |
| 168 | goto abort; | 168 | goto abort; |
diff --git a/drivers/ide/ide-probe.c b/drivers/ide/ide-probe.c index 63c53d65e875..4d76ba473097 100644 --- a/drivers/ide/ide-probe.c +++ b/drivers/ide/ide-probe.c | |||
| @@ -1046,15 +1046,6 @@ static void ide_port_init_devices(ide_hwif_t *hwif) | |||
| 1046 | if (port_ops && port_ops->init_dev) | 1046 | if (port_ops && port_ops->init_dev) |
| 1047 | port_ops->init_dev(drive); | 1047 | port_ops->init_dev(drive); |
| 1048 | } | 1048 | } |
| 1049 | |||
| 1050 | ide_port_for_each_dev(i, drive, hwif) { | ||
| 1051 | /* | ||
| 1052 | * default to PIO Mode 0 before we figure out | ||
| 1053 | * the most suited mode for the attached device | ||
| 1054 | */ | ||
| 1055 | if (port_ops && port_ops->set_pio_mode) | ||
| 1056 | port_ops->set_pio_mode(drive, 0); | ||
| 1057 | } | ||
| 1058 | } | 1049 | } |
| 1059 | 1050 | ||
| 1060 | static void ide_init_port(ide_hwif_t *hwif, unsigned int port, | 1051 | static void ide_init_port(ide_hwif_t *hwif, unsigned int port, |
diff --git a/drivers/ide/slc90e66.c b/drivers/ide/slc90e66.c index 9aec78d3bcff..1ccfb40e7215 100644 --- a/drivers/ide/slc90e66.c +++ b/drivers/ide/slc90e66.c | |||
| @@ -91,8 +91,7 @@ static void slc90e66_set_dma_mode(ide_drive_t *drive, const u8 speed) | |||
| 91 | 91 | ||
| 92 | if (!(reg48 & u_flag)) | 92 | if (!(reg48 & u_flag)) |
| 93 | pci_write_config_word(dev, 0x48, reg48|u_flag); | 93 | pci_write_config_word(dev, 0x48, reg48|u_flag); |
| 94 | /* FIXME: (reg4a & a_speed) ? */ | 94 | if ((reg4a & a_speed) != u_speed) { |
| 95 | if ((reg4a & u_speed) != u_speed) { | ||
| 96 | pci_write_config_word(dev, 0x4a, reg4a & ~a_speed); | 95 | pci_write_config_word(dev, 0x4a, reg4a & ~a_speed); |
| 97 | pci_read_config_word(dev, 0x4a, ®4a); | 96 | pci_read_config_word(dev, 0x4a, ®4a); |
| 98 | pci_write_config_word(dev, 0x4a, reg4a|u_speed); | 97 | pci_write_config_word(dev, 0x4a, reg4a|u_speed); |
