From mboxrd@z Thu Jan 1 00:00:00 1970 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 48127C433EF for ; Thu, 16 Dec 2021 13:31:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-ID:Subject:Cc:To: From:Date: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=7hsiu9Kv4mUlsRS6qs/hI8V2BtxrXRXcqhIrshwKwrs=; b=XYxlMqTAjhXbBd Y8U5LbzWmUlJ6QEsxpMmlWf1DslQvPN19gk/fnqtpnkkH87gNhNqRzwMeR9Eu0UYoxF1W0tde+Ojb 4l7v21hojz66zzql2UL3a0QKkd12PxWHhKvlWfhNooeH/cu9nxo+T/oapC/sJNU671NT7+uDMDcls Jvtff7NF6tyz41BJTgxV26/AJGo/w8LVQUAiVeJXP4UwjvP9wqDj/MakK45uKUpglZi9l0sBBq13j g1nABKgsD5e+tB5lixQYEEtQ3EXkby2cwFIueShHt+1LNeip4g4XmSTHbuGGiG2v0eNwDtc7hbcLs CwHqvcnW62M9CzqgAlMA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1mxqpU-005o34-F3; Thu, 16 Dec 2021 13:29:53 +0000 Received: from pandora.armlinux.org.uk ([2001:4d48:ad52:32c8:5054:ff:fe00:142]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1mxqYH-005fm6-0h for linux-arm-kernel@lists.infradead.org; Thu, 16 Dec 2021 13:12:06 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=armlinux.org.uk; s=pandora-2019; h=Sender:Content-Type:MIME-Version: Message-ID:Subject:Cc:To:From:Date:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=wHsilHS0z8BwdSdM+lXoMOjmJiClWgkl8JYzzdvfN88=; b=DMeto2sE7xQ6XVdNbAW3Pu1UbB Qy4zgZ9S2hlzoPaEUHhz5wHhFQbgc5xI9YYHwdX+A8vcrbvgfRzeiSoztKMLRmxJfPLAVksfU14Es WV/DD/oX8qLfDM5Io/y0sTFQ+vr8/+rGrMMsNgfbX4TCWnBdX13HNYwAqpbgybYj9YFrVrCsX8Qwg vIk9h1A5ZKp1nCLez492YkBvnxLIEN6KZ8cDpxao5NJHhTc+S9yH5dyH79JYo43oLL8C23pZET7VI OpndX1Sxe3fobzuRa2dzTYJErFfx0v9GRKs7AFP8K54cMynp8oqICmVWZsqQGQFPbjoGHuDZCCOdG qjiRfpYw==; Received: from shell.armlinux.org.uk ([fd8f:7570:feb6:1:5054:ff:fe00:4ec]:56320) by pandora.armlinux.org.uk with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1mxqY6-0007sD-O7; Thu, 16 Dec 2021 13:11:54 +0000 Received: from linux by shell.armlinux.org.uk with local (Exim 4.94.2) (envelope-from ) id 1mxqXs-0005Rj-Cp; Thu, 16 Dec 2021 13:11:40 +0000 Date: Thu, 16 Dec 2021 13:11:40 +0000 From: "Russell King (Oracle)" To: Alexandre Torgue , Giuseppe Cavallaro , Jose Abreu , Maxime Coquelin Cc: Andrew Lunn , "David S. Miller" , Heiner Kallweit , Jakub Kicinski , Jose Abreu , linux-arm-kernel@lists.infradead.org, linux-stm32@st-md-mailman.stormreply.com, netdev@vger.kernel.org Subject: [PATCH CFT net-next 0/6] net: stmmac/xpcs: modernise PCS support Message-ID: MIME-Version: 1.0 Content-Disposition: inline X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20211216_051205_129950_26E8C486 X-CRM114-Status: GOOD ( 14.53 ) 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: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Hi, This series updates xpcs and stmmac for the recent changes to phylink to better support split PCS and to get rid of private MAC validation functions. This series is slightly more involved than other conversions as stmmac has already had optional proper split PCS support. The patches: 1) Provide a function to query the xpcs for the interface modes that are supported. 2) Populates the MAC capabilities and switches stmmac_validate() to use phylink_get_linkmodes(). We do not use phylink_generic_validate() yet as (a) we do not always have the supported interfaces populated, and (b) the existing code does not restrict based on interface. There should be no functional effect from this patch. 3) Populates phylink's supported interfaces from the xpcs when the xpcs is configured by firmware and also the firmware configured interface mode. Note: this will restrict stmmac to only supporting these interfaces modes - stmmac maintainers need to verify that this behaviour is acceptable. 4) stmmac_validate() tail-calls xpcs_validate(), but we don't need it to now that PCS have their own validation method. Convert stmmac and xpcs to use this method instead. 5) xpcs sets the poll field of phylink_pcs to true, meaning xpcs requires its status to be polled. There is no need to also set the phylink_config.pcs_poll. Remove this. 6) Switch to phylink_generic_validate(). This is probably the most contravertial change in this patch set as this will cause the MAC to restrict link modes based on the interface mode. From an inspection of the xpcs driver, this should be safe, as XPCS only further restricts the link modes to a subset of these (whether that is correct or not is not an issue I am addressing here.) For implementations that do not use xpcs, this is a more open question and needs feedback from stmmac maintainers. Please review and test this series. Thanks! drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 144 ++++++---------------- drivers/net/pcs/pcs-xpcs.c | 41 +++--- include/linux/pcs/pcs-xpcs.h | 3 +- 3 files changed, 67 insertions(+), 121 deletions(-) -- RMK's Patch system: https://www.armlinux.org.uk/developer/patches/ FTTP is here! 40Mbps down 10Mbps up. Decent connectivity at last! _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel