From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-alma10-1.taild15c8.ts.net [100.103.45.18]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 34C8E4CB5B; Sun, 7 Jun 2026 10:20:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=100.103.45.18 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780827611; cv=none; b=V3Ga55Wb6I+IlTpBNgmjXBwZ0nHBXsn5kva9uh+rJLGtQUeoWWk9qXz1IP3Ar8FgtwICfD3vt1AZNI7vDXOPdWKLQ3kmHbrj40mQK1XjB+F3qswafBcUtVTnsVN/JC5xyX37Zzv8rOHgaAs9tM1e7NmO3+wkXq3tgw+4Q5q+ovM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780827611; c=relaxed/simple; bh=+npXqDEyhgESx+Cs3cjkMbfP8LBXHajIqPcBjWDMwuM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=hMyYQvFanyMkyjhNi3NPeNC0WjfF/uv5/4lHNg7IYBWYXoyEw+lS/uqdZoMsUlV3gb6aFTKofJcDbymc0MilyaI/bO2Rf5SGp8/RkWxINpZSzG4wCEyDsCG+/goAuTRe1VvqpYHUshUXVK3EqOx/CxYwUktqCKP90eBdY3nrGfo= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b=w8LGyCcM; arc=none smtp.client-ip=100.103.45.18 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b="w8LGyCcM" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7FD791F00893; Sun, 7 Jun 2026 10:20:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linuxfoundation.org; s=korg; t=1780827610; bh=bAvvnH5zhgw+EBs/NWYSK2JoOPLk5miBwekqHPb+K9Q=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=w8LGyCcMkd2TYu3DgbW74wwBRT77kpKgFh6VVV6cz2gbEBXDDZIivLSiPnOmG7D2U 4VBr6zyp7q1ge98EOLPxDfZ+tXGghvWf3w4TJRMPgYul9DHbz1sLwPNYKY67UitFvm aSyFamu2+/5/7a1RatZR7Tcz2sDWYzOunWD4d9t8= From: Greg Kroah-Hartman To: stable@vger.kernel.org Cc: Greg Kroah-Hartman , patches@lists.linux.dev, Frank Wunderlich , Vladimir Oltean , Jakub Kicinski , Sasha Levin Subject: [PATCH 7.0 108/332] net: pcs: pcs-mtk-lynxi: fix bpi-r3 serdes configuration Date: Sun, 7 Jun 2026 11:57:57 +0200 Message-ID: <20260607095732.087093999@linuxfoundation.org> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260607095728.031258202@linuxfoundation.org> References: <20260607095728.031258202@linuxfoundation.org> User-Agent: quilt/0.69 X-stable: review X-Patchwork-Hint: ignore Precedence: bulk X-Mailing-List: patches@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 7.0-stable review patch. If anyone has any objections, please let me know. ------------------ From: Frank Wunderlich [ Upstream commit 422b5233b607476ac7176bfa2a101b9a103d7653 ] Commit 8871389da151 introduces common pcs dts properties which writes rx=normal,tx=normal polarity to register SGMSYS_QPHY_WRAP_CTRL of switch. This is initialized with tx-bit set and so change inverts polarity compared to before. It looks like mt7531 has tx polarity inverted in hardware and set tx-bit by default to restore the normal polarity. The MT7531 datasheet quite clearly states: Register 000050EC QPHY_WRAP_CTRL -- QPHY wrapper control Reset value: 0x00000501 BIT 1 RX_BIT_POLARITY -- RX bit polarity control 1'b0: normal 1'b1: inverted BIT 0 TX_BIT_POLARITY -- TX bit polarity control (TX default inversed in MT7531) 1'b0: normal 1'b1: inverted Till this patch the register write was only called when mediatek,pnswap property was set which cannot be done for switch because the fw-node param was always NULL from switch driver in the mtk_pcs_lynxi_create call. Do not configure switch side like it's done before. Fixes: 8871389da151 ("net: pcs: pcs-mtk-lynxi: deprecate "mediatek,pnswap"") Signed-off-by: Frank Wunderlich Reviewed-by: Vladimir Oltean Link: https://patch.msgid.link/20260526153239.30194-1-linux@fw-web.de Signed-off-by: Jakub Kicinski Signed-off-by: Sasha Levin --- drivers/net/pcs/pcs-mtk-lynxi.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/net/pcs/pcs-mtk-lynxi.c b/drivers/net/pcs/pcs-mtk-lynxi.c index c12f8087af9be5..a753bd88cbc223 100644 --- a/drivers/net/pcs/pcs-mtk-lynxi.c +++ b/drivers/net/pcs/pcs-mtk-lynxi.c @@ -129,6 +129,9 @@ static int mtk_pcs_config_polarity(struct mtk_pcs_lynxi *mpcs, unsigned int val = 0; int ret; + if (!fwnode) + return 0; + if (fwnode_property_read_bool(fwnode, "mediatek,pnswap")) default_pol = PHY_POL_INVERT; -- 2.53.0