From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 BAD4237C11C; Wed, 8 Jul 2026 17:12:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783530756; cv=none; b=OWL+y95n6vFMM8M8PER2h99O+zDQiJ85bUxeNoTJTlc2XzsBREia4GLZPSG8E7RgI9W2QRumX6BFKRYSEHrr7Raw+TQqc0Hfx2OcbAtZrHoK4RtdGtIQeKM+UErvYkyu2CSjbj5WAF8Q/6RoxS5Rj97o/J/1lW5nkLmpYXW3k3k= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783530756; c=relaxed/simple; bh=tXbAC6qNquLg25/6fk3ZbNnuUtaMUBM8ayVvL1QioPk=; h=From:Subject:Date:Message-Id:MIME-Version:Content-Type:To:Cc; b=t7D9N6dYGL7keIhklDfBJOeN4a9YXtB+z5GnxJnIB1P3pNHuIP216AdBkjAXgIKDswW7YjIiYfiH9UVGofqithAnS65R0toIrDvhrBZMDCXZ7sf42zu8KCuEm78lboLG4/Y1ObygsnswkbBrJ+zw00/VNodE9O4TdUHrYB0XvLM= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=LnIzEUg7; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="LnIzEUg7" Received: by smtp.kernel.org (Postfix) with ESMTPS id 5BE51C2BCB3; Wed, 8 Jul 2026 17:12:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1783530756; bh=tXbAC6qNquLg25/6fk3ZbNnuUtaMUBM8ayVvL1QioPk=; h=From:Subject:Date:To:Cc:Reply-To:From; b=LnIzEUg7Uz5EjJBanUS2kTdNodkjZBh/6COXXDS3fDhoCH6mVkGv6FwCnOwPU3sYs 0DhBtQCoUQwO9sYEm11iWk+j522QdnMYQXtPJlpLSd+6fCMCMD5oq0b8LgMn4ZTfxa aWUdC9Bk4N3SdD4DZtPgzVDlXX5Q8Cg+Vl2jlJQ48k4T7LhUzfmVxqQr8NmgyYySNe 5FPtdrLcn99aEKRrCkvGom6Mykhs4TCCIOMdO8NfV/EGcPOfakRRBeItFO13ExgRwI 6eEgDc2q2ZkPrFXe+VuM66qqJ8d6rMiP9b81uX+gno8DdJ76PPdyGdo4Ltwx4uGZCK pswPlwj4bWN1Q== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 357E7C43458; Wed, 8 Jul 2026 17:12:36 +0000 (UTC) From: Selvamani Rajagopal via B4 Relay Subject: [PATCH net-next v7 00/15] Support for onsemi's S2500 10Base-T1S MAC-PHY Date: Wed, 08 Jul 2026 10:12:30 -0700 Message-Id: <20260708-s2500-mac-phy-support-v7-0-478c877aa1a9@onsemi.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit X-B4-Tracking: v=1; b=H4sIAP+ETmoC/3XOTQ6CMBAF4KuYrh3Tlv6AK+9hXEAZpCa0pK1EY 7i7FV1oDMvJzPvePEjEYDGS/eZBAk42Wu/yoLcbYvranRFsm2fCKVdUUQaRS0phqA2M/R3idRx 9SCC6osaK067RBcnZMWBnb4t7JA4TOLwlcnpv4rW5oEkv9nXb25h8uC8vTGJJfNrkStskgEKLu c2wwqi2PHgXcbA744elZJJfDBNrjMxMWZVaNJp3mss/Rn0xvFpjVGZYaVBXeV1o9sPM8/wEmWs ZuGUBAAA= To: Andrew Lunn , Piergiorgio Beruto , Heiner Kallweit , Russell King , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Andrew Lunn , Parthiban Veerasooran , Selva Rajagopal , Richard Cochran , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Simon Horman , Jonathan Corbet , Shuah Khan Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-doc@vger.kernel.org, Jerry Ray , Selvamani Rajagopal , Krzysztof Kozlowski X-Mailer: b4 0.13.0 X-Developer-Signature: v=1; a=ed25519-sha256; t=1783530757; l=6125; i=Selvamani.Rajagopal@onsemi.com; s=20260531; h=from:subject:message-id; bh=tXbAC6qNquLg25/6fk3ZbNnuUtaMUBM8ayVvL1QioPk=; b=UisVoPQtjN7fUFKv2u/WBdggmy/96ypj7fsB2RxYB54yit0ZEKN7UMLlMPYHueD4D3VFUVTAF xTAJtqmPN54CX2vN0wV3hxUqv/XkysJfd0U9Sdtbnat2avMGhJhl+Wd X-Developer-Key: i=Selvamani.Rajagopal@onsemi.com; a=ed25519; pk=5QRdM0HS/LGWWcUZZ9hVfZ+qbPQGZCumcTXOiN7Fyug= X-Endpoint-Received: by B4 Relay for Selvamani.Rajagopal@onsemi.com/20260531 with auth_id=803 X-Original-From: Selvamani Rajagopal Reply-To: Selvamani.Rajagopal@onsemi.com This patch series brings support for onsemi's S2500 that iss IEEE 802.3cg compliant Ethernet transceiver with an integrated Media Access Controller (MAC-PHY) Driver implementation is compatible and works with OA TC6 framework that is already present. S2500 driver supports hardware timestamping. Driver has support for running selftest and loopback tests. Through ethtool, it can provide traffic stats, rmon stats, and timestamping related traffic stats. As S2500 has an internal PHY, changes have been added to onsemi's PHY driver to support this device. Signed-off-by: Selvamani Rajagopal --- Changes in v7: - Fixed compiler warning due to prototype mismatch - Moved the order of patches to ensure dt-bindings comes first before it is being used - Added missing review tag - Added missing MODULE_DEVICE_TABLE - OA_TC6 framework enables 64 bit timestamping mode by default. - Compiler related warnings fixed. - Link to v6: https://lore.kernel.org/r/20260629-s2500-mac-phy-support-v6-0-18ce79500371@onsemi.com Changes in v6: - Changes to ensure onsemi code stay within 80 columns. - Fixed the error of "not described in comments section" in comments section. - Fixed compiler warnings. - Link to v5: https://patch.msgid.link/20260614-s2500-mac-phy-support-v5-0-89874b72f725@onsemi.com Changes in v5: - kernel doc related changes in oa_tc.c, onsemi driver files and oa tc6 rst file - Link to v4: https://lore.kernel.org/r/20260605-s2500-mac-phy-support-v4-0-de0fbc13c6d8@onsemi.com Changes in v4: - Added return value comment for genphy_read/write_phy_mmd functions - Added genphy_loopback_fixed_speed helper function to be used in set_loopback callbacks - Updated networking documentation for OA TC6 framework to elaborate on what is expected in the ptp_clock_info structure for registration. - added spi-max-frequency in YAML file based on alert from sashiko-bot - Removed model/version from the onsemi driver's private structure as they were useful as "information-only" data. - Replaced the non-standard selftest with Linux's standard selftest and made it as a separate patch - Changed bit manipulation, shift operations to use macros so that it is clean and readable. - added new read_register and write_register apis with _mms postfix so that MMS (memory map selector) can be given as a parameter. - Fixed the wrong condition check with NETIF_F_RXFCS to subtract FCS size from the length of the frame. - Link to v3: https://lore.kernel.org/r/CY8PR02MB92499C9080614FA3CEB8CD0483162@CY8PR02MB9249.namprd02.prod.outlook.com Changes in v3: - Moved OA TC6 framework to its own directory. - Split changes to smaller patches based on feedback. - Added PHY loopback support as a separate patch. - New, read and write register APIs with extra parameter MMS - Link to v2: https://lore.kernel.org/r/CY8PR02MB924920C8825C7AE5D22EFA4483382@CY8PR02MB9249.namprd02.prod.outlook.com Changes in v2: - API to add vendor specific MMS to mdio device map. - Link to v1: https://lore.kernel.org/r/CY8PR02MB9249D083B637477C254F9B0583322@CY8PR02MB9249.namprd02.prod.outlook.com --- Selvamani Rajagopal (15): dt-bindings: net: add onsemi's S2500 Documentation: networking: Add timestamp related APIs to OA TC6 framework net: phy: Helper to read and write through C45 without lock net: phy: Helper to modify PHY loopback mode only net: ethernet: oa_tc6: Move oa_tc6.c to its own directory net: phy: microchip_t1s: Use generic APIs for C45 read and write net: ethernet: oa_tc6: Move constant definitions to header file net: ethernet: oa_tc6: Support for hardware timestamp net: ethernet: oa_tc6: Support for vendor specific MMS net: ethernet: oa_tc6: read, write interface with MMS option net: phy: ncn26000: Support for onsemi's S2500 internal phy net: phy: ncn26000: Enable enhanced noise immunity net: phy: ncn26000: Support for loopback onsemi: s2500: Add driver support for TS2500 MAC-PHY onsemi: s2500: Added selftest support to onsemi's S2500 driver .../devicetree/bindings/net/onnn,s2500.yaml | 67 +++ Documentation/networking/oa-tc6-framework.rst | 80 +++ MAINTAINERS | 13 +- drivers/net/ethernet/Kconfig | 13 +- drivers/net/ethernet/Makefile | 2 +- drivers/net/ethernet/microchip/lan865x/lan865x.c | 61 +- drivers/net/ethernet/oa_tc6/Kconfig | 16 + drivers/net/ethernet/oa_tc6/Makefile | 7 + drivers/net/ethernet/{ => oa_tc6}/oa_tc6.c | 469 +++++++++------ drivers/net/ethernet/oa_tc6/oa_tc6_ptp.c | 70 +++ drivers/net/ethernet/oa_tc6/oa_tc6_std_def.h | 191 ++++++ drivers/net/ethernet/oa_tc6/oa_tc6_tstamp.c | 205 +++++++ drivers/net/ethernet/onsemi/Kconfig | 21 + drivers/net/ethernet/onsemi/Makefile | 7 + drivers/net/ethernet/onsemi/s2500/Kconfig | 19 + drivers/net/ethernet/onsemi/s2500/Makefile | 7 + drivers/net/ethernet/onsemi/s2500/s2500_ethtool.c | 360 ++++++++++++ drivers/net/ethernet/onsemi/s2500/s2500_hw_def.h | 223 +++++++ drivers/net/ethernet/onsemi/s2500/s2500_main.c | 649 +++++++++++++++++++++ drivers/net/ethernet/onsemi/s2500/s2500_ptp.c | 250 ++++++++ drivers/net/phy/dp83867.c | 11 +- drivers/net/phy/microchip_t1s.c | 32 +- drivers/net/phy/ncn26000.c | 63 +- drivers/net/phy/phy_device.c | 75 +++ include/linux/oa_tc6.h | 36 ++ include/linux/phy.h | 6 + 26 files changed, 2703 insertions(+), 250 deletions(-) --- base-commit: 08030ddb87b4c6c6a2c03c82731b5e188f02f5b9 change-id: 20260601-s2500-mac-phy-support-4f3ae920fb73 Best regards, -- Selvamani Rajagopal