[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