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 5BB17CFD2EF for ; Sat, 22 Nov 2025 19:34:30 +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:MIME-Version:Content-Type: Content-Transfer-Encoding:References:In-Reply-To:Message-Id:Date:Subject:Cc: To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=ny5+2gznRz7R51l1B2RsyXm0hG1ZpVCqZF99OXnTKBI=; b=4g5WjUcJ9mqfgA8ZVAbPKfLeuc IQBgLxSNlNg6R8qwmq/2ZpnkDxCtm9rMaahlnzSURzK8fUWDHL85um9j2pKNrfp8Ov4MalL5dF5+d mPGWEVuZ4I92McUp2XprtUdK/LSnYFK40LpZQ+u3dKpDt9oyiE3PJo/k0F/pd20d6cURI5y+mxvhf ivR9ws4n7FVNNfX9JpVOKetpYBuDZeTtGpeFdWi/mXYf265QWIi0P3nj7i8q3JnWnCok6JGYFF+Y5 76Dhy2oxKEOjo9P0SKKsiCmEJJbcnjT2T7QpjKOWzPd5+unr0SRMcE54R2NfHe1dS9nwhFRo6XUwU gWuWJ/YA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98.2 #2 (Red Hat Linux)) id 1vMtNI-00000009pb5-0sIw; Sat, 22 Nov 2025 19:34:24 +0000 Received: from mail-francecentralazlp170130007.outbound.protection.outlook.com ([2a01:111:f403:c20a::7] helo=PA4PR04CU001.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.98.2 #2 (Red Hat Linux)) id 1vMtN9-00000009pG0-2Xe6; Sat, 22 Nov 2025 19:34:16 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=CEE2IFYlqqRLu/NMSf/uV6SdVzrzaPbdpd7H3MGNn3mZoPUUy5pWqJn23kRIeGTXE+0UsukVeYjt7uthrBLzPWj/NesN7hpkjzdn/fWpVB/RLR66H9PtpDw+Q+/S5rO2ooWIaRJl4wiu2Z+31Ppc7K15M+oLkC+4wuIsF7fvyhFnaIXZxySo3/qp5dJpd3mSCZS6GwPDKbjDhEs7kQRYxS0c94qL0EjfLQYEmo92a7SPKIPUqkd1gVRQqXF9oztUcuZC+cCxreXKF/aXGmn3jY+KRYpWOmbienjxKQL/Fplqgp87epYtt/jLhRqy2x3pYXD/VU75IjOa7VLFRMfPTg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ny5+2gznRz7R51l1B2RsyXm0hG1ZpVCqZF99OXnTKBI=; b=iOdhFmBaONKRT6MOhrL+JkoJ0qhJFfCLcEsev3G8TVxub1XukSsfqgZUClFX4IDjE2tOgZZ+x5ZQss/LYJ74ARR5yrN/OPgY/8gh5coDfk0+H5eOtTnucsD6pZDG7CM+OK1CzV1WeXaNjkPP2WaY8/M5kOoHd0d/so/9YPp2PtT1JpM1qQBiohe8i88pk8XMci1x2o8IVNYbM4pBlCnrZ8Wdr8b74ufMfEp1joH9xqKSymV43pQ5oT2dX+VWImv3OL/X4p72U6i+3iQwaJHjWBY6L66jSFvtXF3T4J4Vn3PIuQ27ifX0nU+CZienC+jgr1/zlfPcKLDJzcLZGuSqJQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ny5+2gznRz7R51l1B2RsyXm0hG1ZpVCqZF99OXnTKBI=; b=mGRXzo/bhi+VP5w028wsQdFx0LEp7WHCzN66cqHON/pchQIjSNmD2LF0lUAZ5EDqvzxooqBj4CHEJRCvPDNzrsgkpr4USpHLhmQ8NvrhGLyGzLzfvSOBD4EneCF50S5Z/qAADiO1j2UZkqjhY5ZND48A7U9b7GvQpN2fCX2CLisyON9UegmQMKeE0rwVuTojlMJZ/8bJ3khazFsMFQ4I9wGT9S2fOmXfgJsUkZdeosVBikAfeRTOqWAWn2MNXLFoifCYc5mylShLgkOmF8pub+Zk7EQpo5Ms6ZctCFiA4vdFakz5UcaHlPOvbtwq75GSPZO2QCrCderBcDmetPHJcQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from AM9PR04MB8585.eurprd04.prod.outlook.com (2603:10a6:20b:438::13) by AS8PR04MB9510.eurprd04.prod.outlook.com (2603:10a6:20b:44a::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9343.15; Sat, 22 Nov 2025 19:34:10 +0000 Received: from AM9PR04MB8585.eurprd04.prod.outlook.com ([fe80::8063:666f:9a2e:1dab]) by AM9PR04MB8585.eurprd04.prod.outlook.com ([fe80::8063:666f:9a2e:1dab%5]) with mapi id 15.20.9343.011; Sat, 22 Nov 2025 19:34:10 +0000 From: Vladimir Oltean To: netdev@vger.kernel.org, devicetree@vger.kernel.org, linux-phy@lists.infradead.org Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, Daniel Golle , Horatiu Vultur , Andrew Lunn , Heiner Kallweit , Russell King , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Vinod Koul , Kishon Vijay Abraham I , Matthias Brugger , AngeloGioacchino Del Regno , Eric Woudstra , =?UTF-8?q?Marek=20Beh=C3=BAn?= , Lee Jones , Patrice Chotard Subject: [PATCH net-next 8/9] net: phy: air_en8811h: deprecate "airoha,pnswap-rx" and "airoha,pnswap-tx" Date: Sat, 22 Nov 2025 21:33:40 +0200 Message-Id: <20251122193341.332324-9-vladimir.oltean@nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20251122193341.332324-1-vladimir.oltean@nxp.com> References: <20251122193341.332324-1-vladimir.oltean@nxp.com> Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: AM0PR10CA0010.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:208:17c::20) To AM9PR04MB8585.eurprd04.prod.outlook.com (2603:10a6:20b:438::13) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM9PR04MB8585:EE_|AS8PR04MB9510:EE_ X-MS-Office365-Filtering-Correlation-Id: 3fea16d2-b839-4556-96ae-08de29fe1c00 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|7416014|52116014|366016|10070799003|1800799024|19092799006; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?oFbdB8D2bCXZ1yWNaj66XXJYpnVlFkppKHwa8Ru+GEU+J3oC9pfsgki6XVix?= =?us-ascii?Q?c6TjThZTkzLNxRJqxcNXz9KdgznuCXpY6X1kqBLTkUN5cs01uciXtjLazC8t?= =?us-ascii?Q?5gncLzxXinIZipcrvb3x2PibgYRqq99xv2zvIZ7kUPP6ENucfC14SP4FsmQv?= =?us-ascii?Q?i2M8TjcIDmtpktUBm+1pButbQyT6pnx9kdx17/P8NzlWXFLVSqHUM6FHkGeM?= =?us-ascii?Q?hDtdlVv8w2j9nS84xNjGVJcHgJTETem9gkH46ed6h6qB+IQsux54h14KfjQf?= =?us-ascii?Q?Y08iXzuSDU+jkS30Ei+3exfAhp81sw01CBxZSwiinvwxaUqmXhy7OVkjtBMi?= =?us-ascii?Q?r5qf9EGtpnqWo0UCe4zGbzQx12MMbxGznc8s2GneLOn7dmrjF5g37TITgM3p?= =?us-ascii?Q?c/dnjC4KngZQ+cUk2QSjhv0cFMMkREukm364EMW0kmgUsbUHaMBh430YRdmt?= =?us-ascii?Q?Xnyztt5XB7nf/DRJWEmIHs1fhgpVSHTUiw89WhDyTuAYv4QCE4glWqnC6KEY?= =?us-ascii?Q?Nb3Bc1nk90sY/oiFaSLcO9+jYYphoNjNh0LiJv86BRdav0vwPCbAfhWPL+gQ?= =?us-ascii?Q?dALqPm1EK7wfjXIuEqRQvXgLZtnqe+Q/yOEiXFMq40He3tt0hVxRcpMlW85s?= =?us-ascii?Q?1V7qQoipJUNIN1PcqAcfM4Wkkq5m9q0p3FgqX4ghJk8LcNM9+ROxRT5tZk+h?= =?us-ascii?Q?YcBnjDTa+CCB0Kht3RlP3JSyugIz12wvLb75ohzvf3d9yh+fv6S7jRP6Llka?= =?us-ascii?Q?8HZ0XQ1HQjc1WQ4F0D0uQK1yayaoEGM9M7cEdb9++R1YSMSN4kPjSIwOLgFT?= =?us-ascii?Q?kY5scgtbd8Y4o2UKTAjnqwvOIHoWQJUQelUawyr6w9Y0ksWdYTOldaAUzDM2?= =?us-ascii?Q?c7L/DZlddhfrTF/GXJLToqb4nAEgVkxTv8zu+cSpwCHwUQ+dM1QbQ9AGBtBI?= =?us-ascii?Q?yGBpnXqp1C4PSV0G3qtfLkyURjO199Hwbnpozirf+jB5EqlzoNGrLU29yOMQ?= =?us-ascii?Q?bWPERxtXl19EXlRMFlZYNJeIaPnjd6A8GSDMegqO3Vj0bgdzmYN0x28WUcvM?= =?us-ascii?Q?CCmPpLY4e4KCy2juVUs2TEK0QjHSeMoPsGccLGs0mxPtJrRp2t29+pVj7Ih5?= =?us-ascii?Q?wv1TBdh1jc6sRge+S2sItLbm8XEPAkpzobhcKsay/4ZPCmcgBvfG8SHJ618O?= =?us-ascii?Q?Tif9f+aXRGM82zBSzlYI1CMvKvOOjnZkYaW468SdYsh0RRJeTePK8R5gbrso?= =?us-ascii?Q?P5hmO4LXRU4+2GmAMn7YPtVIC19L4U1BSsIHocLYMwA8ILlGyzKup2L6oBQ/?= =?us-ascii?Q?jyHDenhCYmMAYEX5oFeb4NKelPKZFeX69ntCQx+aiBZv9hLk47hdjIohnyrN?= =?us-ascii?Q?2H2YqiIUuEGR3+AV2RJ2PicOmf+r9jp+Q/3RX6PxDEexZM8El3WntLXKzfEf?= =?us-ascii?Q?UEhslrWMH5LcDvNYMeofeOxp7gSjz3bD?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM9PR04MB8585.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(7416014)(52116014)(366016)(10070799003)(1800799024)(19092799006);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?2NvfDJmUU9DAeWOEkohKUZw0S2qAXq3saaFrnS4XAXcbqsT61S7Mh19fb8BD?= =?us-ascii?Q?LqNQGThj+/bUfz4THpUYU1V+xyNpT4Eevh13p72a1CuUos3VBkMAvkr0VAFi?= =?us-ascii?Q?6enDRDKwbkvGW9xqmrLTo3mTlB6N3+elxSsKO+jzifmdvnimx3gtRrgN+nUS?= =?us-ascii?Q?Y8lhALUx8UT9cCYiaaSZnhdPak2c21Huc8ITvn+W2wJSPg+QTIYGou0hGsDR?= =?us-ascii?Q?aFgNJBTseHiYRgZIr0ugwqfte4ABrX7ZspEt0NSwJyAsN7xRtlumFtOZUjX/?= =?us-ascii?Q?Zdlspfmm978uf/oSHTsqkVX7exIlEta53i+puUoH0v27nziNBtPmssELl1+v?= =?us-ascii?Q?V4xuAJ/f/81Su54/BXgQau+1cAO9yXDXo9urSHWDlPONpiShd1KVaoE/MXUE?= =?us-ascii?Q?GOflQVbGAET7oF4YD9rl3+qRQY0m087oLB7mYL1JlihD/wKwAWgXnW2Vee1z?= =?us-ascii?Q?RqFRLqurNyfP5wXYNV6xM9H1zF7uoNMPIX2baRXRUOsfgdIIC1Fls78powUu?= =?us-ascii?Q?fR1UTIfQ6YGxq1D/TfWM820BO1NZBLEarD6ByouX4kl4Bap/c03zpaNgmJFP?= =?us-ascii?Q?vLxUQcsY3e/klxv5zFugbxxo4Jaqt0kb9cN0jnKAIBNxVNNOVeLFTN6qCNva?= =?us-ascii?Q?4/ZU/MjxJ8dhYdwAhLZ3doRO0H6icxhEt/bptjdXEihfzna2IAU0h1u07ngJ?= =?us-ascii?Q?cDJElXYKCI/eBEs4JrfkjmIOFnEAUGPlq38ZfqA3so3tuCKBKQ4OHW1n2HTY?= =?us-ascii?Q?usj7RJxtu7z5pcK8jAd+E9E/JzkI5YEB6AnJFPJZ1eCyxCrtDCijvE9zJnZe?= =?us-ascii?Q?KpAL8R6NkgWTizCFNl8O8pvQKlXc8YNn/fAaIdlG3uG1j2tBPnDSJiu9AwiU?= =?us-ascii?Q?GxjgNQRXH40JvaBL+r6gYLxo1h9JC0UtUclNakceS37KeKOOdycGjAYDLShs?= =?us-ascii?Q?ukaJAINFKBdTyY85/FKQtGCTVVELDeGOTn2CMJOXI2ZtQG9M4uF1kgaFQPVa?= =?us-ascii?Q?o8oiK4bNryADT7FoKctZzbml7FjMoUBcFFRdwllot7eJn2YXoyQyHsR1Fo9e?= =?us-ascii?Q?/uiz0AAzbm+NllRV0qHTEVjpbTbb15m0wkOFbbgsDIOztn6PaZGIC+4Md4PV?= =?us-ascii?Q?vbjs6LugtCRzH6pL0Fmo/Ejin0uWriTw9E2gDo6CndDTjWqCc0Q9pUdwyn7k?= =?us-ascii?Q?2gz6sODRA8dVXZz2dQCUVfo+LVZOySyFaxAyF/PTPi+t5kXNyF2AXkPplfGz?= =?us-ascii?Q?1NBgXKXkfEPus0kyF3bOfUzxJFitBf7DILfplSGRU76sB37fnlTCmYmtR/pm?= =?us-ascii?Q?cT2Yaq1oIIOZEtcvVhJi+Oll3Zm3bw6SG5kaG/ZPPvCcORd2pBIAOF1vpR9k?= =?us-ascii?Q?DUWCL2E0YXLmKGIOUSxlYuhFTHXRaNe4uNKzkk0uEgHOQ7Ndan9WioJMzcDC?= =?us-ascii?Q?l5Jcm0Em+Gs6K8KIo0s3OcUSuYgUzQ3q+gi62k5G/GLsDXO3emqZk90J4OqY?= =?us-ascii?Q?sGljvy1O9vNBcJG1xep1prgTqnpBKnYFzu5NEx9BApfORx/YBmLdGAh5xgeO?= =?us-ascii?Q?WsJxcEh+LToxrqjQH1qRdyrF9BbwFD0hT8PniFuBl462rS4h+8nb/CGglRKC?= =?us-ascii?Q?lK9/WkosMV+Q0qSrct54RtI=3D?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3fea16d2-b839-4556-96ae-08de29fe1c00 X-MS-Exchange-CrossTenant-AuthSource: AM9PR04MB8585.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Nov 2025 19:34:10.2999 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 3uxL4i9TKf9aKzcWVdoak70SbVbUVdqqRNaDrOWI0DpcJafU532oM7YUQxM//jraK5QJN7rZVOppFsr3fHU2PQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB9510 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20251122_113415_652967_9C5E61DD X-CRM114-Status: GOOD ( 16.66 ) 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 Prefer the new "rx-polarity" and "tx-polarity" properties, and use the vendor specific ones as fallback if the standard description doesn't exist. Signed-off-by: Vladimir Oltean --- drivers/net/phy/Kconfig | 1 + drivers/net/phy/air_en8811h.c | 50 ++++++++++++++++++++++++----------- 2 files changed, 36 insertions(+), 15 deletions(-) diff --git a/drivers/net/phy/Kconfig b/drivers/net/phy/Kconfig index a7ade7b95a2e..7b73332a13d9 100644 --- a/drivers/net/phy/Kconfig +++ b/drivers/net/phy/Kconfig @@ -98,6 +98,7 @@ config AS21XXX_PHY config AIR_EN8811H_PHY tristate "Airoha EN8811H 2.5 Gigabit PHY" + select PHY_COMMON_PROPS help Currently supports the Airoha EN8811H PHY. diff --git a/drivers/net/phy/air_en8811h.c b/drivers/net/phy/air_en8811h.c index badd65f0ccee..4171fecb1def 100644 --- a/drivers/net/phy/air_en8811h.c +++ b/drivers/net/phy/air_en8811h.c @@ -14,6 +14,7 @@ #include #include #include +#include #include #include #include @@ -966,11 +967,42 @@ static int en8811h_probe(struct phy_device *phydev) return 0; } +static int en8811h_config_serdes_polarity(struct phy_device *phydev) +{ + struct device *dev = &phydev->mdio.dev; + int pol, default_pol; + u32 pbus_value = 0; + + default_pol = PHY_POL_NORMAL; + if (device_property_read_bool(dev, "airoha,pnswap-rx")) + default_pol = PHY_POL_INVERT; + + pol = phy_get_rx_polarity(dev_fwnode(dev), phy_modes(phydev->interface), + PHY_POL_NORMAL | PHY_POL_INVERT, default_pol); + if (pol < 0) + return pol; + if (pol == PHY_POL_INVERT) + pbus_value |= EN8811H_POLARITY_RX_REVERSE; + + default_pol = PHY_POL_NORMAL; + if (device_property_read_bool(dev, "airoha,pnswap-tx")) + default_pol = PHY_POL_INVERT; + + pol = phy_get_tx_polarity(dev_fwnode(dev), phy_modes(phydev->interface), + PHY_POL_NORMAL | PHY_POL_INVERT, default_pol); + if (pol < 0) + return pol; + if (pol == PHY_POL_NORMAL) + pbus_value |= EN8811H_POLARITY_TX_NORMAL; + + return air_buckpbus_reg_modify(phydev, EN8811H_POLARITY, + EN8811H_POLARITY_RX_REVERSE | + EN8811H_POLARITY_TX_NORMAL, pbus_value); +} + static int en8811h_config_init(struct phy_device *phydev) { struct en8811h_priv *priv = phydev->priv; - struct device *dev = &phydev->mdio.dev; - u32 pbus_value; int ret; /* If restart happened in .probe(), no need to restart now */ @@ -1003,19 +1035,7 @@ static int en8811h_config_init(struct phy_device *phydev) if (ret < 0) return ret; - /* Serdes polarity */ - pbus_value = 0; - if (device_property_read_bool(dev, "airoha,pnswap-rx")) - pbus_value |= EN8811H_POLARITY_RX_REVERSE; - else - pbus_value &= ~EN8811H_POLARITY_RX_REVERSE; - if (device_property_read_bool(dev, "airoha,pnswap-tx")) - pbus_value &= ~EN8811H_POLARITY_TX_NORMAL; - else - pbus_value |= EN8811H_POLARITY_TX_NORMAL; - ret = air_buckpbus_reg_modify(phydev, EN8811H_POLARITY, - EN8811H_POLARITY_RX_REVERSE | - EN8811H_POLARITY_TX_NORMAL, pbus_value); + ret = en8811h_config_serdes_polarity(phydev); if (ret < 0) return ret; -- 2.34.1