diff options
Diffstat (limited to 'drivers/ata/ahci.c')
| -rw-r--r-- | drivers/ata/ahci.c | 8 | 
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c index 7862d17976b..49791273256 100644 --- a/drivers/ata/ahci.c +++ b/drivers/ata/ahci.c @@ -53,6 +53,7 @@  enum {  	AHCI_PCI_BAR_STA2X11	= 0, +	AHCI_PCI_BAR_ENMOTUS	= 2,  	AHCI_PCI_BAR_STANDARD	= 5,  }; @@ -410,6 +411,9 @@ static const struct pci_device_id ahci_pci_tbl[] = {  	{ PCI_VDEVICE(ASMEDIA, 0x0611), board_ahci },	/* ASM1061 */  	{ PCI_VDEVICE(ASMEDIA, 0x0612), board_ahci },	/* ASM1062 */ +	/* Enmotus */ +	{ PCI_DEVICE(0x1c44, 0x8000), board_ahci }, +  	/* Generic, PCI class code for AHCI */  	{ PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID,  	  PCI_CLASS_STORAGE_SATA_AHCI, 0xffffff, board_ahci }, @@ -1098,9 +1102,11 @@ static int ahci_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)  		dev_info(&pdev->dev,  			 "PDC42819 can only drive SATA devices with this driver\n"); -	/* The Connext uses non-standard BAR */ +	/* Both Connext and Enmotus devices use non-standard BARs */  	if (pdev->vendor == PCI_VENDOR_ID_STMICRO && pdev->device == 0xCC06)  		ahci_pci_bar = AHCI_PCI_BAR_STA2X11; +	else if (pdev->vendor == 0x1c44 && pdev->device == 0x8000) +		ahci_pci_bar = AHCI_PCI_BAR_ENMOTUS;  	/* acquire resources */  	rc = pcim_enable_device(pdev);  |