{"id":2219417,"url":"http://patchwork.ozlabs.org/api/patches/2219417/?format=json","web_url":"http://patchwork.ozlabs.org/project/intel-wired-lan/patch/20260402230626.3826719-8-grzegorz.nitka@intel.com/","project":{"id":46,"url":"http://patchwork.ozlabs.org/api/projects/46/?format=json","name":"Intel Wired Ethernet development","link_name":"intel-wired-lan","list_id":"intel-wired-lan.osuosl.org","list_email":"intel-wired-lan@osuosl.org","web_url":"","scm_url":"","webscm_url":"","list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<20260402230626.3826719-8-grzegorz.nitka@intel.com>","list_archive_url":null,"date":"2026-04-02T23:06:25","name":"[v5,net-next,7/8] ice: add Tx reference clock index handling to AN restart command","commit_ref":null,"pull_url":null,"state":"handled-elsewhere","archived":false,"hash":"ca2d834ed4a9c8e03327a2a8bf77d7a041c45eba","submitter":{"id":82711,"url":"http://patchwork.ozlabs.org/api/people/82711/?format=json","name":"Grzegorz Nitka","email":"grzegorz.nitka@intel.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/intel-wired-lan/patch/20260402230626.3826719-8-grzegorz.nitka@intel.com/mbox/","series":[{"id":498564,"url":"http://patchwork.ozlabs.org/api/series/498564/?format=json","web_url":"http://patchwork.ozlabs.org/project/intel-wired-lan/list/?series=498564","date":"2026-04-02T23:06:18","name":"dpll/ice: Add TXC DPLL type and full TX reference clock control for E825","version":5,"mbox":"http://patchwork.ozlabs.org/series/498564/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/2219417/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2219417/checks/","tags":{},"related":[],"headers":{"Return-Path":"<intel-wired-lan-bounces@osuosl.org>","X-Original-To":["incoming@patchwork.ozlabs.org","intel-wired-lan@lists.osuosl.org"],"Delivered-To":["patchwork-incoming@legolas.ozlabs.org","intel-wired-lan@lists.osuosl.org"],"Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=osuosl.org header.i=@osuosl.org header.a=rsa-sha256\n header.s=default header.b=eUFnHSuS;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=osuosl.org\n (client-ip=2605:bc80:3010::137; helo=smtp4.osuosl.org;\n envelope-from=intel-wired-lan-bounces@osuosl.org;\n receiver=patchwork.ozlabs.org)"],"Received":["from smtp4.osuosl.org (smtp4.osuosl.org [IPv6:2605:bc80:3010::137])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fmyJk4Prmz1yCs\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 03 Apr 2026 10:11:02 +1100 (AEDT)","from localhost (localhost [127.0.0.1])\n\tby smtp4.osuosl.org (Postfix) with ESMTP id 079B040932;\n\tThu,  2 Apr 2026 23:11:01 +0000 (UTC)","from smtp4.osuosl.org ([127.0.0.1])\n by localhost (smtp4.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP\n id R7oS4U3gWBNF; Thu,  2 Apr 2026 23:10:59 +0000 (UTC)","from lists1.osuosl.org (lists1.osuosl.org [140.211.166.142])\n\tby smtp4.osuosl.org (Postfix) with ESMTP id AC98C406A7;\n\tThu,  2 Apr 2026 23:10:59 +0000 (UTC)","from smtp1.osuosl.org (smtp1.osuosl.org [IPv6:2605:bc80:3010::138])\n by lists1.osuosl.org (Postfix) with ESMTP id 0F0F42A2\n for <intel-wired-lan@lists.osuosl.org>; Thu,  2 Apr 2026 23:10:59 +0000 (UTC)","from localhost (localhost [127.0.0.1])\n by smtp1.osuosl.org (Postfix) with ESMTP id 012B78130F\n for <intel-wired-lan@lists.osuosl.org>; Thu,  2 Apr 2026 23:10:59 +0000 (UTC)","from smtp1.osuosl.org ([127.0.0.1])\n by localhost (smtp1.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP\n id dXThUaIbiVOH for <intel-wired-lan@lists.osuosl.org>;\n Thu,  2 Apr 2026 23:10:58 +0000 (UTC)","from mgamail.intel.com (mgamail.intel.com [198.175.65.19])\n by smtp1.osuosl.org (Postfix) with ESMTPS id E6D79812D5\n for <intel-wired-lan@lists.osuosl.org>; Thu,  2 Apr 2026 23:10:57 +0000 (UTC)","from orviesa008.jf.intel.com ([10.64.159.148])\n by orvoesa111.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 02 Apr 2026 16:10:57 -0700","from gklab-003-001.igk.intel.com ([10.91.173.48])\n by orviesa008.jf.intel.com with ESMTP; 02 Apr 2026 16:10:53 -0700"],"X-Virus-Scanned":["amavis at osuosl.org","amavis at osuosl.org"],"X-Comment":"SPF check N/A for local connections - client-ip=140.211.166.142;\n helo=lists1.osuosl.org; envelope-from=intel-wired-lan-bounces@osuosl.org;\n receiver=<UNKNOWN> ","DKIM-Filter":["OpenDKIM Filter v2.11.0 smtp4.osuosl.org AC98C406A7","OpenDKIM Filter v2.11.0 smtp1.osuosl.org E6D79812D5"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=osuosl.org;\n\ts=default; t=1775171459;\n\tbh=0fM3I6+OikB7+hj88oE9o72YJlLiLOrM9Di0KxaBgcA=;\n\th=From:To:Date:In-Reply-To:References:Subject:List-Id:\n\t List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe:\n\t Cc:From;\n\tb=eUFnHSuSPStjRm0rmVG9mlMF+8rbSwmOvpwK7hmS/F7OiCQ3M0hMZHgb0vp5qJRti\n\t OO4v2/Wxdw4879CJZL9YhbYVe7vlVRJI/rVDRaXh63JYvi561mPCGyJVa0fVYkCX82\n\t XJ5q5iNlfIO1KdaHbBTqWmbqfj3+gTKuZ+Jnuuk7lNZMpn4Nj5U2EVeJyzPa605G67\n\t 5uJc2nCO/0fLi+6kMYUQpumpzr5+9zklsvWUzACvX/ByZ1ToehW/8nEHlJ518/JMo3\n\t 3HtvmbDzZN8EozGozD+TyYKAuwTevaF8tKRwt4bp76Dd/Ytx+DJSIDP6hQJI0A2NYr\n\t bT3MrBxSRVqIg==","Received-SPF":"Pass (mailfrom) identity=mailfrom; client-ip=198.175.65.19;\n helo=mgamail.intel.com; envelope-from=grzegorz.nitka@intel.com;\n receiver=<UNKNOWN>","DMARC-Filter":"OpenDMARC Filter v1.4.2 smtp1.osuosl.org E6D79812D5","X-CSE-ConnectionGUID":["WORbzOuGSTCNABlLmcEMow==","b08BDPBoQnGTgTdVWQH2Bg=="],"X-CSE-MsgGUID":["oB5Li3jLTpen3R9GiXVfMg==","GhW3xD2mR4qwi9Nme4jaJQ=="],"X-IronPort-AV":["E=McAfee;i=\"6800,10657,11747\"; a=\"76123147\"","E=Sophos;i=\"6.23,156,1770624000\"; d=\"scan'208\";a=\"76123147\"","E=Sophos;i=\"6.23,156,1770624000\"; d=\"scan'208\";a=\"227044466\""],"X-ExtLoop1":"1","From":"Grzegorz Nitka <grzegorz.nitka@intel.com>","To":"netdev@vger.kernel.org","Date":"Fri,  3 Apr 2026 01:06:25 +0200","Message-Id":"<20260402230626.3826719-8-grzegorz.nitka@intel.com>","X-Mailer":"git-send-email 2.39.3","In-Reply-To":"<20260402230626.3826719-1-grzegorz.nitka@intel.com>","References":"<20260402230626.3826719-1-grzegorz.nitka@intel.com>","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","X-Mailman-Original-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple;\n d=intel.com; i=@intel.com; q=dns/txt; s=Intel;\n t=1775171458; x=1806707458;\n h=from:to:cc:subject:date:message-id:in-reply-to:\n references:mime-version:content-transfer-encoding;\n bh=2MZHnP/9cS14JCDWx6lZ3RRAkM3yTL2R5Dnn1mrIUqo=;\n b=e+/yFDc/CMNLX+knba12rDvUjHDHkVGCuh7XO1pspZ7TQyHoB7ryj448\n gzQCieOmCabv3PcvutKuxwi6xCZIfFWzkn9l5ZhUlFMezPxRoU1gErZ1G\n 1LzcpDetSO1O/Q8k4VS9mUgNzE9qf9pfigWyaFQMuRAbzwSOZV6L8+fHa\n jO/yV9pcNCbJght9zIKLZQP00/FAlPLG8c8vvxwFxuJTawxiGrQvfpAHu\n A32fII4YnN9t070ceoxo+NfWu0JkAprxMEBaccN+EJZLTuJeDcIBxsf4E\n VdS5DCQ+kzksOAuUP0Gk3AIQ8SVnHgorhOkmNLdA0qVgNXg3XxW6ztiJi\n Q==;","X-Mailman-Original-Authentication-Results":["smtp1.osuosl.org;\n dmarc=pass (p=none dis=none)\n header.from=intel.com","smtp1.osuosl.org;\n dkim=pass (2048-bit key,\n unprotected) header.d=intel.com header.i=@intel.com header.a=rsa-sha256\n header.s=Intel header.b=e+/yFDc/"],"Subject":"[Intel-wired-lan] [PATCH v5 net-next 7/8] ice: add Tx reference\n clock index handling to AN restart command","X-BeenThere":"intel-wired-lan@osuosl.org","X-Mailman-Version":"2.1.30","Precedence":"list","List-Id":"Intel Wired Ethernet Linux Kernel Driver Development\n <intel-wired-lan.osuosl.org>","List-Unsubscribe":"<https://lists.osuosl.org/mailman/options/intel-wired-lan>,\n <mailto:intel-wired-lan-request@osuosl.org?subject=unsubscribe>","List-Archive":"<http://lists.osuosl.org/pipermail/intel-wired-lan/>","List-Post":"<mailto:intel-wired-lan@osuosl.org>","List-Help":"<mailto:intel-wired-lan-request@osuosl.org?subject=help>","List-Subscribe":"<https://lists.osuosl.org/mailman/listinfo/intel-wired-lan>,\n <mailto:intel-wired-lan-request@osuosl.org?subject=subscribe>","Cc":"ivecera@redhat.com, vadim.fedorenko@linux.dev, kuba@kernel.org,\n jiri@resnulli.us, edumazet@google.com, przemyslaw.kitszel@intel.com,\n richardcochran@gmail.com, donald.hunter@gmail.com,\n linux-kernel@vger.kernel.org, arkadiusz.kubalewski@intel.com,\n andrew+netdev@lunn.ch, intel-wired-lan@lists.osuosl.org, horms@kernel.org,\n Prathosh.Satish@microchip.com, anthony.l.nguyen@intel.com, pabeni@redhat.com,\n davem@davemloft.net","Errors-To":"intel-wired-lan-bounces@osuosl.org","Sender":"\"Intel-wired-lan\" <intel-wired-lan-bounces@osuosl.org>"},"content":"Extend the Restart Auto-Negotiation (AN) AdminQ command with a new\nparameter allowing software to specify the Tx reference clock index to\nbe used during link restart.\n\nThis patch:\n - adds REFCLK field definitions to ice_aqc_restart_an\n - updates ice_aq_set_link_restart_an() to take a new refclk parameter\n   and properly encode it into the command\n - keeps legacy behavior by passing REFCLK_NOCHANGE where appropriate\n\nThis prepares the driver for configurations requiring dynamic selection\nof the Tx reference clock as part of the AN flow.\n\nReviewed-by: Arkadiusz Kubalewski <arkadiusz.kubalewski@intel.com>\nSigned-off-by: Grzegorz Nitka <grzegorz.nitka@intel.com>\n---\n drivers/net/ethernet/intel/ice/ice_adminq_cmd.h | 2 ++\n drivers/net/ethernet/intel/ice/ice_common.c     | 5 ++++-\n drivers/net/ethernet/intel/ice/ice_common.h     | 2 +-\n drivers/net/ethernet/intel/ice/ice_lib.c        | 3 ++-\n 4 files changed, 9 insertions(+), 3 deletions(-)","diff":"diff --git a/drivers/net/ethernet/intel/ice/ice_adminq_cmd.h b/drivers/net/ethernet/intel/ice/ice_adminq_cmd.h\nindex 859e9c66f3e7..a24a0613d887 100644\n--- a/drivers/net/ethernet/intel/ice/ice_adminq_cmd.h\n+++ b/drivers/net/ethernet/intel/ice/ice_adminq_cmd.h\n@@ -1169,6 +1169,8 @@ struct ice_aqc_restart_an {\n \tu8 cmd_flags;\n #define ICE_AQC_RESTART_AN_LINK_RESTART\tBIT(1)\n #define ICE_AQC_RESTART_AN_LINK_ENABLE\tBIT(2)\n+#define ICE_AQC_RESTART_AN_REFCLK_M\tGENMASK(4, 3)\n+#define ICE_AQC_RESTART_AN_REFCLK_NOCHANGE 0\n \tu8 reserved2[13];\n };\n \ndiff --git a/drivers/net/ethernet/intel/ice/ice_common.c b/drivers/net/ethernet/intel/ice/ice_common.c\nindex ce11fea122d0..de88aec9137c 100644\n--- a/drivers/net/ethernet/intel/ice/ice_common.c\n+++ b/drivers/net/ethernet/intel/ice/ice_common.c\n@@ -4126,12 +4126,13 @@ int ice_get_link_status(struct ice_port_info *pi, bool *link_up)\n  * @pi: pointer to the port information structure\n  * @ena_link: if true: enable link, if false: disable link\n  * @cd: pointer to command details structure or NULL\n+ * @refclk: the new TX reference clock, 0 if no change\n  *\n  * Sets up the link and restarts the Auto-Negotiation over the link.\n  */\n int\n ice_aq_set_link_restart_an(struct ice_port_info *pi, bool ena_link,\n-\t\t\t   struct ice_sq_cd *cd)\n+\t\t\t   struct ice_sq_cd *cd,  u8 refclk)\n {\n \tstruct ice_aqc_restart_an *cmd;\n \tstruct libie_aq_desc desc;\n@@ -4147,6 +4148,8 @@ ice_aq_set_link_restart_an(struct ice_port_info *pi, bool ena_link,\n \telse\n \t\tcmd->cmd_flags &= ~ICE_AQC_RESTART_AN_LINK_ENABLE;\n \n+\tcmd->cmd_flags |= FIELD_PREP(ICE_AQC_RESTART_AN_REFCLK_M, refclk);\n+\n \treturn ice_aq_send_cmd(pi->hw, &desc, NULL, 0, cd);\n }\n \ndiff --git a/drivers/net/ethernet/intel/ice/ice_common.h b/drivers/net/ethernet/intel/ice/ice_common.h\nindex e700ac0dc347..9f5344212195 100644\n--- a/drivers/net/ethernet/intel/ice/ice_common.h\n+++ b/drivers/net/ethernet/intel/ice/ice_common.h\n@@ -215,7 +215,7 @@ ice_cfg_phy_fec(struct ice_port_info *pi, struct ice_aqc_set_phy_cfg_data *cfg,\n \t\tenum ice_fec_mode fec);\n int\n ice_aq_set_link_restart_an(struct ice_port_info *pi, bool ena_link,\n-\t\t\t   struct ice_sq_cd *cd);\n+\t\t\t   struct ice_sq_cd *cd, u8 refclk);\n int\n ice_aq_set_mac_cfg(struct ice_hw *hw, u16 max_frame_size, struct ice_sq_cd *cd);\n int\ndiff --git a/drivers/net/ethernet/intel/ice/ice_lib.c b/drivers/net/ethernet/intel/ice/ice_lib.c\nindex 689c6025ea82..c2c7f186bcc7 100644\n--- a/drivers/net/ethernet/intel/ice/ice_lib.c\n+++ b/drivers/net/ethernet/intel/ice/ice_lib.c\n@@ -3769,7 +3769,8 @@ int ice_set_link(struct ice_vsi *vsi, bool ena)\n \tif (vsi->type != ICE_VSI_PF)\n \t\treturn -EINVAL;\n \n-\tstatus = ice_aq_set_link_restart_an(pi, ena, NULL);\n+\tstatus = ice_aq_set_link_restart_an(pi, ena, NULL,\n+\t\t\t\t\t    ICE_AQC_RESTART_AN_REFCLK_NOCHANGE);\n \n \t/* if link is owned by manageability, FW will return LIBIE_AQ_RC_EMODE.\n \t * this is not a fatal error, so print a warning message and return\n","prefixes":["v5","net-next","7/8"]}