[{"id":3675754,"web_url":"http://patchwork.ozlabs.org/comment/3675754/","msgid":"<7768956d-f1d6-496b-93ef-10525852e95e@redhat.com>","list_archive_url":null,"date":"2026-04-10T09:33:57","subject":"Re: [Intel-wired-lan] [PATCH iwl-net 2/4] ice: perform PHY soft\n reset for E825C ports at initialization","submitter":{"id":74657,"url":"http://patchwork.ozlabs.org/api/people/74657/","name":"Petr Oros","email":"poros@redhat.com"},"content":"On 4/8/26 20:46, Jacob Keller wrote:\n> From: Grzegorz Nitka <grzegorz.nitka@intel.com>\n>\n> In some cases the PHY timestamp block of the E825C can become stuck. This\n> is known to occur if the software writes 0 to the Tx timestamp threshold,\n> and with older versions of the ice driver the threshold configuration is\n> buggy and can race in such that hardware briefly operates with a zero\n> threshold enabled. There are no other known ways to trigger this behavior,\n> but once it occurs, the hardware is not recovered by normal reset, a driver\n> reload, or even a warm power cycle of the system. A cold power cycle is\n> sufficient to recover hardware, but this is extremely invasive and can\n> result in significant downtime on customer deployments.\n>\n> The PHY for each port has a timestamping block which has its own reset\n> functionality accessible by programming the PHY_REG_GLOBAL register.\n> Writing to the PHY_REG_GLOBAL_SOFT_RESET_BIT triggers the hardware to\n> perform a complete reset of the timestamping block of the PHY. This\n> includes clearing the timestamp status for the port, clearing all\n> outstanding timestamps in the memory bank, and resetting the PHY timer.\n>\n> The new ice_ptp_phy_soft_reset_eth56g() function toggles the\n> PHY_REG_GLOBAL soft reset bit with the required delays, ensuring the\n> PHY is properly reinitialized without requiring a full device reset.\n> The sequence clears the reset bit, asserts it, then clears it again,\n> with short waits between transitions to allow hardware stabilization.\n>\n> Call this function in the new ice_ptp_init_phc_e825c(), implementing the\n> E825C device specific variant of the ice_ptp_init_phc(). Note that if\n> ice_ptp_init_phc() fails, PTP functionality may be disabled, but the driver\n> will still load to allow basic functionality to continue.\n>\n> This causes the clock owning PF driver to perform a PHY soft reset for\n> every port during initialization. This ensures the driver begins life in a\n> known functional state regardless of how it was previously programmed.\n>\n> This ensures that we properly reconfigure the hardware after a device reset\n> or when loading the driver, even if it was previously misconfigured with an\n> out-of-date or modified driver.\n>\n> Fixes: 7cab44f1c35f (\"ice: Introduce ETH56G PHY model for E825C products\")\n> Signed-off-by: Timothy Miskell <timothy.miskell@intel.com>\n> Signed-off-by: Grzegorz Nitka <grzegorz.nitka@intel.com>\n> Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>\n> Reviewed-by: Aleksandr Loktionov <aleksandr.loktionov@intel.com>\n> ---\n>   drivers/net/ethernet/intel/ice/ice_ptp_hw.h |  4 ++\n>   drivers/net/ethernet/intel/ice/ice_ptp_hw.c | 90 ++++++++++++++++++++++++++++-\n>   2 files changed, 93 insertions(+), 1 deletion(-)\n>\n> diff --git a/drivers/net/ethernet/intel/ice/ice_ptp_hw.h b/drivers/net/ethernet/intel/ice/ice_ptp_hw.h\n> index 5896b346e579..9d7acc7eb2ce 100644\n> --- a/drivers/net/ethernet/intel/ice/ice_ptp_hw.h\n> +++ b/drivers/net/ethernet/intel/ice/ice_ptp_hw.h\n> @@ -374,6 +374,7 @@ int ice_stop_phy_timer_eth56g(struct ice_hw *hw, u8 port, bool soft_reset);\n>   int ice_start_phy_timer_eth56g(struct ice_hw *hw, u8 port);\n>   int ice_phy_cfg_intr_eth56g(struct ice_hw *hw, u8 port, bool ena, u8 threshold);\n>   int ice_phy_cfg_ptp_1step_eth56g(struct ice_hw *hw, u8 port);\n> +int ice_ptp_phy_soft_reset_eth56g(struct ice_hw *hw, u8 port);\n>   \n>   #define ICE_ETH56G_NOMINAL_INCVAL\t0x140000000ULL\n>   #define ICE_ETH56G_NOMINAL_PCS_REF_TUS\t0x100000000ULL\n> @@ -676,6 +677,9 @@ static inline u64 ice_get_base_incval(struct ice_hw *hw)\n>   #define ICE_P0_GNSS_PRSNT_N\tBIT(4)\n>   \n>   /* ETH56G PHY register addresses */\n> +#define PHY_REG_GLOBAL\t\t\t0x0\n> +#define PHY_REG_GLOBAL_SOFT_RESET_M\tBIT(11)\n> +\n>   /* Timestamp PHY incval registers */\n>   #define PHY_REG_TIMETUS_L\t\t0x8\n>   #define PHY_REG_TIMETUS_U\t\t0xC\n> diff --git a/drivers/net/ethernet/intel/ice/ice_ptp_hw.c b/drivers/net/ethernet/intel/ice/ice_ptp_hw.c\n> index 67775beb9449..441b5f10e4bb 100644\n> --- a/drivers/net/ethernet/intel/ice/ice_ptp_hw.c\n> +++ b/drivers/net/ethernet/intel/ice/ice_ptp_hw.c\n> @@ -377,6 +377,31 @@ static void ice_ptp_cfg_sync_delay(const struct ice_hw *hw, u32 delay)\n>    * The following functions operate on devices with the ETH 56G PHY.\n>    */\n>   \n> +/**\n> + * ice_ptp_init_phc_e825c - Perform E825C specific PHC initialization\n> + * @hw: pointer to HW struct\n> + *\n> + * Perform E825C-specific PTP hardware clock initialization steps.\n> + *\n> + * Return: 0 on success, or a negative error value on failure.\n> + */\n> +static int ice_ptp_init_phc_e825c(struct ice_hw *hw)\n> +{\n> +\tint err;\n> +\n> +\t/* Soft reset all ports, to ensure everything is at a clean state */\n> +\tfor (int port = 0; port < hw->ptp.num_lports; port++) {\n> +\t\terr = ice_ptp_phy_soft_reset_eth56g(hw, port);\n> +\t\tif (err) {\n> +\t\t\tice_debug(hw, ICE_DBG_PTP, \"Failed to soft reset port %d, err %d\\n\",\n> +\t\t\t\t  port, err);\n> +\t\t\treturn err;\n> +\t\t}\n> +\t}\n> +\n> +\treturn 0;\n> +}\n> +\n>   /**\n>    * ice_ptp_get_dest_dev_e825 - get destination PHY for given port number\n>    * @hw: pointer to the HW struct\n> @@ -2179,6 +2204,69 @@ int ice_ptp_read_tx_hwtstamp_status_eth56g(struct ice_hw *hw, u32 *ts_status)\n>   \treturn 0;\n>   }\n>   \n> +/**\n> + * ice_ptp_phy_soft_reset_eth56g - Perform a PHY soft reset on ETH56G\n> + * @hw: pointer to the HW structure\n> + * @port: PHY port number\n> + *\n> + * Trigger a soft reset of the ETH56G PHY by toggling the soft reset\n> + * bit in the PHY global register. The reset sequence consists of:\n> + *   1. Clearing the soft reset bit\n> + *   2. Asserting the soft reset bit\n> + *   3. Clearing the soft reset bit again\n> + *\n> + * Short delays are inserted between each step to allow the hardware\n> + * to settle. This provides a controlled way to reinitialize the PHY\n> + * without requiring a full device reset.\n> + *\n> + * Return: 0 on success, or a negative error code on failure when\n> + *         reading or writing the PHY register.\n> + */\n> +int ice_ptp_phy_soft_reset_eth56g(struct ice_hw *hw, u8 port)\n> +{\n> +\tu32 global_val;\n> +\tint err;\n> +\n> +\terr = ice_read_ptp_reg_eth56g(hw, port, PHY_REG_GLOBAL, &global_val);\n> +\tif (err) {\n> +\t\tice_debug(hw, ICE_DBG_PTP, \"Failed to read PHY_REG_GLOBAL for port %d, err %d\\n\",\n> +\t\t\t  port, err);\n> +\t\treturn err;\n> +\t}\n> +\n> +\tglobal_val &= ~PHY_REG_GLOBAL_SOFT_RESET_M;\n> +\tice_debug(hw, ICE_DBG_PTP, \"Clearing soft reset bit for port %d, val: 0x%x\\n\",\n> +\t\t  port, global_val);\n> +\terr = ice_write_ptp_reg_eth56g(hw, port, PHY_REG_GLOBAL, global_val);\n> +\tif (err) {\n> +\t\tice_debug(hw, ICE_DBG_PTP, \"Failed to write PHY_REG_GLOBAL for port %d, err %d\\n\",\n> +\t\t\t  port, err);\n> +\t\treturn err;\n> +\t}\n> +\n> +\tusleep_range(5000, 6000);\n> +\n> +\tglobal_val |= PHY_REG_GLOBAL_SOFT_RESET_M;\n> +\tice_debug(hw, ICE_DBG_PTP, \"Set soft reset bit for port %d, val: 0x%x\\n\",\n> +\t\t  port, global_val);\n> +\terr = ice_write_ptp_reg_eth56g(hw, port, PHY_REG_GLOBAL, global_val);\n> +\tif (err) {\n> +\t\tice_debug(hw, ICE_DBG_PTP, \"Failed to write PHY_REG_GLOBAL for port %d, err %d\\n\",\n> +\t\t\t  port, err);\n> +\t\treturn err;\n> +\t}\n> +\tusleep_range(5000, 6000);\n> +\n> +\tglobal_val &= ~PHY_REG_GLOBAL_SOFT_RESET_M;\n> +\tice_debug(hw, ICE_DBG_PTP, \"Clear soft reset bit for port %d, val: 0x%x\\n\",\n> +\t\t  port, global_val);\n> +\terr = ice_write_ptp_reg_eth56g(hw, port, PHY_REG_GLOBAL, global_val);\n> +\tif (err)\n> +\t\tice_debug(hw, ICE_DBG_PTP, \"Failed to write PHY_REG_GLOBAL for port %d, err %d\\n\",\n> +\t\t\t  port, err);\n> +\treturn err;\n> +}\n> +\n>   /**\n>    * ice_get_phy_tx_tstamp_ready_eth56g - Read the Tx memory status register\n>    * @hw: pointer to the HW struct\n> @@ -5591,7 +5679,7 @@ int ice_ptp_init_phc(struct ice_hw *hw)\n>   \tcase ICE_MAC_GENERIC:\n>   \t\treturn ice_ptp_init_phc_e82x(hw);\n>   \tcase ICE_MAC_GENERIC_3K_E825:\n> -\t\treturn 0;\n> +\t\treturn ice_ptp_init_phc_e825c(hw);\n>   \tdefault:\n>   \t\treturn -EOPNOTSUPP;\n>   \t}\n>\nReviewed-by: Petr Oros <poros@redhat.com>","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=XaKBc1rh;\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 4fsWpW3kkbz1yGS\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 10 Apr 2026 19:34:11 +1000 (AEST)","from localhost (localhost [127.0.0.1])\n\tby smtp4.osuosl.org (Postfix) with ESMTP id 1ECEF40D4E;\n\tFri, 10 Apr 2026 09:34:10 +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 1UCZJLm02mMJ; Fri, 10 Apr 2026 09:34:08 +0000 (UTC)","from lists1.osuosl.org (lists1.osuosl.org [140.211.166.142])\n\tby smtp4.osuosl.org (Postfix) with ESMTP id 78A5C40CF7;\n\tFri, 10 Apr 2026 09:34:08 +0000 (UTC)","from smtp1.osuosl.org (smtp1.osuosl.org [140.211.166.138])\n by lists1.osuosl.org (Postfix) with ESMTP id 726F01F6\n for <intel-wired-lan@lists.osuosl.org>; Fri, 10 Apr 2026 09:34:07 +0000 (UTC)","from localhost (localhost [127.0.0.1])\n by smtp1.osuosl.org (Postfix) with ESMTP id 6301C82C21\n for <intel-wired-lan@lists.osuosl.org>; Fri, 10 Apr 2026 09:34:07 +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 NAb4y-wXPC7e for <intel-wired-lan@lists.osuosl.org>;\n Fri, 10 Apr 2026 09:34:06 +0000 (UTC)","from us-smtp-delivery-124.mimecast.com\n (us-smtp-delivery-124.mimecast.com [170.10.129.124])\n by smtp1.osuosl.org (Postfix) with ESMTPS id 36F9582BBC\n for <intel-wired-lan@lists.osuosl.org>; Fri, 10 Apr 2026 09:34:05 +0000 (UTC)","from mail-wm1-f72.google.com (mail-wm1-f72.google.com\n [209.85.128.72]) by relay.mimecast.com with ESMTP with STARTTLS\n (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id\n us-mta-507-TaOvCxMUNt67n9uKpMtWIA-1; Fri, 10 Apr 2026 05:34:01 -0400","by mail-wm1-f72.google.com with SMTP id\n 5b1f17b1804b1-488bf01961cso12240025e9.0\n for <intel-wired-lan@lists.osuosl.org>; Fri, 10 Apr 2026 02:34:01 -0700 (PDT)","from [192.168.2.83] ([46.175.183.46])\n by smtp.gmail.com with ESMTPSA id\n 5b1f17b1804b1-488d67b4a46sm34427405e9.4.2026.04.10.02.33.57\n (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);\n Fri, 10 Apr 2026 02:33:57 -0700 (PDT)"],"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 78A5C40CF7","OpenDKIM Filter v2.11.0 smtp1.osuosl.org 36F9582BBC"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=osuosl.org;\n\ts=default; t=1775813648;\n\tbh=sbM21vS9RG0xTNneVhbnDW2fnz9h7Hsz+sTJGjyoxSk=;\n\th=Date:To:Cc:References:From:In-Reply-To:Subject:List-Id:\n\t List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe:\n\t From;\n\tb=XaKBc1rhFjPbGV0RGpLNoEamRu8wQfJo2q1NvexGVi28eXUSOzNB2Aw/n7ZZgKjFe\n\t JKPSwKZmyx23uiMXfhhmjh7XXKB+qcRTIHbSX/+KaRxwAZcJcm/Wm7jDnEoTHv6Mqp\n\t uLuc17Xc8SZrZRr2b/H6CilQ8mosSiWzUPbY/mkLjAtVhq6wJVX++Sc4JKnlkfF+kD\n\t ZSbehIPVjkd2Akc5RkL148n80XHd52reMzBdg/iiZ73n1K0aYdGlLJXOfosx3IG+Ww\n\t 2+RK3AW7wwfGOmMuCX00GNIZLr2nd3cE6wuvspn6hZL0LppHXkjOhGZ1/OdrD2vm3h\n\t 06IzKX4B8UlZA==","Received-SPF":"Pass (mailfrom) identity=mailfrom; client-ip=170.10.129.124;\n helo=us-smtp-delivery-124.mimecast.com; envelope-from=poros@redhat.com;\n receiver=<UNKNOWN>","DMARC-Filter":"OpenDMARC Filter v1.4.2 smtp1.osuosl.org 36F9582BBC","X-MC-Unique":"TaOvCxMUNt67n9uKpMtWIA-1","X-Mimecast-MFC-AGG-ID":"TaOvCxMUNt67n9uKpMtWIA_1775813640","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1775813640; x=1776418440;\n h=content-transfer-encoding:in-reply-to:from:content-language\n :references:cc:to:subject:user-agent:mime-version:date:message-id\n :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id\n :reply-to;\n bh=sbM21vS9RG0xTNneVhbnDW2fnz9h7Hsz+sTJGjyoxSk=;\n b=LByi6NPRoUSdciKR005HcTnC3oUwkIf6E+4MVnqZAoKo8GAD2tsKP7O4zm7NlZaaCn\n fa7z/Qax+2XcR/vozHfD6YENhFep0aArcLuJGaEVvfqdKPUG9bp5AS3beGfZRdcHGU5R\n ky1NKmxhWgnDSJyM61dyrGDLhkxAF8jUOh3czUAYewZR0C2y6y1dyJjReX9Gj5PyWBIS\n EfIbqeohJ8Qzy+uvv++1L4ekV2wAmxki0j3H3pmIG/jj8EAsQyTuDuTupvUaZGr3e0wn\n bsq9yy141Z2Y3yjErUKKDnMM72adOAjUzP8cxb61ebLFM/RsoGruzkmwfsSLbEVbSpL5\n UtOw==","X-Forwarded-Encrypted":"i=1;\n AJvYcCV7LJRKQos0aHBGjWlSa9Ja0fRGYB50Klz6LkZKInX2D4RfGIIlHgrZZfQNKY/0nM8fK11t86QqGtMw19HsoTg=@lists.osuosl.org","X-Gm-Message-State":"AOJu0Yz5jcgbWpekS4ttjlKnYmz/SJ2Ul3NxCI6edRKPhl1/683wbkX+\n GclxF7toq158P2055kPp3VgHo9uVREVnKXQ3NfPURT1dE1OskEjpY6w2XDVkydseuBdBwKg8/ov\n MttvERNY4XwEAKKZxFc3E4BPR5sVwicwQTRFU6B69QIVMaL7OGWV8k6ekdqrfSR9ORddSkWI=","X-Gm-Gg":"AeBDieuWyeoXikHq0PMiMNJJXxstnh/phY5Wb7DzQtA/+ag6FInxzXAvSIHeENwPI78\n k/+NGQF1cwkrCy5rzuSyG+WgmIf0kpIRSalnoZbssu98hR3ILc/SjBOHMwmsaS2wFqBeHjMr3uR\n Aped8mwCjfG/VODva38cA46YKYITy0iKz+QtKxmLuY+8L4zxQEMPpfQUtF0cw3KrQMcN3BNi2TQ\n 3AIkYx0kXlemhSeRQBYmKY/9EBpzemgStoX93b+nCbRHwNWE0uCxJex7sBGQzOq271rRO0vkBwp\n kaLqIujWXNIpRxIL3d9bTe+JSlRH3LYvH6l+StYiS+vrLYTtoAZQdsG8bWD6+ctMlHcSTZSah82\n Glfp7BGfDhH+cxTqyM2cK","X-Received":["by 2002:a05:600c:45cd:b0:488:a82f:bb96 with SMTP id\n 5b1f17b1804b1-488d68c7fc2mr24692075e9.29.1775813640029;\n Fri, 10 Apr 2026 02:34:00 -0700 (PDT)","by 2002:a05:600c:45cd:b0:488:a82f:bb96 with SMTP id\n 5b1f17b1804b1-488d68c7fc2mr24691485e9.29.1775813639482;\n Fri, 10 Apr 2026 02:33:59 -0700 (PDT)"],"Message-ID":"<7768956d-f1d6-496b-93ef-10525852e95e@redhat.com>","Date":"Fri, 10 Apr 2026 11:33:57 +0200","MIME-Version":"1.0","User-Agent":"Mozilla Thunderbird","To":"Jacob Keller <jacob.e.keller@intel.com>,\n Anthony Nguyen <anthony.l.nguyen@intel.com>,\n Intel Wired LAN <intel-wired-lan@lists.osuosl.org>, netdev@vger.kernel.org","Cc":"Aleksandr Loktionov <aleksandr.loktionov@intel.com>,\n Timothy Miskell <timothy.miskell@intel.com>","References":"<20260408-jk-even-more-e825c-fixes-v1-0-b959da91a81f@intel.com>\n <20260408-jk-even-more-e825c-fixes-v1-2-b959da91a81f@intel.com>","From":"Petr Oros <poros@redhat.com>","In-Reply-To":"<20260408-jk-even-more-e825c-fixes-v1-2-b959da91a81f@intel.com>","X-Mimecast-Spam-Score":"0","X-Mimecast-MFC-PROC-ID":"mJxu5BwPw1ez236W0vWTmGaUJ05h2i-4aybiLpVYZZw_1775813640","X-Mimecast-Originator":"redhat.com","Content-Language":"en-US","Content-Type":"text/plain; charset=UTF-8; format=flowed","Content-Transfer-Encoding":"7bit","X-Mailman-Original-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=redhat.com;\n s=mimecast20190719; t=1775813645;\n h=from:from:reply-to:subject:subject:date:date:message-id:message-id:\n to:to:cc:cc:mime-version:mime-version:content-type:content-type:\n content-transfer-encoding:content-transfer-encoding:\n in-reply-to:in-reply-to:references:references;\n bh=sbM21vS9RG0xTNneVhbnDW2fnz9h7Hsz+sTJGjyoxSk=;\n b=TlcWGWfwz+no9NCzIe9ufzOcANWOIZJj6LLqonnxYNQlhiCJHofDQsd2vTVyn/iv7VnZ9x\n qjWmViIuF/s6Tub1PJ3+YDJ4kz/FKUTFH5t0KbkX4vTOYSo60BWhc9w+ka3fqF/lUnyYra\n I/XXCEVr5jGHrhpMtaRWE5UbmferZtE=","X-Mailman-Original-Authentication-Results":["smtp1.osuosl.org;\n dmarc=pass (p=quarantine dis=none)\n header.from=redhat.com","smtp1.osuosl.org;\n dkim=pass (1024-bit key,\n unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256\n header.s=mimecast20190719 header.b=TlcWGWfw"],"Subject":"Re: [Intel-wired-lan] [PATCH iwl-net 2/4] ice: perform PHY soft\n reset for E825C ports at initialization","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>","Errors-To":"intel-wired-lan-bounces@osuosl.org","Sender":"\"Intel-wired-lan\" <intel-wired-lan-bounces@osuosl.org>"}}]