diff options
Diffstat (limited to 'drivers/dma/ioat')
-rw-r--r-- | drivers/dma/ioat/dma_v2.c | 3 | ||||
-rw-r--r-- | drivers/dma/ioat/pci.c | 22 |
2 files changed, 23 insertions, 2 deletions
diff --git a/drivers/dma/ioat/dma_v2.c b/drivers/dma/ioat/dma_v2.c index 86895760b598..b9d667851445 100644 --- a/drivers/dma/ioat/dma_v2.c +++ b/drivers/dma/ioat/dma_v2.c | |||
@@ -434,12 +434,11 @@ static struct ioat_ring_ent *ioat2_alloc_ring_ent(struct dma_chan *chan, gfp_t f | |||
434 | return NULL; | 434 | return NULL; |
435 | memset(hw, 0, sizeof(*hw)); | 435 | memset(hw, 0, sizeof(*hw)); |
436 | 436 | ||
437 | desc = kmem_cache_alloc(ioat2_cache, flags); | 437 | desc = kmem_cache_zalloc(ioat2_cache, flags); |
438 | if (!desc) { | 438 | if (!desc) { |
439 | pci_pool_free(dma->dma_pool, hw, phys); | 439 | pci_pool_free(dma->dma_pool, hw, phys); |
440 | return NULL; | 440 | return NULL; |
441 | } | 441 | } |
442 | memset(desc, 0, sizeof(*desc)); | ||
443 | 442 | ||
444 | dma_async_tx_descriptor_init(&desc->txd, chan); | 443 | dma_async_tx_descriptor_init(&desc->txd, chan); |
445 | desc->txd.tx_submit = ioat2_tx_submit_unlock; | 444 | desc->txd.tx_submit = ioat2_tx_submit_unlock; |
diff --git a/drivers/dma/ioat/pci.c b/drivers/dma/ioat/pci.c index 5e3a40f79945..c0573061b45d 100644 --- a/drivers/dma/ioat/pci.c +++ b/drivers/dma/ioat/pci.c | |||
@@ -40,6 +40,17 @@ MODULE_VERSION(IOAT_DMA_VERSION); | |||
40 | MODULE_LICENSE("Dual BSD/GPL"); | 40 | MODULE_LICENSE("Dual BSD/GPL"); |
41 | MODULE_AUTHOR("Intel Corporation"); | 41 | MODULE_AUTHOR("Intel Corporation"); |
42 | 42 | ||
43 | #define PCI_DEVICE_ID_INTEL_IOAT_IVB0 0x0e20 | ||
44 | #define PCI_DEVICE_ID_INTEL_IOAT_IVB1 0x0e21 | ||
45 | #define PCI_DEVICE_ID_INTEL_IOAT_IVB2 0x0e22 | ||
46 | #define PCI_DEVICE_ID_INTEL_IOAT_IVB3 0x0e23 | ||
47 | #define PCI_DEVICE_ID_INTEL_IOAT_IVB4 0x0e24 | ||
48 | #define PCI_DEVICE_ID_INTEL_IOAT_IVB5 0x0e25 | ||
49 | #define PCI_DEVICE_ID_INTEL_IOAT_IVB6 0x0e26 | ||
50 | #define PCI_DEVICE_ID_INTEL_IOAT_IVB7 0x0e27 | ||
51 | #define PCI_DEVICE_ID_INTEL_IOAT_IVB8 0x0e2e | ||
52 | #define PCI_DEVICE_ID_INTEL_IOAT_IVB9 0x0e2f | ||
53 | |||
43 | static struct pci_device_id ioat_pci_tbl[] = { | 54 | static struct pci_device_id ioat_pci_tbl[] = { |
44 | /* I/OAT v1 platforms */ | 55 | /* I/OAT v1 platforms */ |
45 | { PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_IOAT) }, | 56 | { PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_IOAT) }, |
@@ -83,6 +94,17 @@ static struct pci_device_id ioat_pci_tbl[] = { | |||
83 | { PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_IOAT_SNB8) }, | 94 | { PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_IOAT_SNB8) }, |
84 | { PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_IOAT_SNB9) }, | 95 | { PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_IOAT_SNB9) }, |
85 | 96 | ||
97 | { PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_IOAT_IVB0) }, | ||
98 | { PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_IOAT_IVB1) }, | ||
99 | { PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_IOAT_IVB2) }, | ||
100 | { PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_IOAT_IVB3) }, | ||
101 | { PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_IOAT_IVB4) }, | ||
102 | { PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_IOAT_IVB5) }, | ||
103 | { PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_IOAT_IVB6) }, | ||
104 | { PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_IOAT_IVB7) }, | ||
105 | { PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_IOAT_IVB8) }, | ||
106 | { PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_IOAT_IVB9) }, | ||
107 | |||
86 | { 0, } | 108 | { 0, } |
87 | }; | 109 | }; |
88 | MODULE_DEVICE_TABLE(pci, ioat_pci_tbl); | 110 | MODULE_DEVICE_TABLE(pci, ioat_pci_tbl); |