From patchwork Wed Mar 3 15:08:40 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ramesh Babu B X-Patchwork-Id: 12114243 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 38EACC433E0 for ; Wed, 3 Mar 2021 21:07:38 +0000 (UTC) Received: from desiato.infradead.org (desiato.infradead.org [90.155.92.199]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 73FED64EC4 for ; Wed, 3 Mar 2021 21:07:37 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 73FED64EC4 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding :Content-Type:MIME-Version:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:Message-Id:Date:Subject:Cc:To:From:Reply-To: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Owner; bh=L9th0YoFcCfwdNzk/VHYlQywwf/l2rm+LWHL57AI0bs=; b=TBXm3YONql/3VlmRR4oqPOaWK3 7yQnNqOmQxJMQIhqTJRUKrez1NHcGqJ8T+ZxMKjjRqIAcppizaM+Umndy93zTJK2OdpEsY6jUcPFm aIPziROMNIzZMyQWXpik9XRr+9eqFAFxZU6L+uy+xL986Ym/SJ211NOov4RcnbvNDpk3M/0nP6u6S s0tfqn1+6UHrbqhzkqj/71jOnL6/9P4pkxQWHjGqz9N1kc9uIGpUWc2MKEXU60y9L4VXP5gyhEiw4 wUNR761rvKHm6btemcvWGgY+x5w0d8N4zODmCNlENjYGysQgLPGa/cR4Q33hqC2DGwZeUigndvQSI sASOZKow==; Received: from localhost ([::1] helo=desiato.infradead.org) by desiato.infradead.org with esmtp (Exim 4.94 #2 (Red Hat Linux)) id 1lHYet-006Wo0-Ax; Wed, 03 Mar 2021 21:03:51 +0000 Received: from casper.infradead.org ([2001:8b0:10b:1236::1]) by desiato.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1lHT7j-005JWS-8b for linux-arm-kernel@desiato.infradead.org; Wed, 03 Mar 2021 15:09:15 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=Message-Id:Date:Subject:Cc:To:From: Sender:Reply-To:MIME-Version:Content-Type:Content-Transfer-Encoding: Content-ID:Content-Description:In-Reply-To:References; bh=mlLMNtyP1pWo9IuLgT2HMV1qIRP7X6LAdfevgwaDZQ8=; b=ZG/TTSHBxiHvrLB86bu7aFinUP n3AhBP6W6bvzgqy/DC7L9rv6qGZo6katnaS0QTtpcLoIVVXL+Pwgzr18hb7sM6sLDU/4uy/hzO4vn W0yGzlOaizkIoYH0s5E76qZtGWl/AhcyD/cTK7527ozYH1st8p9TsZ27+TxyDerxs9nw17OkE+VsD Ma9lzjmS0ogSkNLm/cOjnT9pHTTtBX1Rhqegw4Ho6jschkMtI/LbQO7UxevLU2tDm+sEmgYx2Hnb5 xzTxduB1piE5onRAmdN2XuV2S61KpsjvRjdcFu9CyYh1iXxZIAqZfZCrT8KquAXRT6ip/X8MWJsdY b4yyPYew==; Received: from mga02.intel.com ([134.134.136.20]) by casper.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1lHIp4-001D4t-GF for linux-arm-kernel@lists.infradead.org; Wed, 03 Mar 2021 04:09:19 +0000 IronPort-SDR: RyJqgfydPuchGKv3UjJvccxBw1ymxA9UIhXikCPkuOohPGvMK7qupuJeKTsW+nz1McT7KSCTzF U/ZZRgJC2i0g== X-IronPort-AV: E=McAfee;i="6000,8403,9911"; a="174216199" X-IronPort-AV: E=Sophos;i="5.81,218,1610438400"; d="scan'208";a="174216199" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Mar 2021 20:08:03 -0800 IronPort-SDR: 6JOYJ6aBjXDsTvfNE18IvXvNacFMncaIzyC3On+Kl0FC2bUn/DjHPi2VdCy85nepbya1bbQ1Rx /mGjtM9oDFvA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.81,218,1610438400"; d="scan'208";a="407056226" Received: from intel-z390-ud.iind.intel.com ([10.223.96.21]) by orsmga008.jf.intel.com with ESMTP; 02 Mar 2021 20:07:59 -0800 From: ramesh.babu.b@intel.com To: Giuseppe Cavallaro , Alexandre Torgue , Jose Abreu , "David S . Miller" , Jakub Kicinski , Maxime Coquelin Cc: netdev@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Ong Boon Leong , Voon Wei Feng , Wong Vee Khee , Ramesh Babu B Subject: [PATCH net 1/1] net: stmmac: fix incorrect DMA channel intr enable setting of EQoS v4.10 Date: Wed, 3 Mar 2021 20:38:40 +0530 Message-Id: <20210303150840.30024-1-ramesh.babu.b@intel.com> X-Mailer: git-send-email 2.17.1 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210303_040919_585565_DC79EE74 X-CRM114-Status: GOOD ( 10.11 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org From: Ong Boon Leong We introduce dwmac410_dma_init_channel() here for both EQoS v4.10 and above which use different DMA_CH(n)_Interrupt_Enable bit definitions for NIE and AIE. Fixes: 48863ce5940f ("stmmac: add DMA support for GMAC 4.xx") Signed-off-by: Ong Boon Leong Signed-off-by: Ramesh Babu B --- .../net/ethernet/stmicro/stmmac/dwmac4_dma.c | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac4_dma.c b/drivers/net/ethernet/stmicro/stmmac/dwmac4_dma.c index bb29bfcd62c3..62aa0e95beb7 100644 --- a/drivers/net/ethernet/stmicro/stmmac/dwmac4_dma.c +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac4_dma.c @@ -124,6 +124,23 @@ static void dwmac4_dma_init_channel(void __iomem *ioaddr, ioaddr + DMA_CHAN_INTR_ENA(chan)); } +static void dwmac410_dma_init_channel(void __iomem *ioaddr, + struct stmmac_dma_cfg *dma_cfg, u32 chan) +{ + u32 value; + + /* common channel control register config */ + value = readl(ioaddr + DMA_CHAN_CONTROL(chan)); + if (dma_cfg->pblx8) + value = value | DMA_BUS_MODE_PBL; + + writel(value, ioaddr + DMA_CHAN_CONTROL(chan)); + + /* Mask interrupts by writing to CSR7 */ + writel(DMA_CHAN_INTR_DEFAULT_MASK_4_10, + ioaddr + DMA_CHAN_INTR_ENA(chan)); +} + static void dwmac4_dma_init(void __iomem *ioaddr, struct stmmac_dma_cfg *dma_cfg, int atds) { @@ -523,7 +540,7 @@ const struct stmmac_dma_ops dwmac4_dma_ops = { const struct stmmac_dma_ops dwmac410_dma_ops = { .reset = dwmac4_dma_reset, .init = dwmac4_dma_init, - .init_chan = dwmac4_dma_init_channel, + .init_chan = dwmac410_dma_init_channel, .init_rx_chan = dwmac4_dma_init_rx_chan, .init_tx_chan = dwmac4_dma_init_tx_chan, .axi = dwmac4_dma_axi,