Received: by 2002:a05:7412:d8a:b0:e2:908c:2ebd with SMTP id b10csp3531472rdg; Tue, 17 Oct 2023 19:35:31 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFIhAgutFpqPI6fpSva40DmuGuLIZvTocmqCEfRZvVbAFYZQScA6MZDbcQS225fW9wFgehg X-Received: by 2002:a17:902:fb87:b0:1ca:1c55:abcf with SMTP id lg7-20020a170902fb8700b001ca1c55abcfmr3811270plb.3.1697596531530; Tue, 17 Oct 2023 19:35:31 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1697596531; cv=none; d=google.com; s=arc-20160816; b=J2hTOjCxJW7pF/XkSS+MS3LVt4baqnfYCmAUHdMdFDR6HoQv6i3T7qcMYadx5oW85A NLCDV0wqbIFM6cx/90Uw2fCNcMQw9W340nB+ykkHZFW7nkuccjSFggXd+p9/qWr3zPiI 8S/sAicuJgV7cemx8Sq5W5LCkMmVLH903DbBSz05YQzFC4deME5RzKOtg3UQI/Pic8fM o7jj4AxEsNEaWADe0Ri1Rs3yGkFW8LsV/DYGAudY0iCRH2t1vA/m5oMR1DrKq9mhP2CM LNHs3s8cZ1+clQzdtAVh1uvGHbcrWbG2SE9bpFZo/0zH8wftAaLI8W6nxkLarLE7nuMd v28w== 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 :message-id:date:subject:cc:to:from:dkim-signature; bh=EN6pzje+uBGl7sBL+8zzGCIZ51USutIjj927RrUWOGk=; fh=dp6hVzrLwaoihxWaWRte+IJps3wRUXTqUMu5RJnMGec=; b=EFVluGQcGyCEFbpZAOuC2tiZ992HijuUNGMIsLCljQ6cJMz032aOZK6DP8Xh89LGeq K6Vgq8YQSRF8qZ5UC+SkXeOdks2EjJsBVu58xRmdgKFSifRCPy8UkEj5XkjCUF1aGNTI DsnKGDb594pgg7CHcOPwsVJfOPXM/kNIikklR1SaTdFPfCFDy3lPWJNEODloDarL16cW qfsvAx0kQ8b7PYzj8kIguwoQli2IFB28HwOi6Zc1JtbqSymqgapJR5flMuBj4t/fR+wa wQ5YLpO9Nm1cvDaQWdgk2cRCfrffDgBg5q149I0opqGJIF9gsrWuf5E12vHTOzgyfzta mjqQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=T9v+pSma; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.32 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from agentk.vger.email (agentk.vger.email. [23.128.96.32]) by mx.google.com with ESMTPS id j12-20020a170902da8c00b001c9bc844534si3395844plx.430.2023.10.17.19.35.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 17 Oct 2023 19:35:31 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.32 as permitted sender) client-ip=23.128.96.32; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=T9v+pSma; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.32 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by agentk.vger.email (Postfix) with ESMTP id E76F8807C5C3; Tue, 17 Oct 2023 19:35:28 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at agentk.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229492AbjJRCfW (ORCPT + 99 others); Tue, 17 Oct 2023 22:35:22 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54040 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229450AbjJRCfV (ORCPT ); Tue, 17 Oct 2023 22:35:21 -0400 Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.31]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 48E8AAB; Tue, 17 Oct 2023 19:35:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1697596520; x=1729132520; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=eW1nR+Vnq/ijVBW0+IDk2j8V33dp2IbrFLegJCuCDx4=; b=T9v+pSmawNy3CLXb/+KDSALHRW3hPHCyvUVVDHAb5IiLP9jCdQTy2umf WgHotEsVCK3riTu4ZXzI/uMkoOTrIHcvnsYL4Bu26jgURsppb3RuXp8L0 p/rfK7Tidzebzepi+UaLybo4kagjJ7hfyUsBbZZbX+Dc0q43TgP9LdE9C VhP4YXPynvsge2bbkk1gxCX6VYNBDT+tzMTI+Sa2Da545LwF/R91COOCT /z7g0xSYyeQhZVfYug2gaa4hdDzRu0WFJp0nX04ejGS5U1k/3Fmlbxoy4 v+ZyjzhvTFeDOCOnrqBJ3mB4PadlSPZivEXzwhJ40XxeUD5G7cLtK1+w+ Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10866"; a="450144128" X-IronPort-AV: E=Sophos;i="6.03,233,1694761200"; d="scan'208";a="450144128" Received: from fmviesa001.fm.intel.com ([10.60.135.141]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Oct 2023 19:35:19 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.03,233,1694761200"; d="scan'208";a="4333750" Received: from ssid-ilbpg3-teeminta.png.intel.com ([10.88.227.74]) by fmviesa001.fm.intel.com with ESMTP; 17 Oct 2023 19:35:17 -0700 From: "Gan, Yi Fang" To: Alexandre Torgue , Jose Abreu , "David S . Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Maxime Coquelin , Russell King , Ong Boon Leong , netdev@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Cc: Michael Sit Wei Hong , Looi Hong Aun , Voon Weifeng , Song Yoong Siang , Gan Yi Fang Subject: [PATCH net 1/1] net: stmmac: update MAC capabilities when tx queues are updated Date: Wed, 18 Oct 2023 10:31:36 +0800 Message-Id: <20231018023137.652132-1-yi.fang.gan@intel.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-0.9 required=5.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on agentk.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (agentk.vger.email [0.0.0.0]); Tue, 17 Oct 2023 19:35:29 -0700 (PDT) From: Michael Sit Wei Hong Upon boot up, the driver will configure the MAC capabilities based on the maximum number of tx and rx queues. When the user changes the tx queues to single queue, the MAC should be capable of supporting Half Duplex, but the driver does not update the MAC capabilities when it is configured so. Using the stmmac_reinit_queues() to check the number of tx queues and set the MAC capabilities accordingly. Fixes: 0366f7e06a6b ("net: stmmac: add ethtool support for get/set channels") Cc: # 5.17+ Signed-off-by: Michael Sit Wei Hong Signed-off-by: Gan, Yi Fang --- drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c index ed1a5a31a491..7ddc33fa0cb5 100644 --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c @@ -7172,6 +7172,14 @@ int stmmac_reinit_queues(struct net_device *dev, u32 rx_cnt, u32 tx_cnt) priv->rss.table[i] = ethtool_rxfh_indir_default(i, rx_cnt); + /* Half-Duplex can only work with single tx queue */ + if (priv->plat->tx_queues_to_use > 1) + priv->phylink_config.mac_capabilities &= + ~(MAC_10HD | MAC_100HD | MAC_1000HD); + else + priv->phylink_config.mac_capabilities |= + (MAC_10HD | MAC_100HD | MAC_1000HD); + stmmac_napi_add(dev); if (netif_running(dev)) -- 2.34.1