diff options
Diffstat (limited to 'drivers/ata/ata_piix.c')
-rw-r--r-- | drivers/ata/ata_piix.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/ata/ata_piix.c b/drivers/ata/ata_piix.c index cc431d6bc97f..75fdd026a997 100644 --- a/drivers/ata/ata_piix.c +++ b/drivers/ata/ata_piix.c | |||
@@ -786,8 +786,6 @@ static void piix_set_piomode(struct ata_port *ap, struct ata_device *adev) | |||
786 | if (is_slave) { | 786 | if (is_slave) { |
787 | /* clear TIME1|IE1|PPE1|DTE1 */ | 787 | /* clear TIME1|IE1|PPE1|DTE1 */ |
788 | master_data &= 0xff0f; | 788 | master_data &= 0xff0f; |
789 | /* Enable SITRE (separate slave timing register) */ | ||
790 | master_data |= 0x4000; | ||
791 | /* enable PPE1, IE1 and TIME1 as needed */ | 789 | /* enable PPE1, IE1 and TIME1 as needed */ |
792 | master_data |= (control << 4); | 790 | master_data |= (control << 4); |
793 | pci_read_config_byte(dev, slave_port, &slave_data); | 791 | 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) | |||
805 | (timings[pio][0] << 12) | | 803 | (timings[pio][0] << 12) | |
806 | (timings[pio][1] << 8); | 804 | (timings[pio][1] << 8); |
807 | } | 805 | } |
806 | |||
807 | /* Enable SITRE (separate slave timing register) */ | ||
808 | master_data |= 0x4000; | ||
808 | pci_write_config_word(dev, master_port, master_data); | 809 | pci_write_config_word(dev, master_port, master_data); |
809 | if (is_slave) | 810 | if (is_slave) |
810 | pci_write_config_byte(dev, slave_port, slave_data); | 811 | pci_write_config_byte(dev, slave_port, slave_data); |