diff options
Diffstat (limited to 'drivers/dma/ioat.c')
| -rw-r--r-- | drivers/dma/ioat.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/dma/ioat.c b/drivers/dma/ioat.c index f204c39fb412..16e0fd8facfb 100644 --- a/drivers/dma/ioat.c +++ b/drivers/dma/ioat.c | |||
| @@ -39,10 +39,14 @@ MODULE_LICENSE("GPL"); | |||
| 39 | MODULE_AUTHOR("Intel Corporation"); | 39 | MODULE_AUTHOR("Intel Corporation"); |
| 40 | 40 | ||
| 41 | static struct pci_device_id ioat_pci_tbl[] = { | 41 | static struct pci_device_id ioat_pci_tbl[] = { |
| 42 | /* I/OAT v1 platforms */ | ||
| 42 | { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_IOAT) }, | 43 | { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_IOAT) }, |
| 43 | { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_IOAT_CNB) }, | 44 | { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_IOAT_CNB) }, |
| 44 | { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_IOAT_SCNB) }, | 45 | { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_IOAT_SCNB) }, |
| 45 | { PCI_DEVICE(PCI_VENDOR_ID_UNISYS, PCI_DEVICE_ID_UNISYS_DMA_DIRECTOR) }, | 46 | { PCI_DEVICE(PCI_VENDOR_ID_UNISYS, PCI_DEVICE_ID_UNISYS_DMA_DIRECTOR) }, |
| 47 | |||
| 48 | /* I/OAT v2 platforms */ | ||
| 49 | { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_IOAT_SNB) }, | ||
| 46 | { 0, } | 50 | { 0, } |
| 47 | }; | 51 | }; |
| 48 | 52 | ||
| @@ -74,10 +78,17 @@ static int ioat_setup_functionality(struct pci_dev *pdev, void __iomem *iobase) | |||
| 74 | if (device->dma && ioat_dca_enabled) | 78 | if (device->dma && ioat_dca_enabled) |
| 75 | device->dca = ioat_dca_init(pdev, iobase); | 79 | device->dca = ioat_dca_init(pdev, iobase); |
| 76 | break; | 80 | break; |
| 81 | case IOAT_VER_2_0: | ||
| 82 | device->dma = ioat_dma_probe(pdev, iobase); | ||
| 83 | if (device->dma && ioat_dca_enabled) | ||
| 84 | device->dca = ioat2_dca_init(pdev, iobase); | ||
| 85 | break; | ||
| 77 | default: | 86 | default: |
| 78 | err = -ENODEV; | 87 | err = -ENODEV; |
| 79 | break; | 88 | break; |
| 80 | } | 89 | } |
| 90 | if (!device->dma) | ||
| 91 | err = -ENODEV; | ||
| 81 | return err; | 92 | return err; |
| 82 | } | 93 | } |
| 83 | 94 | ||
