]> git.baikalelectronics.ru Git - kernel.git/commitdiff
myri10ge: Simplify DMA setting
authorChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Sat, 8 Jan 2022 14:22:13 +0000 (15:22 +0100)
committerJakub Kicinski <kuba@kernel.org>
Mon, 10 Jan 2022 00:52:18 +0000 (16:52 -0800)
As stated in [1], dma_set_mask() with a 64-bit mask will never fail if
dev->dma_mask is non-NULL.
So, if it fails, the 32 bits case will also fail for the same reason.

If dma_set_mask_and_coherent() succeeds, 'dac_enabled' is known to be 1.

Simplify code and remove some dead code accordingly.

[1]: https://lkml.org/lkml/2021/6/7/398

Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Link: https://lore.kernel.org/r/e92b0c3a3c1574a97a4e6fd0c30225f10fa59d18.1641651693.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/myricom/myri10ge/myri10ge.c

index 83a5e29c836a7ae76f182eec81d4e23d659b3822..50ac3ee2577a2999bd952a41469f92409fd7015d 100644 (file)
@@ -3742,7 +3742,6 @@ static int myri10ge_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
        struct myri10ge_priv *mgp;
        struct device *dev = &pdev->dev;
        int status = -ENXIO;
-       int dac_enabled;
        unsigned hdr_offset, ss_offset;
        static int board_number;
 
@@ -3782,14 +3781,7 @@ static int myri10ge_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
 
        myri10ge_mask_surprise_down(pdev);
        pci_set_master(pdev);
-       dac_enabled = 1;
        status = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(64));
-       if (status != 0) {
-               dac_enabled = 0;
-               dev_err(&pdev->dev,
-                       "64-bit pci address mask was refused, trying 32-bit\n");
-               status = dma_set_mask(&pdev->dev, DMA_BIT_MASK(32));
-       }
        if (status != 0) {
                dev_err(&pdev->dev, "Error %d setting DMA mask\n", status);
                goto abort_with_enabled;
@@ -3874,10 +3866,7 @@ static int myri10ge_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
        /* fake NETIF_F_HW_VLAN_CTAG_RX for good GRO performance */
        netdev->hw_features |= NETIF_F_HW_VLAN_CTAG_RX;
 
-       netdev->features = netdev->hw_features;
-
-       if (dac_enabled)
-               netdev->features |= NETIF_F_HIGHDMA;
+       netdev->features = netdev->hw_features | NETIF_F_HIGHDMA;
 
        netdev->vlan_features |= mgp->features;
        if (mgp->fw_ver_tiny < 37)