ata_piix: SITRE handling fix
Set SITRE (separate slave timing register) bit also in master-only configurations to match other PIIX-alike drivers and make further changes easier. Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
This commit is contained in:
parent
418fae2751
commit
ce986690d9
@ -786,8 +786,6 @@ static void piix_set_piomode(struct ata_port *ap, struct ata_device *adev)
|
||||
if (is_slave) {
|
||||
/* clear TIME1|IE1|PPE1|DTE1 */
|
||||
master_data &= 0xff0f;
|
||||
/* Enable SITRE (separate slave timing register) */
|
||||
master_data |= 0x4000;
|
||||
/* enable PPE1, IE1 and TIME1 as needed */
|
||||
master_data |= (control << 4);
|
||||
pci_read_config_byte(dev, slave_port, &slave_data);
|
||||
@ -805,6 +803,9 @@ static void piix_set_piomode(struct ata_port *ap, struct ata_device *adev)
|
||||
(timings[pio][0] << 12) |
|
||||
(timings[pio][1] << 8);
|
||||
}
|
||||
|
||||
/* Enable SITRE (separate slave timing register) */
|
||||
master_data |= 0x4000;
|
||||
pci_write_config_word(dev, master_port, master_data);
|
||||
if (is_slave)
|
||||
pci_write_config_byte(dev, slave_port, slave_data);
|
||||
|
Loading…
Reference in New Issue
Block a user