[PATCH] sata_sil24: update TF image only when necessary
Update TF image (pp->tf) only when necessary. Signed-off-by: Tejun Heo <htejun@gmail.com>
This commit is contained in:
parent
e61e067227
commit
ce5f7f3d0c
1 changed files with 2 additions and 10 deletions
|
@ -799,17 +799,9 @@ static inline void sil24_host_intr(struct ata_port *ap)
|
||||||
if (ap->flags & SIL24_FLAG_PCIX_IRQ_WOC)
|
if (ap->flags & SIL24_FLAG_PCIX_IRQ_WOC)
|
||||||
writel(PORT_IRQ_COMPLETE, port + PORT_IRQ_STAT);
|
writel(PORT_IRQ_COMPLETE, port + PORT_IRQ_STAT);
|
||||||
|
|
||||||
/*
|
|
||||||
* !HOST_SSAT_ATTN guarantees successful completion,
|
|
||||||
* so reading back tf registers is unnecessary for
|
|
||||||
* most commands. TODO: read tf registers for
|
|
||||||
* commands which require these values on successful
|
|
||||||
* completion (EXECUTE DEVICE DIAGNOSTIC, CHECK POWER,
|
|
||||||
* DEVICE RESET and READ PORT MULTIPLIER (any more?).
|
|
||||||
*/
|
|
||||||
sil24_update_tf(ap);
|
|
||||||
|
|
||||||
if (qc) {
|
if (qc) {
|
||||||
|
if (qc->flags & ATA_QCFLAG_RESULT_TF)
|
||||||
|
sil24_update_tf(ap);
|
||||||
qc->err_mask |= ac_err_mask(pp->tf.command);
|
qc->err_mask |= ac_err_mask(pp->tf.command);
|
||||||
ata_qc_complete(qc);
|
ata_qc_complete(qc);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue