From patchwork Thu Aug 15 19:36:10 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sean Anderson X-Patchwork-Id: 13765103 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id A980AC52D7F for ; Thu, 15 Aug 2024 19:38:00 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From: Reply-To:Content-Type:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=mS/XIHwO7Vk4ocj6oR1f4FPm+sxNBxQSiDNNRlZ+GRw=; b=pIpLpZTlpjx6fG70y+y1N5D1pk czc2+2n4NNJECxeLDKt6ko7KLMq5qyR3CZCaZFARwRvNh9xEnzZsexG5/VlIas45kuqXA2wBlT2O9 swkUGAzew3EkHfKPxi6pJ8nYZmlsXxBj8cd+va2bB5Xs7fJj1AKmIgn98CRcPA8m1HUkYN7FbpqPK kNaKyds1mkicSfUMg4lVreupHVhVmSOXegLIaC3hKX4TvW5fEi02QfDYQw4fdMchlN1abzIi3d9AI UEdRq6BsjNxOnXGAcQJByxby7/lN0IDvji7WA9lqaDxrNZmEIzfkOrpf2Y4/N3sgemBKleNiRMw6J +ekFxRWA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1segI5-0000000AuOw-3eOi; Thu, 15 Aug 2024 19:37:45 +0000 Received: from out-173.mta0.migadu.com ([2001:41d0:1004:224b::ad]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1segGr-0000000Au55-1lRg for linux-arm-kernel@lists.infradead.org; Thu, 15 Aug 2024 19:36:30 +0000 X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1723750586; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=mS/XIHwO7Vk4ocj6oR1f4FPm+sxNBxQSiDNNRlZ+GRw=; b=hxhnZvhQUOPTc6d8r1wrCKAE7xhQHxRrW0CiCGtj7PcJ1MXdf59voT/FRZxv2qw7GnBnpB VXSapOfCL5BPff04QtlRnXfjWOxmj/JeBmaV8pvKwMQvkV+3pkXlMDKcfXIPiswVcyRUEe PYCHzE2jo5pApx81G9SaOdVxK61u5+Y= From: Sean Anderson To: Radhey Shyam Pandey , netdev@vger.kernel.org Cc: "David S . Miller" , Andrew Lunn , linux-arm-kernel@lists.infradead.org, Michal Simek , Daniel Borkmann , linux-kernel@vger.kernel.org, Paolo Abeni , Jakub Kicinski , Eric Dumazet , Sean Anderson , Simon Horman Subject: [PATCH net-next v2 1/5] net: xilinx: axienet: Always disable promiscuous mode Date: Thu, 15 Aug 2024 15:36:10 -0400 Message-Id: <20240815193614.4120810-2-sean.anderson@linux.dev> In-Reply-To: <20240815193614.4120810-1-sean.anderson@linux.dev> References: <20240815193614.4120810-1-sean.anderson@linux.dev> MIME-Version: 1.0 X-Migadu-Flow: FLOW_OUT X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240815_123629_614380_F0C989D9 X-CRM114-Status: UNSURE ( 9.09 ) X-CRM114-Notice: Please train this message. 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: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org If promiscuous mode is disabled when there are fewer than four multicast addresses, then it will to be reflected in the hardware. Fix this by always clearing the promiscuous mode flag even when we program multicast addresses. Fixes: 8a3b7a252dca ("drivers/net/ethernet/xilinx: added Xilinx AXI Ethernet driver") Signed-off-by: Sean Anderson Reviewed-by: Simon Horman --- (no changes since v1) drivers/net/ethernet/xilinx/xilinx_axienet_main.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/net/ethernet/xilinx/xilinx_axienet_main.c b/drivers/net/ethernet/xilinx/xilinx_axienet_main.c index ca04c298daa2..e664611c29cf 100644 --- a/drivers/net/ethernet/xilinx/xilinx_axienet_main.c +++ b/drivers/net/ethernet/xilinx/xilinx_axienet_main.c @@ -451,6 +451,10 @@ static void axienet_set_multicast_list(struct net_device *ndev) } else if (!netdev_mc_empty(ndev)) { struct netdev_hw_addr *ha; + reg = axienet_ior(lp, XAE_FMI_OFFSET); + reg &= ~XAE_FMI_PM_MASK; + axienet_iow(lp, XAE_FMI_OFFSET, reg); + i = 0; netdev_for_each_mc_addr(ha, ndev) { if (i >= XAE_MULTICAST_CAM_TABLE_NUM)