diff options
Diffstat (limited to 'drivers/ata/ahci.c')
| -rw-r--r-- | drivers/ata/ahci.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c index cef2e70d64f8..234197e57e9e 100644 --- a/drivers/ata/ahci.c +++ b/drivers/ata/ahci.c | |||
| @@ -334,6 +334,14 @@ static const struct pci_device_id ahci_pci_tbl[] = { | |||
| 334 | { PCI_VDEVICE(NVIDIA, 0x044d), board_ahci }, /* MCP65 */ | 334 | { PCI_VDEVICE(NVIDIA, 0x044d), board_ahci }, /* MCP65 */ |
| 335 | { PCI_VDEVICE(NVIDIA, 0x044e), board_ahci }, /* MCP65 */ | 335 | { PCI_VDEVICE(NVIDIA, 0x044e), board_ahci }, /* MCP65 */ |
| 336 | { PCI_VDEVICE(NVIDIA, 0x044f), board_ahci }, /* MCP65 */ | 336 | { PCI_VDEVICE(NVIDIA, 0x044f), board_ahci }, /* MCP65 */ |
| 337 | { PCI_VDEVICE(NVIDIA, 0x0554), board_ahci }, /* MCP67 */ | ||
| 338 | { PCI_VDEVICE(NVIDIA, 0x0555), board_ahci }, /* MCP67 */ | ||
| 339 | { PCI_VDEVICE(NVIDIA, 0x0556), board_ahci }, /* MCP67 */ | ||
| 340 | { PCI_VDEVICE(NVIDIA, 0x0557), board_ahci }, /* MCP67 */ | ||
| 341 | { PCI_VDEVICE(NVIDIA, 0x0558), board_ahci }, /* MCP67 */ | ||
| 342 | { PCI_VDEVICE(NVIDIA, 0x0559), board_ahci }, /* MCP67 */ | ||
| 343 | { PCI_VDEVICE(NVIDIA, 0x055a), board_ahci }, /* MCP67 */ | ||
| 344 | { PCI_VDEVICE(NVIDIA, 0x055b), board_ahci }, /* MCP67 */ | ||
| 337 | 345 | ||
| 338 | /* SiS */ | 346 | /* SiS */ |
| 339 | { PCI_VDEVICE(SI, 0x1184), board_ahci }, /* SiS 966 */ | 347 | { PCI_VDEVICE(SI, 0x1184), board_ahci }, /* SiS 966 */ |
| @@ -736,8 +744,7 @@ static int ahci_softreset(struct ata_port *ap, unsigned int *class) | |||
| 736 | } | 744 | } |
| 737 | 745 | ||
| 738 | /* check BUSY/DRQ, perform Command List Override if necessary */ | 746 | /* check BUSY/DRQ, perform Command List Override if necessary */ |
| 739 | ahci_tf_read(ap, &tf); | 747 | if (ahci_check_status(ap) & (ATA_BUSY | ATA_DRQ)) { |
| 740 | if (tf.command & (ATA_BUSY | ATA_DRQ)) { | ||
| 741 | rc = ahci_clo(ap); | 748 | rc = ahci_clo(ap); |
| 742 | 749 | ||
| 743 | if (rc == -EOPNOTSUPP) { | 750 | if (rc == -EOPNOTSUPP) { |
