net: stmmac: fix dma operation mode config for older versions
authorJoao Pinto <Joao.Pinto@synopsys.com>
Wed, 22 Mar 2017 11:56:05 +0000 (11:56 +0000)
committerDavid S. Miller <davem@davemloft.net>
Wed, 22 Mar 2017 22:35:03 +0000 (15:35 -0700)
The dma operation mode configuration routine was wrongly moved to a
function (stmmac_mtl_configuration) that is only executed if the
core version is >= 4.00.

Fixes: 6deee2221e11 ("net: stmmac: prepare dma op mode config for multiple queues")
Reported-by: Corentin Labbe <clabbe.montjoie@gmail.com>
Reviewed-by: Thierry Reding <thierry.reding@gmail.com>
Signed-off-by: Joao Pinto <jpinto@synopsys.com>
Tested-by: Corentin Labbe <clabbe.montjoie@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c

index 98e0f80de9d8dd3c45313924962e0c687447ae23..4b418d2aec3808f70fb307b008830dccfb349801 100644 (file)
@@ -2388,9 +2388,6 @@ static void stmmac_mtl_configuration(struct stmmac_priv *priv)
        if (priv->hw->mac->rx_queue_enable)
                stmmac_mac_enable_rx_queues(priv);
 
-       /* Set the HW DMA mode and the COE */
-       stmmac_dma_operation_mode(priv);
-
        /* Set RX priorities */
        if (rx_queues_count > 1 && priv->hw->mac->rx_queue_prio)
                stmmac_mac_config_rx_queues_prio(priv);
@@ -2468,6 +2465,9 @@ static int stmmac_hw_setup(struct net_device *dev, bool init_ptp)
        else
                stmmac_set_mac(priv->ioaddr, true);
 
+       /* Set the HW DMA mode and the COE */
+       stmmac_dma_operation_mode(priv);
+
        stmmac_mmc_setup(priv);
 
        if (init_ptp) {