Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp4032085pxb; Mon, 8 Feb 2021 06:26:24 -0800 (PST) X-Google-Smtp-Source: ABdhPJzS8jpMAXRCdzBkhXEub9YqpXA4QGUZhHmAEBV3rF2G/IThxZVszqY0lILj7U2p54M+hSZx X-Received: by 2002:a05:6402:34c1:: with SMTP id w1mr17457912edc.147.1612794384150; Mon, 08 Feb 2021 06:26:24 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1612794384; cv=none; d=google.com; s=arc-20160816; b=I7F/ucFaSGIESEciqzUSHN3eyiZXak9F0yA0mOXs+cx8TxHqIqbXgBHF8CrfmB5SDt u40h+WuhG7GBrzSybDit5nvx06wCCYA7k383uJ/zTUuMWAsAUOOExm2KPQI3n/pN1eLo M317v+bPFsFXziRwP1Am5vaJARVUxM7aHhQDtOnOKySKuq/bjE2suXebs/OZmSgR6Wlb XWqML4oZdgtwpUJmaKg0eARLcMSOYFUDawOV8gXT0qUjHFjdWQLiK3Fhbczv1C7HKPq+ JlhutrgtUB9ulnQ0JYntQU8yk7AHrGXJH4RfnFiCwS82Af2kyy64OCzW8AX4nLE+SW29 UDXg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=TepQsBZo4Sh/cukpFKu/VceaQ0s73kvBstES3bTPXPU=; b=MmbIlvvCQ1ZuwcUlxJKGTCoQjZTMV+U0NnpIeoCISrftIJjEHoWhU8M5FVSm4Erpy7 S3ZLrgDqcqno4eRrQ9w/OrWjIf7+YZefjcxqTG8e8T6z3KOF6GnijCtMzkaZSx0t5fwa Ft4DZqYBcZGjcozU/n8x5Ma1x3ZqOXsylV+sIFnI1o3hQH+NPjV3+G97ZNO3kGc2FRzu ewmEDRykMu1tHisiX4ntDtRYId8ZGqYO8i097iXK7fU2JJmK5mh2lH7YolLM3KHq5fcd qUO4+P6tGBbnbb9ug9Za1COvZ6BLq6XQ+b9WFmDVBG8hRBmT/M9DbpUqCdWPSaJFZLqu karg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id v14si12181765edc.56.2021.02.08.06.25.59; Mon, 08 Feb 2021 06:26:24 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232970AbhBHOXj (ORCPT + 99 others); Mon, 8 Feb 2021 09:23:39 -0500 Received: from mail.baikalelectronics.com ([87.245.175.226]:57454 "EHLO mail.baikalelectronics.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231977AbhBHOFi (ORCPT ); Mon, 8 Feb 2021 09:05:38 -0500 From: Serge Semin To: Giuseppe Cavallaro , Alexandre Torgue , Jose Abreu , "David S. Miller" , Jakub Kicinski , Joao Pinto , Jose Abreu , Maxime Coquelin CC: Serge Semin , Serge Semin , Alexey Malahov , Pavel Parkhomenko , Vyacheslav Mitrofanov , Russell King , Andrew Lunn , Heiner Kallweit , , , , Subject: [PATCH 07/20] net: stmmac: Clear descriptors before initializing them Date: Mon, 8 Feb 2021 17:03:28 +0300 Message-ID: <20210208140341.9271-8-Sergey.Semin@baikalelectronics.ru> In-Reply-To: <20210208140341.9271-1-Sergey.Semin@baikalelectronics.ru> References: <20210208140341.9271-1-Sergey.Semin@baikalelectronics.ru> MIME-Version: 1.0 Content-Transfer-Encoding: 7BIT Content-Type: text/plain; charset=US-ASCII X-ClientProxiedBy: MAIL.baikal.int (192.168.51.25) To mail (192.168.51.25) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org According to the methods naming and partly based on their semantics the descriptors need to be cleared first, then they can be properly initialized. That specifically concerns the Tx descriptors and the chain mode. Moreover doing the Rx-descriptors clearance twice is redundant. Fix all of that by discarding the Rx descriptor clearance from the init_dma_rx_desc_rings() method and move the generic method of all descriptors clearance to the head of the init_dma_desc_rings() function. Signed-off-by: Serge Semin --- drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c index 1c40dc26fbf7..3bc07f5b64e1 100644 --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c @@ -1399,8 +1399,6 @@ static int init_dma_rx_desc_rings(struct net_device *dev, gfp_t flags) "(%s) dma_rx_phy=0x%08x\n", __func__, (u32)rx_q->dma_rx_phy); - stmmac_clear_rx_descriptors(priv, queue); - for (i = 0; i < priv->dma_rx_size; i++) { struct dma_desc *p; @@ -1522,14 +1520,14 @@ static int init_dma_desc_rings(struct net_device *dev, gfp_t flags) struct stmmac_priv *priv = netdev_priv(dev); int ret; + stmmac_clear_descriptors(priv); + ret = init_dma_rx_desc_rings(dev, flags); if (ret) return ret; ret = init_dma_tx_desc_rings(dev); - stmmac_clear_descriptors(priv); - if (netif_msg_hw(priv)) stmmac_display_rings(priv); -- 2.29.2