|
@@ -1018,19 +1018,14 @@ static int e1000_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
|
|
|
*/
|
|
|
pci_using_dac = 0;
|
|
|
if ((hw->bus_type == e1000_bus_type_pcix) &&
|
|
|
- !dma_set_mask(&pdev->dev, DMA_BIT_MASK(64))) {
|
|
|
- /* according to DMA-API-HOWTO, coherent calls will always
|
|
|
- * succeed if the set call did
|
|
|
- */
|
|
|
- dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(64));
|
|
|
+ !dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(64))) {
|
|
|
pci_using_dac = 1;
|
|
|
} else {
|
|
|
- err = dma_set_mask(&pdev->dev, DMA_BIT_MASK(32));
|
|
|
+ err = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32));
|
|
|
if (err) {
|
|
|
pr_err("No usable DMA config, aborting\n");
|
|
|
goto err_dma;
|
|
|
}
|
|
|
- dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32));
|
|
|
}
|
|
|
|
|
|
netdev->netdev_ops = &e1000_netdev_ops;
|