mirror of
https://github.com/adulau/aha.git
synced 2024-12-27 19:26:25 +00:00
pata_it8213: fix wrong PIO timings being programmed
* do not clear PIO timings for master when programming slave * program new PIO timings in the correct register nibble Both changes should be safe as this is how we have been doing things in IDE it8213 host driver for years. Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
This commit is contained in:
parent
e0ee792b75
commit
088ccb53a3
1 changed files with 2 additions and 2 deletions
|
@ -112,13 +112,13 @@ static void it8213_set_piomode (struct ata_port *ap, struct ata_device *adev)
|
|||
} else {
|
||||
u8 slave_data;
|
||||
|
||||
idetm_data &= 0xCC0F;
|
||||
idetm_data &= 0xFF0F;
|
||||
idetm_data |= (control << 4);
|
||||
|
||||
/* Slave timing in separate register */
|
||||
pci_read_config_byte(dev, 0x44, &slave_data);
|
||||
slave_data &= 0xF0;
|
||||
slave_data |= ((timings[pio][0] << 2) | timings[pio][1]) << 4;
|
||||
slave_data |= (timings[pio][0] << 2) | timings[pio][1];
|
||||
pci_write_config_byte(dev, 0x44, slave_data);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue