[SRU][J:linux-bluefield][PULL v3] Add DPLL and syncE support

William Tu witu at nvidia.com
Thu Feb 22 15:47:35 UTC 2024


BugLink: https://bugs.launchpad.net/bugs/2053155

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.

v2->v3:
	add witu to sob list
	Acked-by: Tim Gardner <tim.gardner at canonical.com>
v1->v2:
	change branch name from mn-canonical-tony-pr to master-next-dpll
----------------------------------------------------------------
The following changes since commit bf6a2ae5d15987e7c02493442040f4e51092cb77:

  UBUNTU: Ubuntu-bluefield-5.15.0-1036.38 (2024-02-14 11:15:34 +0100)

are available in the Git repository at:

  git+ssh://wtu@git.launchpad.net/~wtu/ubuntu/+source/linux-bluefield master-next-dpll

for you to fetch changes up to 168aa63360115e0b4e64e026bdec4d1f8851fae5:

  UBUNTU: SAUCE: broadcom: add DPLL dependency (2024-02-22 15:41:12 +0000)

----------------------------------------------------------------
Arkadiusz Kubalewski (4):
      dpll: docs: add support for pin signal phase offset/adjust
      dpll: spec: add support for pin-dpll signal phase offset/adjust
      dpll: netlink/core: add support for pin-dpll signal phase offset/adjust
      dpll: netlink/core: change pin frequency set behavior

Bagas Sanjaya (2):
      Documentation: dpll: Fix code blocks
      Documentation: dpll: wrap DPLL_CMD_PIN_GET output in a code block

Jakub Kicinski (20):
      genetlink: fix kdoc warnings
      genetlink: start to validate reserved header bytes
      genetlink: reject use of nlmsg_flags for new commands
      genetlink: introduce split op representation
      netlink: factor out extack composition
      netlink: add support for ext_ack missing attributes
      netlink: add helpers for extack attr presence checking
      genetlink: refactor the cmd <> policy mapping dump
      genetlink: piggy back on resv_op to default to a reject policy
      genetlink: move the private fields in struct genl_family
      genetlink: load policy based on validation flags
      genetlink: check for callback type at op load time
      genetlink: add policies for both doit and dumpit in ctrl_dumppolicy_start()
      genetlink: support split policies in ctrl_dumppolicy_put_op()
      genetlink: inline genl_get_cmd()
      genetlink: limit the use of validation workarounds to old ops
      genetlink: add iterator for walking family ops
      genetlink: use iterator in the op to policy map dumping
      genetlink: inline old iteration helpers
      genetlink: allow families to use split ops directly

Jiri Pirko (3):
      netdev: expose DPLL pin handle for netdevice
      netlink: specs: remove redundant type keys from attributes in subsets
      dpll: remove leftover mode_supported() op and use mode_get() instead

Tony Duan (1):
      UBUNTU: SAUCE: fix build error after resv_start_op

Vadim Fedorenko (4):
      dpll: documentation on DPLL subsystem interface
      dpll: spec: Add Netlink spec in YAML
      dpll: core: Add DPLL framework base functions
      dpll: netlink: Add DPLL framework base functions

William Tu (2):
      UBUNTU: [Config] bluefield: add CONFIG_DPLL
      UBUNTU: SAUCE: broadcom: add DPLL dependency

xu xin (1):
      kernel: make taskstats available from all net namespaces

 Documentation/driver-api/dpll.rst        |  551 ++++++++++++++++++++++++++++
 Documentation/driver-api/index.rst       |    1 +
 Documentation/netlink/specs/dpll.yaml    |  510 ++++++++++++++++++++++++++
 MAINTAINERS                              |   11 +
 debian.bluefield/config/annotations      |    1 +
 drivers/Kconfig                          |    2 +
 drivers/Makefile                         |    3 +
 drivers/block/nbd.c                      |    1 +
 drivers/dpll/Kconfig                     |    7 +
 drivers/dpll/Makefile                    |    9 +
 drivers/dpll/dpll_core.c                 |  799 ++++++++++++++++++++++++++++++++++++++++
 drivers/dpll/dpll_core.h                 |   89 +++++
 drivers/dpll/dpll_netlink.c              | 1427 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 drivers/dpll/dpll_netlink.h              |   13 +
 drivers/dpll/dpll_nl.c                   |  164 +++++++++
 drivers/dpll/dpll_nl.h                   |   51 +++
 drivers/net/ethernet/broadcom/Kconfig    |    1 +
 drivers/net/gtp.c                        |    1 +
 drivers/net/ieee802154/mac802154_hwsim.c |    1 +
 drivers/net/macsec.c                     |    1 +
 drivers/net/team/team.c                  |    1 +
 drivers/net/wireguard/netlink.c          |    1 +
 drivers/net/wireless/mac80211_hwsim.c    |    1 +
 drivers/target/target_core_user.c        |    1 +
 drivers/thermal/thermal_netlink.c        |    1 +
 drivers/vdpa/vdpa.c                      |    1 +
 fs/cifs/netlink.c                        |    1 +
 fs/dlm/netlink.c                         |    1 +
 fs/ksmbd/transport_ipc.c                 |    1 +
 include/linux/dpll.h                     |  167 +++++++++
 include/linux/genl_magic_func.h          |    1 +
 include/linux/netdevice.h                |   21 ++
 include/linux/netlink.h                  |   24 ++
 include/net/genetlink.h                  |  102 +++++-
 include/uapi/linux/dpll.h                |  207 +++++++++++
 include/uapi/linux/if_link.h             |    2 +-
 include/uapi/linux/netlink.h             |    6 +
 kernel/taskstats.c                       |    2 +
 net/batman-adv/netlink.c                 |    7 +-
 net/core/dev.c                           |   22 ++
 net/core/devlink.c                       |    5 +-
 net/core/drop_monitor.c                  |    5 +-
 net/core/rtnetlink.c                     |   36 ++
 net/ethtool/netlink.c                    |    1 +
 net/hsr/hsr_netlink.c                    |    1 +
 net/ieee802154/netlink.c                 |    1 +
 net/ieee802154/nl802154.c                |   11 +-
 net/ipv4/fou.c                           |    1 +
 net/ipv4/tcp_metrics.c                   |    1 +
 net/ipv6/ila/ila_main.c                  |    1 +
 net/ipv6/ioam6.c                         |    1 +
 net/ipv6/seg6.c                          |    1 +
 net/l2tp/l2tp_netlink.c                  |    1 +
 net/mptcp/pm_netlink.c                   |    1 +
 net/ncsi/ncsi-netlink.c                  |    1 +
 net/netfilter/ipvs/ip_vs_ctl.c           |    1 +
 net/netlabel/netlabel_calipso.c          |    1 +
 net/netlabel/netlabel_cipso_v4.c         |    1 +
 net/netlabel/netlabel_mgmt.c             |    1 +
 net/netlabel/netlabel_unlabeled.c        |    1 +
 net/netlink/af_netlink.c                 |   97 +++--
 net/netlink/genetlink.c                  |  523 +++++++++++++++++++++------
 net/nfc/netlink.c                        |    1 +
 net/openvswitch/conntrack.c              |    1 +
 net/openvswitch/datapath.c               |    3 +
 net/openvswitch/meter.c                  |    1 +
 net/psample/psample.c                    |    1 +
 net/smc/smc_netlink.c                    |    3 +-
 net/smc/smc_pnet.c                       |    3 +-
 net/tipc/netlink.c                       |    1 +
 net/tipc/netlink_compat.c                |    1 +
 net/wireless/nl80211.c                   |    7 +-
 72 files changed, 4756 insertions(+), 172 deletions(-)
 create mode 100644 Documentation/driver-api/dpll.rst
 create mode 100644 Documentation/netlink/specs/dpll.yaml
 create mode 100644 drivers/dpll/Kconfig
 create mode 100644 drivers/dpll/Makefile
 create mode 100644 drivers/dpll/dpll_core.c
 create mode 100644 drivers/dpll/dpll_core.h
 create mode 100644 drivers/dpll/dpll_netlink.c
 create mode 100644 drivers/dpll/dpll_netlink.h
 create mode 100644 drivers/dpll/dpll_nl.c
 create mode 100644 drivers/dpll/dpll_nl.h
 create mode 100644 include/linux/dpll.h
 create mode 100644 include/uapi/linux/dpll.h



More information about the kernel-team mailing list