** Changed in: linux-bluefield (Ubuntu Jammy) Status: New => Fix Committed
-- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux-bluefield in Ubuntu. https://bugs.launchpad.net/bugs/2053155 Title: Add DPLL and syncE support Status in linux-bluefield package in Ubuntu: Invalid Status in linux-bluefield source package in Jammy: Fix Committed Bug description: * 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) We need to support mlx5 SyncE feature. The following patches are needed. [net-next,v8,0/9] Create common DPLL configuration API [net-next,v8,1/9] dpll: documentation on DPLL subsystem interface [net-next,v8,2/9] dpll: spec: Add Netlink spec in YAML [net-next,v8,3/9] dpll: core: Add DPLL framework base functions [net-next,v8,4/9] dpll: netlink: Add DPLL framework base functions [net-next,v8,5/9] netdev: expose DPLL pin handle for netdevice [net-next,v8,6/9] ice: add admin commands to access cgu configuration [net-next,v8,7/9] ice: implement dpll interface to control cgu [net-next,v8,8/9] ptp_ocp: implement DPLL ops [net-next,v8,9/9] mlx5: Implement SyncE support using DPLL infrastructure https://lore.kernel.org/netdev/20230913204943.1051233-1-vadim.fedore...@linux.dev/ * Brief explanation of fixes We identify several dependent patches, especially related to netlink gap between current master-next. We cherry-pick/backport series of patches related to netlink. * 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 OR, $ mlxfwmanager showing “Enhanced-SyncE & PTP GM support”, * list of patches applied to 5.15 jammy based on 911f816f4c04 mlxbf_gige: fix receive packet race condition we applied the following 83a11d94c436 UBUNTU: SAUCE: fix build error after resv_start_op 036b2fecd315 genetlink: allow families to use split ops directly 9f40a82f73ea genetlink: inline old iteration helpers d8ae137b98fc genetlink: use iterator in the op to policy map dumping 095792a3a723 genetlink: add iterator for walking family ops 764747ba0085 genetlink: limit the use of validation workarounds to old ops 35b95f016392 genetlink: inline genl_get_cmd() c448680485e6 genetlink: support split policies in ctrl_dumppolicy_put_op() a17efffb8ce8 genetlink: add policies for both doit and dumpit in ctrl_dumppolicy_start() 82af441de2fa genetlink: check for callback type at op load time dc17c9675d6d genetlink: load policy based on validation flags d867b1e130d3 genetlink: move the private fields in struct genl_family b515a3664ef5 genetlink: piggy back on resv_op to default to a reject policy 1fa6e0ec60a4 genetlink: refactor the cmd <> policy mapping dump c8ba54011c1d netlink: add helpers for extack attr presence checking 3d9c79882136 netlink: add support for ext_ack missing attributes a0edd1e6e99c netlink: factor out extack composition 181e77073d7c genetlink: introduce split op representation 58077e5acc95 genetlink: reject use of nlmsg_flags for new commands 199935182e01 genetlink: start to validate reserved header bytes 137d6fb11693 kernel: make taskstats available from all net namespaces 75acbd978295 genetlink: fix kdoc warnings 05670bbfb561 dpll: remove leftover mode_supported() op and use mode_get() instead e878653f5370 dpll: netlink/core: change pin frequency set behavior d483a8e43651 dpll: netlink/core: add support for pin-dpll signal phase offset/adjust 71574fa963d0 dpll: spec: add support for pin-dpll signal phase offset/adjust 2b004af8572d netlink: specs: remove redundant type keys from attributes in subsets 473b6cb3696f dpll: docs: add support for pin signal phase offset/adjust 015ea1e2fbda Documentation: dpll: wrap DPLL_CMD_PIN_GET output in a code block 5167a94e40e1 Documentation: dpll: Fix code blocks 16ab1010e92d netdev: expose DPLL pin handle for netdevice aa78df66e66b dpll: netlink: Add DPLL framework base functions d0eafb969ef9 dpll: core: Add DPLL framework base functions 8bb4159242d6 dpll: spec: Add Netlink spec in YAML 3dbcbef38d8e dpll: documentation on DPLL subsystem interface To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux-bluefield/+bug/2053155/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp