** Description changed:

  * intro
  Synchronous Ethernet, or SyncE, is an ITU-T standard for computer networking 
that facilitates the transference of clock signals over the Ethernet physical 
layer. It is used to pass timing from node to node and is particularly 
important for mobile networks.
  
  The DPLL subsystem in the Linux kernel provides a general interface for
  configuring devices that use any kind of Digital PLL. This subsystem is
  designed to manage the clock signal synchronization of a device with an
  external clock signal.
  
  * Explain the bug(s)
  
- Bug 2053155 already backported some patches to Jammy from upstream,
- there are still some more patches need to be backported.
+ Bug 2053155 already backported some patches from upstream, there are
+ still some more patches need to be backported.
  
- fb7418bb4be2 netlink: add variable-length / auto integers
- a41451e75eb7 dpll: indent DPLL option type by a tab
- 2a99978e5907 dpll: sanitize possible null pointer dereference in 
dpll_pin_parent_pin_set()
- 3c046e92c9b6 dpll: Fix potential msg memleak when genlmsg_put_reply failed
- dd366aad1384 dpll: fix dpll_pin_on_pin_register() for multiple parent pins
- fba896fa9970 dpll: check that pin is registered in __dpll_pin_unregister()
- 6182f400aec3 dpll: fix register pin with unregistered parent pin
- 9f8ed94364c4 dpll: fix dpll_xa_ref_*_del() for multiple registrations
- 215250dfdc9e dpll: spec: use proper enum for pin capabilities attribute
- 5bb45ebc5a89 dpll: move all dpll<>netdev helpers to dpll code
- 2d9edf8f70a7 dpll: fix build failure due to rcu_dereference_check() on 
unknown type
- f3dde9bca353 dpll: rely on rcu for netdev_dpll_pin()
- 026d1e21c67d tools: ynl: fix header guards
- 6fe1a583e415 tools: ynl: allow user to pass enum string instead of scalar 
value
- 32250d2551d7 dpll: fix possible deadlock during netlink dump operation
- 1f79359d7433 tools: ynl: include dpll and mptcp_pm in C codegen
- c36d6945b5d0 dpll: extend lock_status_get() op by status error and expose to 
user
- 3a0a12237480 dpll: extend uapi by lock status error attribute
- b4301f76c6b8 dpll: move xa_erase() call in to match dpll_pin_alloc() error 
path order
- ed03a6c933da dpll: fix userspace availability of pins
- b2f4256312fc dpll: fix pin dump crash for rebound module
- 0329c8e419f7 dpll: fix broken error path in dpll_pin_alloc(..)
- b849fe83c180 dpll: expose fractional frequency offset value to user
- 1783b665ccc1 dpll: allocate pin ids in cycle
+ 3424040 dpll: indent DPLL option type by a tab
+ f710345 dpll: sanitize possible null pointer dereference in 
dpll_pin_parent_pin_set()
+ 040437d dpll: Fix potential msg memleak when genlmsg_put_reply failed
+ b45ed4c dpll: fix dpll_pin_on_pin_register() for multiple parent pins
+ 55a0add dpll: check that pin is registered in __dpll_pin_unregister()
+ 540c388 dpll: fix register pin with unregistered parent pin
+ b933eea dpll: fix dpll_xa_ref_*_del() for multiple registrations
+ 0408c3f dpll: spec: use proper enum for pin capabilities attribute
+ b1368d3 dpll: move all dpll<>netdev helpers to dpll code
+ 9c18583 dpll: fix build failure due to rcu_dereference_check() on unknown type
+ ba55508 dpll: rely on rcu for netdev_dpll_pin()
+ 56be959 tools: ynl: fix header guards
+ 7a59a12 tools: ynl: allow user to pass enum string instead of scalar value
+ 8472117 dpll: fix possible deadlock during netlink dump operation
+ 7ee732e tools: ynl: include dpll and mptcp_pm in C codegen
+ 71931b4 dpll: extend lock_status_get() op by status error and expose to user
+ 2369137 dpll: extend uapi by lock status error attribute
+ f57230e dpll: move xa_erase() call in to match dpll_pin_alloc() error path 
order
+ 5ba255b dpll: fix userspace availability of pins
+ ec378a6 dpll: fix pin dump crash for rebound module
+ b2c8844 dpll: fix broken error path in dpll_pin_alloc(..)
+ b6e349a dpll: expose fractional frequency offset value to user
+ 4e5e5e0 dpll: allocate pin ids in cycle
+ a690bc9 netlink: add variable-length / auto integers
+ aaeef43 netlink: allow be16 and be32 types in all uint policy checks
+ abf0f7e netlink: introduce bigendian integer types
+ 0e036c0 netlink: hide validation union fields from kdoc
+ b5091c1 netfilter: nft_payload: reject out-of-range attributes via policy
+ 0bf4c03 netlink: introduce NLA_POLICY_MAX_BE
  
  * Brief explanation of fixes
  
  Basic function of DPLL is not full supported. Still need backported
  relevant patches.
  
  * How to test
  $ sudo ./tools/net/ynl/cli.py --spec Documentation/netlink/specs/dpll.yaml \
  --dump device-get
  ex:
  root@bfqa-dell013-roy-oob:~/mlnx-ofa_kernel-4.0# /root/tools-net/ynl/cli.py 
--spec ~/netlink/specs/dpll.yaml --dump device-get
  [{'clock-id': 5237736944144095348,
    'id': 0,
    'lock-status': 'unlocked',
    'mode': 'manual',
    'mode-supported': ['manual'],
    'module-name': 'mlx5_core',
    'type': 'eec'}]
  
  $ sudo ./tools/net/ynl/cli.py --spec Documentation/netlink/specs/dpll.yaml \
  --do pin-get
  ex:
  root@bfqa-dell013-roy-oob:~# /root/tools-net/ynl/cli.py --spec 
~/netlink/specs/dpll.yaml --dump pin-get
  [{'capabilities': 4,
    'clock-id': 5237736944144095348,
    'id': 0,
    'module-name': 'mlx5_core',
    'parent-device': [{'direction': 'input',
                       'parent-id': 0,
                       'state': 'disconnected'}],
    'phase-adjust-max': 0,
    'phase-adjust-min': 0,
    'type': 'synce-eth-port'},
   {'capabilities': 4,
    'clock-id': 5237736944144095348,
    'id': 1,
    'module-name': 'mlx5_core',
    'parent-device': [{'direction': 'input',
                       'parent-id': 0,
                       'state': 'disconnected'}],
    'phase-adjust-max': 0,
    'phase-adjust-min': 0,
    'type': 'synce-eth-port'}]
  
  * detect whether your device supports DPLL/SyncE
  root@bfqa-dell013-roy-oob:~/linux-bluefield-jammy# mlxreg -d 03:00.0 
--reg_name MCAM --get -i "access_reg_group=2,feature_group=0"
  Field Name | Data
  ===========================================
  access_reg_group | 0x00000002
  feature_group | 0x00000000
  mng_access_reg_cap_mask[0] | 0x00000004
  mng_access_reg_cap_mask[1] | 0x00600000 --> must see 6

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2065664

Title:
  Need more patches to support DPLL and syncE on Bluefield 5.15 kernel

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux-bluefield/+bug/2065664/+subscriptions


-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to