Skip to content

Commit

Permalink
pata_it8213: fix UDMA handling
Browse files Browse the repository at this point in the history
Driver should program the cycle timing not the mode number
(doing the latter results in wrong timings being used).

There shouldn't be any problems with it as IDE it8213 host driver
has been doing it this way for years.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
  • Loading branch information
Bartlomiej Zolnierkiewicz authored and Jeff Garzik committed Dec 3, 2009
1 parent 3915044 commit e0ee792
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions drivers/ata/pata_it8213.c
Original file line number Diff line number Diff line change
Expand Up @@ -173,10 +173,10 @@ static void it8213_set_dmamode (struct ata_port *ap, struct ata_device *adev)

udma_enable |= (1 << devid);

/* Load the UDMA mode number */
/* Load the UDMA cycle time */
pci_read_config_word(dev, 0x4A, &udma_timing);
udma_timing &= ~(3 << (4 * devid));
udma_timing |= (udma & 3) << (4 * devid);
udma_timing |= u_speed << (4 * devid);
pci_write_config_word(dev, 0x4A, udma_timing);

/* Load the clock selection */
Expand Down

0 comments on commit e0ee792

Please sign in to comment.