
This commit back ports the DPLL related commits from the upstream kernel that are identified by Intel to provide the expected SyncE/GNSS functionality. There are totally 46 back ported commits included the four commits I added are used to resolve the conflicts during back porting. The 0046 patch is cherry picked from kernel-6.9. The 0031-0045 patches are cherry picked from kernel-6.8. The 0001-0030 patches are cherry picked from kernel-6.7. We also change the in-tree ice driver version to 6.6.40-stx.2 from 6.6.40-stx.1. * To fix the conflict of 91e43ca0090b ("ice: fix linking when CONFIG_PTP_1588_CLOCK=n"), we cherry pick 12a5a28b565b ("ice: remove ICE_F_PTP_EXTTS feature flag") and 89776a6a702e ("ice: check netlist before enabling ICE_F_GNSS"). Adjust 12a5a28b565b because 0d1b22367ec2 ("ice: fix pin assignment for E810-T without SMA control") already included the part code of 12a5a28b565b. https://git.yoctoproject.org/linux-yocto/commit/?id=0d1b22367ec2 * Cherry pick 7049fd5df7 ("netlink: specs: remove redundant type keys from attributes in subsets") to fix the the conflict of c3c6ab95c397 ("dpll: spec: add support for pin-dpll signal phase offset/adjust.") * Cherry pick be16574609f1 ("ice: introduce hw->phy_model for handling PTP PHY differences") to fix the confilict of 6db5f2cd9ebb ("ice: dpll:fix output pin capabilities"). Verification: - Build kernel and out of tree modules success for rt and std. - Install success onto a All-in-One lab with rt kernel. - Boot up successfully in the lab. - interfaces are up and pass packets for rt and std. - Check dmesg to see DDP package is loaded successfully and the version is 1.3.36.0 for rt and std, that is same with the OOT ice-1.14.9 driver. - The SyncE/GNSS functionality tests were done by the network team. Story: 2011056 Task: 50797 Change-Id: I715480681c7c43d53b0a0126b34135562e9d02a0 Signed-off-by: Jiping Ma <jiping.ma2@windriver.com>
75 lines
2.7 KiB
Diff
75 lines
2.7 KiB
Diff
From 28fb3199a16a20f9939236fb7cbd5821046de923 Mon Sep 17 00:00:00 2001
|
|
From: Bagas Sanjaya <bagasdotme@gmail.com>
|
|
Date: Thu, 28 Sep 2023 12:27:07 +0700
|
|
Subject: [PATCH 12/46] Documentation: dpll: Fix code blocks
|
|
|
|
kernel test robot and Stephen Rothwell report htmldocs warnings:
|
|
|
|
Documentation/driver-api/dpll.rst:427: WARNING: Error in "code-block" directive:
|
|
maximum 1 argument(s) allowed, 18 supplied.
|
|
|
|
.. code-block:: c
|
|
<snipped>...
|
|
Documentation/driver-api/dpll.rst:444: WARNING: Error in "code-block" directive:
|
|
maximum 1 argument(s) allowed, 21 supplied.
|
|
|
|
.. code-block:: c
|
|
<snipped>...
|
|
Documentation/driver-api/dpll.rst:474: WARNING: Error in "code-block" directive:
|
|
maximum 1 argument(s) allowed, 12 supplied.
|
|
|
|
.. code-block:: c
|
|
<snipped>...
|
|
|
|
Fix these above by adding missing blank line separator after code-block
|
|
directive.
|
|
|
|
Reported-by: kernel test robot <lkp@intel.com>
|
|
Closes: https://lore.kernel.org/oe-kbuild-all/202309180456.lOhxy9gS-lkp@intel.com/
|
|
Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
|
|
Closes: https://lore.kernel.org/linux-next/20230918131521.155e9e63@canb.auug.org.au/
|
|
Fixes: dbb291f19393b6 ("dpll: documentation on DPLL subsystem interface")
|
|
Signed-off-by: Bagas Sanjaya <bagasdotme@gmail.com>
|
|
Acked-by: Randy Dunlap <rdunlap@infradead.org>
|
|
Tested-by: Randy Dunlap <rdunlap@infradead.org>
|
|
Reviewed-by: Vadim Fedorenko <vadim.fedorenko@linux.dev>
|
|
Link: https://lore.kernel.org/r/20230928052708.44820-2-bagasdotme@gmail.com
|
|
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|
(cherry picked from commit 92425d08a60814b4a2e91626f1e24e4fd5fd5c7e)
|
|
Signed-off-by: Jiping Ma <jiping.ma2@windriver.com>
|
|
---
|
|
Documentation/driver-api/dpll.rst | 3 +++
|
|
1 file changed, 3 insertions(+)
|
|
|
|
diff --git a/Documentation/driver-api/dpll.rst b/Documentation/driver-api/dpll.rst
|
|
index bb52f1b8c0be..01eb4de86703 100644
|
|
--- a/Documentation/driver-api/dpll.rst
|
|
+++ b/Documentation/driver-api/dpll.rst
|
|
@@ -425,6 +425,7 @@ The simplest implementation is in the OCP TimeCard driver. The ops
|
|
structures are defined like this:
|
|
|
|
.. code-block:: c
|
|
+
|
|
static const struct dpll_device_ops dpll_ops = {
|
|
.lock_status_get = ptp_ocp_dpll_lock_status_get,
|
|
.mode_get = ptp_ocp_dpll_mode_get,
|
|
@@ -442,6 +443,7 @@ structures are defined like this:
|
|
The registration part is then looks like this part:
|
|
|
|
.. code-block:: c
|
|
+
|
|
clkid = pci_get_dsn(pdev);
|
|
bp->dpll = dpll_device_get(clkid, 0, THIS_MODULE);
|
|
if (IS_ERR(bp->dpll)) {
|
|
@@ -472,6 +474,7 @@ The registration part is then looks like this part:
|
|
In the error path we have to rewind every allocation in the reverse order:
|
|
|
|
.. code-block:: c
|
|
+
|
|
while (i) {
|
|
--i;
|
|
dpll_pin_unregister(bp->dpll, bp->sma[i].dpll_pin, &dpll_pins_ops, &bp->sma[i]);
|
|
--
|
|
2.43.0
|
|
|