From patchwork Tue Nov 15 21:44:54 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Horatiu Vultur X-Patchwork-Id: 20592 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:6687:0:0:0:0:0 with SMTP id l7csp2955497wru; Tue, 15 Nov 2022 13:47:40 -0800 (PST) X-Google-Smtp-Source: AA0mqf4dLXpX9ogY/X3aH2HFIx1fWG2Slvz4C/uiZc5Eubyy2l8elYLNHr9STY0B5ISIbkSszSUK X-Received: by 2002:a05:6402:3885:b0:461:8d98:3d6d with SMTP id fd5-20020a056402388500b004618d983d6dmr16488865edb.116.1668548860748; Tue, 15 Nov 2022 13:47:40 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1668548860; cv=none; d=google.com; s=arc-20160816; b=hoi5DO8zQ6rozTVpi3iFp7Ljoja8lUlvtRcT7NymwvXFsJsxgQKSdXu48eTolYs1sf QgKn3xTj/aSiPKEfmoNgj7HSuHJ1bUzaFSfmf8dcpwQjptApl/gwZZbjlFwCAaNvj4ru tVk+Ue9p+wWzZOzRxrFBLOold64D7QHh3B22dbD08L3hnd/zDsCAXnZ6rTLkzQBeYfSk c3R3Z9kdLjvSt4TELqFM1fNBgh7XeSbKuRqO6R5pjH4d8dKd6YzKbboLjwKa2qdmmiNZ 6WQzMIEWpkC0FC4nN/QVCdB6HyW/DDtraIkJuU93VpHKnQe6cMzk2C+O2882tLcf7CWL dOhw== 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 :dkim-signature; bh=2nWItbphGfB17MFeOzSSm4NoACTXpW1xzBzE4FMr+1Q=; b=nog1NUBAZcd0MG3BNHKdIJ4wet5brkXuiiIHV6YUaoErEfzjsPsa0Os10tE/SvI4i8 19xBmbf1XqFznjriOvpQTSaB6Hfum64mD3ca0OKYUwmREuhI/5cmiQ7qx2ZDX2MLWTBp HXnRw85sdCjjPhYIx9Agso+GugYTQBjlFjsQq94y17BmTbuP4yrPTOCkhWJUpCPLgm3l XqxERvuIu+j/7TrHMQwRTfUzBD6DmvzX5DJ/uhDgg3kvBVJo0w1hP1QN6tcqeN1aXAoV jt6VMluZw08pb68GcTR1zqzUN7oZD7l8C8+ZSqypXYzsIlVhkOYyDI29OtI5+53wF7ue sjIw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@microchip.com header.s=mchp header.b=doz9pgsP; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=microchip.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id ko16-20020a170907987000b0078d473448afsi10294929ejc.233.2022.11.15.13.47.16; Tue, 15 Nov 2022 13:47:40 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@microchip.com header.s=mchp header.b=doz9pgsP; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=microchip.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229978AbiKOVlF (ORCPT + 99 others); Tue, 15 Nov 2022 16:41:05 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33510 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S238837AbiKOVkt (ORCPT ); Tue, 15 Nov 2022 16:40:49 -0500 Received: from esa.microchip.iphmx.com (esa.microchip.iphmx.com [68.232.154.123]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DB4F02D1FD; Tue, 15 Nov 2022 13:40:39 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=microchip.com; i=@microchip.com; q=dns/txt; s=mchp; t=1668548439; x=1700084439; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=06uf81UhcRsqU248Upd8RTcFIMaBlp2xwT4+VIGMlqQ=; b=doz9pgsP6tdBh+pldkoESxLPsowHQ0dMuzmR2nLyR5yHS+yZ5l0nn2Vq wKbSQTx9Z0YmPGqLsCC6g7xCqovo92ZwHy4MbCtzzaEs24LthyYUqFC8t 9rsQatFlyc2VplxacpJiMsxEH2nx7axwD0AR+VVcOGNLAQSzfud4QQRFy neP4zoLUyCSJbAoyqMpgd6Vg6o5AcKzbwz2mimCSXn+hMQyeD8w6p5xUl DqsufsQJA4s5pN1ePjhcuP3Mt43Rbg+MxOaYkXCLpK0RyDBSxCE7GcPfL FVKuJEgks/Jpya8v78DnZoA2Zd/VllltbJQpCGjJZuGRx0frSh2LXtTLX Q==; X-IronPort-AV: E=Sophos;i="5.96,167,1665471600"; d="scan'208";a="187145448" Received: from unknown (HELO email.microchip.com) ([170.129.1.10]) by esa2.microchip.iphmx.com with ESMTP/TLS/AES256-SHA256; 15 Nov 2022 14:40:39 -0700 Received: from chn-vm-ex03.mchp-main.com (10.10.85.151) by chn-vm-ex01.mchp-main.com (10.10.85.143) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.12; Tue, 15 Nov 2022 14:40:30 -0700 Received: from soft-dev3-1.microsemi.net (10.10.115.15) by chn-vm-ex03.mchp-main.com (10.10.85.151) with Microsoft SMTP Server id 15.1.2507.12 via Frontend Transport; Tue, 15 Nov 2022 14:40:27 -0700 From: Horatiu Vultur To: , , CC: , , , , , , , , , , Horatiu Vultur Subject: [PATCH net-next v2 3/5] net: lan966x: Add len field to lan966x_tx_dcb_buf Date: Tue, 15 Nov 2022 22:44:54 +0100 Message-ID: <20221115214456.1456856-4-horatiu.vultur@microchip.com> X-Mailer: git-send-email 2.38.0 In-Reply-To: <20221115214456.1456856-1-horatiu.vultur@microchip.com> References: <20221115214456.1456856-1-horatiu.vultur@microchip.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED, SPF_HELO_PASS,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1749600290370306989?= X-GMAIL-MSGID: =?utf-8?q?1749600290370306989?= Currently when a frame was transmitted, it is required to unamp the frame that was transmitted. The length of the frame was taken from the transmitted skb. In the future we might not have an skb, therefore store the length skb directly in the lan966x_tx_dcb_buf and use this one to unamp the frame. Signed-off-by: Horatiu Vultur --- drivers/net/ethernet/microchip/lan966x/lan966x_fdma.c | 5 +++-- drivers/net/ethernet/microchip/lan966x/lan966x_main.h | 1 + 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/net/ethernet/microchip/lan966x/lan966x_fdma.c b/drivers/net/ethernet/microchip/lan966x/lan966x_fdma.c index 94c720e59caee..384ed34197d58 100644 --- a/drivers/net/ethernet/microchip/lan966x/lan966x_fdma.c +++ b/drivers/net/ethernet/microchip/lan966x/lan966x_fdma.c @@ -391,12 +391,12 @@ static void lan966x_fdma_tx_clear_buf(struct lan966x *lan966x, int weight) continue; dcb_buf->dev->stats.tx_packets++; - dcb_buf->dev->stats.tx_bytes += dcb_buf->skb->len; + dcb_buf->dev->stats.tx_bytes += dcb_buf->len; dcb_buf->used = false; dma_unmap_single(lan966x->dev, dcb_buf->dma_addr, - dcb_buf->skb->len, + dcb_buf->len, DMA_TO_DEVICE); if (!dcb_buf->ptp) dev_kfree_skb_any(dcb_buf->skb); @@ -709,6 +709,7 @@ int lan966x_fdma_xmit(struct sk_buff *skb, __be32 *ifh, struct net_device *dev) /* Fill up the buffer */ next_dcb_buf = &tx->dcbs_buf[next_to_use]; next_dcb_buf->skb = skb; + next_dcb_buf->len = skb->len; next_dcb_buf->dma_addr = dma_addr; next_dcb_buf->used = true; next_dcb_buf->ptp = false; diff --git a/drivers/net/ethernet/microchip/lan966x/lan966x_main.h b/drivers/net/ethernet/microchip/lan966x/lan966x_main.h index bc93051aa0798..7bb9098496f60 100644 --- a/drivers/net/ethernet/microchip/lan966x/lan966x_main.h +++ b/drivers/net/ethernet/microchip/lan966x/lan966x_main.h @@ -175,6 +175,7 @@ struct lan966x_rx { struct lan966x_tx_dcb_buf { struct net_device *dev; struct sk_buff *skb; + int len; dma_addr_t dma_addr; bool used; bool ptp;