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 smtp4.osuosl.org (smtp4.osuosl.org [140.211.166.137]) (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 73064C71148 for ; Fri, 13 Jun 2025 15:52:16 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp4.osuosl.org (Postfix) with ESMTP id 17ACE405AD; Fri, 13 Jun 2025 15:52:16 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp4.osuosl.org ([127.0.0.1]) by localhost (smtp4.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id iYc_ZtdNWfx8; Fri, 13 Jun 2025 15:52:15 +0000 (UTC) X-Comment: SPF check N/A for local connections - client-ip=140.211.166.142; helo=lists1.osuosl.org; envelope-from=intel-wired-lan-bounces@osuosl.org; receiver= DKIM-Filter: OpenDKIM Filter v2.11.0 smtp4.osuosl.org 75FC2406F5 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=osuosl.org; s=default; t=1749829935; bh=yV1sWZeZVf/FIQXque4O5JP0sG577Rz8Lj6jjxTnW8c=; h=Date:To:Cc:References:From:In-Reply-To:Subject:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From; b=LuHCM96WTCwzX7L/9GPXXa8oiabA03N+nsc3uKfY/19YLqldGd/BSypSl3jKmf0lc YttOwj6Q6C8deWdOWhPWfB4t/uMDq4sm1go2Omcf7KQKXsZEq8n5Hrwd1Azbd2cfrR bl5Wi89Gppain3vJg5JOZpCVlYcfuUD/LChacO9oJyRhsWz2A3dISTOFxQ5nsWeRtY iQoII4lA8MMI2dLnIORn93Vjl9txvexgBfm49xcz4UNoOT0QU3qCl2OHiGolzdQ6Ri gYrRiJC9k0/SiJ+x3iPxeywP9TfPvO+7xFQ+Zc58hG1wiylhxrYbhilQQ0VrqWm/+Z 0OmDOTCUdzSdA== Received: from lists1.osuosl.org (lists1.osuosl.org [140.211.166.142]) by smtp4.osuosl.org (Postfix) with ESMTP id 75FC2406F5; Fri, 13 Jun 2025 15:52:15 +0000 (UTC) Received: from smtp1.osuosl.org (smtp1.osuosl.org [140.211.166.138]) by lists1.osuosl.org (Postfix) with ESMTP id E7B84183 for ; Fri, 13 Jun 2025 15:52:13 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id D98E3842B5 for ; Fri, 13 Jun 2025 15:52:13 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp1.osuosl.org ([127.0.0.1]) by localhost (smtp1.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id BfHX1WujqghA for ; Fri, 13 Jun 2025 15:52:13 +0000 (UTC) Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=95.215.58.182; helo=out-182.mta1.migadu.com; envelope-from=vadim.fedorenko@linux.dev; receiver= DMARC-Filter: OpenDMARC Filter v1.4.2 smtp1.osuosl.org E2FAE842AF DKIM-Filter: OpenDKIM Filter v2.11.0 smtp1.osuosl.org E2FAE842AF Received: from out-182.mta1.migadu.com (out-182.mta1.migadu.com [95.215.58.182]) by smtp1.osuosl.org (Postfix) with ESMTPS id E2FAE842AF for ; Fri, 13 Jun 2025 15:52:12 +0000 (UTC) Message-ID: <2ac62524-e45f-4ef6-a8b4-01adfd1391c2@linux.dev> Date: Fri, 13 Jun 2025 16:52:01 +0100 MIME-Version: 1.0 To: Arkadiusz Kubalewski , donald.hunter@gmail.com, kuba@kernel.org, davem@davemloft.net, edumazet@google.com, pabeni@redhat.com, horms@kernel.org, jiri@resnulli.us, anthony.l.nguyen@intel.com, przemyslaw.kitszel@intel.com, andrew+netdev@lunn.ch, aleksandr.loktionov@intel.com, milena.olech@intel.com, corbet@lwn.net Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, intel-wired-lan@lists.osuosl.org, linux-doc@vger.kernel.org References: <20250612152835.1703397-1-arkadiusz.kubalewski@intel.com> Content-Language: en-US X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: Vadim Fedorenko In-Reply-To: <20250612152835.1703397-1-arkadiusz.kubalewski@intel.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Migadu-Flow: FLOW_OUT X-Mailman-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1749829927; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=yV1sWZeZVf/FIQXque4O5JP0sG577Rz8Lj6jjxTnW8c=; b=hZXefQ1zsdCjt1DrWrZaHhu7+CM+Ie5JgTIalZx7nqY2js+eUhbVLFm+cSahtcLnRIBMtM 6Sz8pXb9SRPlAlw2wYYU4/SHhLiAkOSjhVDfP9VYIdDUZ9PPtKK+y8h7nhiqz3VPpTXXrV dwMnBcwhhkVjWndrPKIgkldwS4zTTlA= X-Mailman-Original-Authentication-Results: smtp1.osuosl.org; dmarc=pass (p=none dis=none) header.from=linux.dev X-Mailman-Original-Authentication-Results: smtp1.osuosl.org; dkim=pass (1024-bit key, unprotected) header.d=linux.dev header.i=@linux.dev header.a=rsa-sha256 header.s=key1 header.b=hZXefQ1z Subject: Re: [Intel-wired-lan] [PATCH net-next v6 0/3] dpll: add all inputs phase offset monitor X-BeenThere: intel-wired-lan@osuosl.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Intel Wired Ethernet Linux Kernel Driver Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-wired-lan-bounces@osuosl.org Sender: "Intel-wired-lan" On 12/06/2025 16:28, Arkadiusz Kubalewski wrote: > Add dpll device level feature: phase offset monitor. > > Phase offset measurement is typically performed against the current active > source. However, some DPLL (Digital Phase-Locked Loop) devices may offer > the capability to monitor phase offsets across all available inputs. > The attribute and current feature state shall be included in the response > message of the ``DPLL_CMD_DEVICE_GET`` command for supported DPLL devices. > In such cases, users can also control the feature using the > ``DPLL_CMD_DEVICE_SET`` command by setting the ``enum dpll_feature_state`` > values for the attribute. > Once enabled the phase offset measurements for the input shall be returned > in the ``DPLL_A_PIN_PHASE_OFFSET`` attribute. > > Implement feature support in ice driver for dpll-enabled devices. > > Verify capability: > $ ./tools/net/ynl/pyynl/cli.py \ > --spec Documentation/netlink/specs/dpll.yaml \ > --dump device-get > [{'clock-id': 4658613174691613800, > 'id': 0, > 'lock-status': 'locked-ho-acq', > 'mode': 'automatic', > 'mode-supported': ['automatic'], > 'module-name': 'ice', > 'type': 'eec'}, > {'clock-id': 4658613174691613800, > 'id': 1, > 'lock-status': 'locked-ho-acq', > 'mode': 'automatic', > 'mode-supported': ['automatic'], > 'module-name': 'ice', > 'phase-offset-monitor': 'disable', > 'type': 'pps'}] > > Enable the feature: > $ ./tools/net/ynl/pyynl/cli.py \ > --spec Documentation/netlink/specs/dpll.yaml \ > --do device-set --json '{"id":1, "phase-offset-monitor":"enable"}' > > Verify feature is enabled: > $ ./tools/net/ynl/pyynl/cli.py \ > --spec Documentation/netlink/specs/dpll.yaml \ > --dump device-get > [ > [...] > {'capabilities': {'all-inputs-phase-offset-monitor'}, > 'clock-id': 4658613174691613800, > 'id': 1, > [...] > 'phase-offset-monitor': 'enable', > [...]] > > v6: > - rebase. > > Arkadiusz Kubalewski (3): > dpll: add phase-offset-monitor feature to netlink spec > dpll: add phase_offset_monitor_get/set callback ops > ice: add phase offset monitor for all PPS dpll inputs > > Documentation/driver-api/dpll.rst | 18 ++ > Documentation/netlink/specs/dpll.yaml | 24 +++ > drivers/dpll/dpll_netlink.c | 69 ++++++- > drivers/dpll/dpll_nl.c | 5 +- > .../net/ethernet/intel/ice/ice_adminq_cmd.h | 20 ++ > drivers/net/ethernet/intel/ice/ice_common.c | 26 +++ > drivers/net/ethernet/intel/ice/ice_common.h | 3 + > drivers/net/ethernet/intel/ice/ice_dpll.c | 193 +++++++++++++++++- > drivers/net/ethernet/intel/ice/ice_dpll.h | 8 + > drivers/net/ethernet/intel/ice/ice_main.c | 4 + > include/linux/dpll.h | 8 + > include/uapi/linux/dpll.h | 12 ++ > 12 files changed, 384 insertions(+), 6 deletions(-) > Acked-by: Vadim Fedorenko From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from out-178.mta1.migadu.com (out-178.mta1.migadu.com [95.215.58.178]) (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 1862A1F875A for ; Fri, 13 Jun 2025 15:52:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=95.215.58.178 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749829931; cv=none; b=cjL3g9XN//KFSmldy4sIY2p+Ms5VP/6fJd8ObXPPxZdz6CWtBIioxvYAZ4eu7e2s2yMEtaFG7ieLIjP3jjm3haRfMT2mDaVs4T1yW1IOHnwB209U+0p/yp7Ocji9JMs1mMBTKwXBiLUZuwU42emfihHJpnYzdUjAfQsy+UmPOAQ= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749829931; c=relaxed/simple; bh=Kev/MH7b3XzfIbzkgR1o2iu55NK3f5nafOrGO/KhEwE=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=BD69z6/VmAgaxZl4agTjkP4JLa2CoW+c7IERJRS5klNMUCrXCJBgRxRg0aaL8qgi9Ibfpthwy99hzqV/38DYYEnNtOHWkT1FR4Vxvw/iN7iip6LSNGKmroNk9Y2r2CeZFVlih0UXUeFQoi1+dHYlYNUmF+0D5ZBJFPUQAFoiMzk= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.dev; spf=pass smtp.mailfrom=linux.dev; dkim=pass (1024-bit key) header.d=linux.dev header.i=@linux.dev header.b=hZXefQ1z; arc=none smtp.client-ip=95.215.58.178 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.dev Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.dev Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linux.dev header.i=@linux.dev header.b="hZXefQ1z" Message-ID: <2ac62524-e45f-4ef6-a8b4-01adfd1391c2@linux.dev> DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1749829927; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=yV1sWZeZVf/FIQXque4O5JP0sG577Rz8Lj6jjxTnW8c=; b=hZXefQ1zsdCjt1DrWrZaHhu7+CM+Ie5JgTIalZx7nqY2js+eUhbVLFm+cSahtcLnRIBMtM 6Sz8pXb9SRPlAlw2wYYU4/SHhLiAkOSjhVDfP9VYIdDUZ9PPtKK+y8h7nhiqz3VPpTXXrV dwMnBcwhhkVjWndrPKIgkldwS4zTTlA= Date: Fri, 13 Jun 2025 16:52:01 +0100 Precedence: bulk X-Mailing-List: linux-doc@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Subject: Re: [PATCH net-next v6 0/3] dpll: add all inputs phase offset monitor To: Arkadiusz Kubalewski , donald.hunter@gmail.com, kuba@kernel.org, davem@davemloft.net, edumazet@google.com, pabeni@redhat.com, horms@kernel.org, jiri@resnulli.us, anthony.l.nguyen@intel.com, przemyslaw.kitszel@intel.com, andrew+netdev@lunn.ch, aleksandr.loktionov@intel.com, milena.olech@intel.com, corbet@lwn.net Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, intel-wired-lan@lists.osuosl.org, linux-doc@vger.kernel.org References: <20250612152835.1703397-1-arkadiusz.kubalewski@intel.com> Content-Language: en-US X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: Vadim Fedorenko In-Reply-To: <20250612152835.1703397-1-arkadiusz.kubalewski@intel.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Migadu-Flow: FLOW_OUT On 12/06/2025 16:28, Arkadiusz Kubalewski wrote: > Add dpll device level feature: phase offset monitor. > > Phase offset measurement is typically performed against the current active > source. However, some DPLL (Digital Phase-Locked Loop) devices may offer > the capability to monitor phase offsets across all available inputs. > The attribute and current feature state shall be included in the response > message of the ``DPLL_CMD_DEVICE_GET`` command for supported DPLL devices. > In such cases, users can also control the feature using the > ``DPLL_CMD_DEVICE_SET`` command by setting the ``enum dpll_feature_state`` > values for the attribute. > Once enabled the phase offset measurements for the input shall be returned > in the ``DPLL_A_PIN_PHASE_OFFSET`` attribute. > > Implement feature support in ice driver for dpll-enabled devices. > > Verify capability: > $ ./tools/net/ynl/pyynl/cli.py \ > --spec Documentation/netlink/specs/dpll.yaml \ > --dump device-get > [{'clock-id': 4658613174691613800, > 'id': 0, > 'lock-status': 'locked-ho-acq', > 'mode': 'automatic', > 'mode-supported': ['automatic'], > 'module-name': 'ice', > 'type': 'eec'}, > {'clock-id': 4658613174691613800, > 'id': 1, > 'lock-status': 'locked-ho-acq', > 'mode': 'automatic', > 'mode-supported': ['automatic'], > 'module-name': 'ice', > 'phase-offset-monitor': 'disable', > 'type': 'pps'}] > > Enable the feature: > $ ./tools/net/ynl/pyynl/cli.py \ > --spec Documentation/netlink/specs/dpll.yaml \ > --do device-set --json '{"id":1, "phase-offset-monitor":"enable"}' > > Verify feature is enabled: > $ ./tools/net/ynl/pyynl/cli.py \ > --spec Documentation/netlink/specs/dpll.yaml \ > --dump device-get > [ > [...] > {'capabilities': {'all-inputs-phase-offset-monitor'}, > 'clock-id': 4658613174691613800, > 'id': 1, > [...] > 'phase-offset-monitor': 'enable', > [...]] > > v6: > - rebase. > > Arkadiusz Kubalewski (3): > dpll: add phase-offset-monitor feature to netlink spec > dpll: add phase_offset_monitor_get/set callback ops > ice: add phase offset monitor for all PPS dpll inputs > > Documentation/driver-api/dpll.rst | 18 ++ > Documentation/netlink/specs/dpll.yaml | 24 +++ > drivers/dpll/dpll_netlink.c | 69 ++++++- > drivers/dpll/dpll_nl.c | 5 +- > .../net/ethernet/intel/ice/ice_adminq_cmd.h | 20 ++ > drivers/net/ethernet/intel/ice/ice_common.c | 26 +++ > drivers/net/ethernet/intel/ice/ice_common.h | 3 + > drivers/net/ethernet/intel/ice/ice_dpll.c | 193 +++++++++++++++++- > drivers/net/ethernet/intel/ice/ice_dpll.h | 8 + > drivers/net/ethernet/intel/ice/ice_main.c | 4 + > include/linux/dpll.h | 8 + > include/uapi/linux/dpll.h | 12 ++ > 12 files changed, 384 insertions(+), 6 deletions(-) > Acked-by: Vadim Fedorenko