diff options
author | Mitch Williams <mitch.a.williams@intel.com> | 2014-02-11 03:26:33 -0500 |
---|---|---|
committer | Jeff Kirsher <jeffrey.t.kirsher@intel.com> | 2014-03-14 19:30:05 -0400 |
commit | 6494294f277fdef1409b844b3d6eb1439c3fad8c (patch) | |
tree | 929f00f28bd27fd869db5f99a2eb97f7e39c7c6e /drivers | |
parent | 9347eb771ece4fda0ad78c1c991f020af17abcb8 (diff) |
i40e/i40evf: Use dma_set_mask_and_coherent
In Linux 3.13, dma_set_mask_and_coherent was introduced, and we have
been encouraged to use it. It simplifies the DMA mapping code a bit as
well.
Change-ID: I66e340245af7d0dedfa8b40fec1f5e352754432e
Signed-off-by: Mitch Williams <mitch.a.williams@intel.com>
Signed-off-by: Catherine Sullivan <catherine.sullivan@intel.com>
Tested-by: Kavindya Deegala <kavindya.s.deegala@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/ethernet/intel/i40e/i40e_main.c | 16 | ||||
-rw-r--r-- | drivers/net/ethernet/intel/i40evf/i40evf_main.c | 17 |
2 files changed, 12 insertions, 21 deletions
diff --git a/drivers/net/ethernet/intel/i40e/i40e_main.c b/drivers/net/ethernet/intel/i40e/i40e_main.c index 54e146227654..7379e5a9126b 100644 --- a/drivers/net/ethernet/intel/i40e/i40e_main.c +++ b/drivers/net/ethernet/intel/i40e/i40e_main.c | |||
@@ -7970,16 +7970,12 @@ static int i40e_probe(struct pci_dev *pdev, const struct pci_device_id *ent) | |||
7970 | return err; | 7970 | return err; |
7971 | 7971 | ||
7972 | /* set up for high or low dma */ | 7972 | /* set up for high or low dma */ |
7973 | if (!dma_set_mask(&pdev->dev, DMA_BIT_MASK(64))) { | 7973 | err = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(64)); |
7974 | /* coherent mask for the same size will always succeed if | 7974 | if (err) |
7975 | * dma_set_mask does | 7975 | err = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32)); |
7976 | */ | 7976 | if (err) { |
7977 | dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(64)); | 7977 | dev_err(&pdev->dev, |
7978 | } else if (!dma_set_mask(&pdev->dev, DMA_BIT_MASK(32))) { | 7978 | "DMA configuration failed: 0x%x\n", err); |
7979 | dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32)); | ||
7980 | } else { | ||
7981 | dev_err(&pdev->dev, "DMA configuration failed: %d\n", err); | ||
7982 | err = -EIO; | ||
7983 | goto err_dma; | 7979 | goto err_dma; |
7984 | } | 7980 | } |
7985 | 7981 | ||
diff --git a/drivers/net/ethernet/intel/i40evf/i40evf_main.c b/drivers/net/ethernet/intel/i40evf/i40evf_main.c index 8daab3aacdc3..d62e27f6e83a 100644 --- a/drivers/net/ethernet/intel/i40evf/i40evf_main.c +++ b/drivers/net/ethernet/intel/i40evf/i40evf_main.c | |||
@@ -2182,17 +2182,12 @@ static int i40evf_probe(struct pci_dev *pdev, const struct pci_device_id *ent) | |||
2182 | if (err) | 2182 | if (err) |
2183 | return err; | 2183 | return err; |
2184 | 2184 | ||
2185 | if (!dma_set_mask(&pdev->dev, DMA_BIT_MASK(64))) { | 2185 | err = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(64)); |
2186 | /* coherent mask for the same size will always succeed if | 2186 | if (err) |
2187 | * dma_set_mask does | 2187 | err = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32)); |
2188 | */ | 2188 | if (err) { |
2189 | dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(64)); | 2189 | dev_err(&pdev->dev, |
2190 | } else if (!dma_set_mask(&pdev->dev, DMA_BIT_MASK(32))) { | 2190 | "DMA configuration failed: 0x%x\n", err); |
2191 | dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32)); | ||
2192 | } else { | ||
2193 | dev_err(&pdev->dev, "%s: DMA configuration failed: %d\n", | ||
2194 | __func__, err); | ||
2195 | err = -EIO; | ||
2196 | goto err_dma; | 2191 | goto err_dma; |
2197 | } | 2192 | } |
2198 | 2193 | ||