diff options
author | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2010-01-18 02:17:29 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-01-19 04:24:55 -0500 |
commit | 2b7d03a5cdace237525643d48918e68fe24681ed (patch) | |
tree | 614d6bd244292e1cab99962b88eda78873b38030 /drivers/ide | |
parent | 05227adff206c7290e8bbf1c28be771c2cbfa0ee (diff) |
ide: use standard timing for XFER_PIO_SLOW mode in ide_timing_compute()
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/ide')
-rw-r--r-- | drivers/ide/ide-timings.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/drivers/ide/ide-timings.c b/drivers/ide/ide-timings.c index 001a56365be5..c6053ab2b6c6 100644 --- a/drivers/ide/ide-timings.c +++ b/drivers/ide/ide-timings.c | |||
@@ -166,12 +166,13 @@ int ide_timing_compute(ide_drive_t *drive, u8 speed, | |||
166 | if (id[ATA_ID_FIELD_VALID] & 2) { /* EIDE drive */ | 166 | if (id[ATA_ID_FIELD_VALID] & 2) { /* EIDE drive */ |
167 | memset(&p, 0, sizeof(p)); | 167 | memset(&p, 0, sizeof(p)); |
168 | 168 | ||
169 | if (speed <= XFER_PIO_2) | 169 | if (speed >= XFER_PIO_0 && speed <= XFER_SW_DMA_0) { |
170 | p.cycle = p.cyc8b = id[ATA_ID_EIDE_PIO]; | 170 | if (speed <= XFER_PIO_2) |
171 | else if ((speed <= XFER_PIO_4) || | 171 | p.cycle = p.cyc8b = id[ATA_ID_EIDE_PIO]; |
172 | (speed == XFER_PIO_5 && !ata_id_is_cfa(id))) | 172 | else if ((speed <= XFER_PIO_4) || |
173 | p.cycle = p.cyc8b = id[ATA_ID_EIDE_PIO_IORDY]; | 173 | (speed == XFER_PIO_5 && !ata_id_is_cfa(id))) |
174 | else if (speed >= XFER_MW_DMA_0 && speed <= XFER_MW_DMA_2) | 174 | p.cycle = p.cyc8b = id[ATA_ID_EIDE_PIO_IORDY]; |
175 | } else if (speed >= XFER_MW_DMA_0 && speed <= XFER_MW_DMA_2) | ||
175 | p.cycle = id[ATA_ID_EIDE_DMA_MIN]; | 176 | p.cycle = id[ATA_ID_EIDE_DMA_MIN]; |
176 | 177 | ||
177 | ide_timing_merge(&p, t, t, IDE_TIMING_CYCLE | IDE_TIMING_CYC8B); | 178 | ide_timing_merge(&p, t, t, IDE_TIMING_CYCLE | IDE_TIMING_CYC8B); |