<html><head></head><body><div><br></div><div><span></span></div><div><br></div><div>On Mon, 2022-11-14 at 17:31 -0500, Philip Cox wrote:</div><blockquote type="cite" style="margin:0 0 0 .8ex; border-left:2px #729fcf solid;padding-left:1ex"><div>BugLink: <a href="https://bugs.launchpad.net/bugs/1982282">https://bugs.launchpad.net/bugs/1982282</a><br></div><div><br></div><div><br></div><div>This pull request contains 81 commits that have been cherry-picked, or back ported from the Intel github quilt repository. This set of commits adds integrated TSN controller support for the intel i225 NICs.<br></div><div><br></div><div><br></div><div>[Impact]<br></div><div>The impact on the non-network parts of the kernel should be minimal, as all the changes are contained within the network stacks codepath.<br></div><div><br></div><div>[Test Plan]<br></div><div>I have provided a built version of this kernel to Intel, and they have tested that it works. I have also done some testing using a i225 NIC, and the ALD-S platform. <br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div>The following changes since commit b02c00234b0c783d17d26aa817397ff43ae330a6:<br></div><div><br></div><div> UBUNTU: Ubuntu-intel-iotg-5.15.0-1018.23 (2022-10-20 13:30:11 -0400)<br></div><div><br></div><div>are available in the Git repository at:<br></div><div><br></div><div> <a href="https://code.launchpad.net/~philcox/+git/lp1982282/+ref/philcox/lp1982282-review-nov14">https://code.launchpad.net/~philcox/+git/lp1982282/+ref/philcox/lp1982282-review-nov14</a> <br></div><div><br></div><div>for you to fetch changes up to 5340b7e19cc77260f964d0773dd6ec9a44115307:<br></div><div><br></div><div> stmmac: intel: Add RPL-P PCI ID (2022-11-14 16:21:10 -0500)<br></div><div><br></div><div>----------------------------------------------------------------<br></div><div>Aravindhan Gunasekaran (1):<br></div><div> igc: Take care of DMA timestamp rollover<br></div><div><br></div><div>David E. Box (1):<br></div><div> platform/x86: intel_pmc_core: Add IPC mailbox accessor function<br></div><div><br></div><div>Kai-Heng Feng (1):<br></div><div> net: stmmac: Fix "Unbalanced pm_runtime_enable!" warning<br></div><div><br></div><div>Kurt Kanzenbach (1):<br></div><div> net: stmmac: Calculate CDC error only once<br></div><div><br></div><div>Lay Kuan Loon (3):<br></div><div> net: networkproxy: introduce network proxy framework<br></div><div> net: networkproxy: add network proxy heci client<br></div><div> net: networkproxy: add configfs<br></div><div><br></div><div>Lay, Kuan Loon (1):<br></div><div> net: phy: dp83867: introduce critical chip default init for non-of platform<br></div><div><br></div><div>Ling Pei Lee (2):<br></div><div> net: stmmac: Resolve poor line rate after switching from TSO off to TSO on<br></div><div> stmmac: intel: Update PTP clock rate from 200MHz to 204.86MHz<br></div><div><br></div><div>Malli C (1):<br></div><div> igc: Only dump registers if configured to dump HW information<br></div><div><br></div><div>Michael Sit Wei Hong (3):<br></div><div> stmmac: intel: Add ADL-N PCI ID<br></div><div> net: pcs: xpcs: enable xpcs reset skipping<br></div><div> stmmac: intel: Add RPL-P PCI ID<br></div><div><br></div><div>Mohammad Athari Bin Ismail (2):<br></div><div> net: stmmac: selftest: replace skb_unshare with skb_share_check<br></div><div> net: phy: skip disabling interrupt when WOL is enabled in shutdown<br></div><div><br></div><div>Muhammad Husaini Zulkifli (10):<br></div><div> net: tc: Add index of FPE QMASK<br></div><div> bpf: add btf register/unregister API<br></div><div> net/core: XDP metadata BTF netlink API<br></div><div> rtnetlink: Fix unchecked return value of dev_xdp_query_md_btf()<br></div><div> rtnetlink: Add return value check<br></div><div> igc: Enable HW RX Timestamp for AF_XDP ZC<br></div><div> igc: Enable HW TX Timestamp for AF_XDP ZC<br></div><div> igc: Enable trace for HW TX Timestamp AF_XDP ZC<br></div><div> igc: Remove the CONFIG_DEBUG_MISC condition for trace<br></div><div> igc: Add SO_TXTIME for AF_XDP ZC<br></div><div><br></div><div>Ong Boon Leong (2):<br></div><div> net: stmmac: add tc flower filter for EtherType matching<br></div><div> net: stmmac: add FPE preempt setting for TxQ preemptible MAC mapping<br></div><div><br></div><div>Philip Cox (21):<br></div><div> net: stmmac: enable runtime power management support<br></div><div> igc: Set the RX packet buffer size for TSN mode<br></div><div> ethtool: Add support for configuring and verifying frame preemption<br></div><div> ethtool: Add support for configuring frame preemption via ioctl<br></div><div> igc: Add support for Frame Preemption verification<br></div><div> igc: Optimize the packet buffer utilization<br></div><div> igc: Export LEDs<br></div><div> igc: Fix sending packets too early<br></div><div> igc: Fix scheduling multiple packets for next cycle<br></div><div> igc: Add context for empty packet<br></div><div> igc: Reodering the empty packet buffers and descriptors<br></div><div> igc: Add trace for launchtime calculation corner case<br></div><div> igc: Configure BaseT after start and end time queue registers<br></div><div> REVERTME: net: stmmac: Add support for HW-accelerated VLAN stripping<br></div><div> net: stmmac: Prevent double release for suspended port in stmmac_release<br></div><div> net: stmmac: enable network proxy MSI interrupt support<br></div><div> net: stmmac: add network proxy support<br></div><div> net: stmmac: Move phy state machine handling into common suspend/resume func<br></div><div> net: stmmac: Disable MAC EEE when Network Proxy is enabled<br></div><div> net: phy: reconfigure PHY WOL in resume if WOL option still enabled<br></div><div> net: stmmac: enable Intel mGbE 1G/2.5G auto-negotiation support<br></div><div><br></div><div>Saeed Mahameed (2):<br></div><div> tools/bpf: Query XDP metadata BTF ID<br></div><div> tools/bpf: Add xdp set command for md btf<br></div><div><br></div><div>Song Yoong Siang (4):<br></div><div> net: phy: marvell10g: Add WAKE_PHY support to WOL event<br></div><div> net: stmmac: skip runtime handling in mdio read/write<br></div><div> net: networkproxy: add MIB passing via shared memory mechanism<br></div><div> net: stmmac: move TX/RX MAC state machine enablement to struct stmmac_ops<br></div><div><br></div><div>Song, Yoong Siang (6):<br></div><div> xsk: add txtime field in xdp_desc struct<br></div><div> REVERTME: net: stmmac: use napi to process TX/RX and use DMA Bus Mode 0<br></div><div> net: stmmac: Add per-packet time-based scheduling for XDP ZC<br></div><div> net: stmmac: restructure Rx & Tx hardware timestamping functions<br></div><div> net: stmmac: introduce AF_XDP ZC RX HW timestamps<br></div><div> REVERTME: net: stmmac: introduce AF_XDP ZC TX HW timestamps<br></div><div><br></div><div>Tan Tee Min (1):<br></div><div> net: stmmac: add fsleep() in HW Rx timestamp checking loop<br></div><div><br></div><div>Tan, Tee Min (5):<br></div><div> net: stmmac: Bugfix on stmmac_interrupt() for WOL<br></div><div> stmmac: intel: set EHL PCH Gbe PTP clock rate to 204.86Mhz<br></div><div> platform/x86: intel_pmc_core: Add SoC register access<br></div><div> net: pcs: xpcs: combine C37 SGMII AN and 2500BASEX for Intel mGbE controller<br></div><div> net: phy: update in-band AN mode when changing interface by PHY driver<br></div><div><br></div><div>Vedang Patel (1):<br></div><div> igc: Add BTF based metadata for XDP<br></div><div><br></div><div>Vinicius Costa Gomes (5):<br></div><div> core: Introduce netdev_tc_map_to_queue_mask()<br></div><div> taprio: Replace tc_map_to_queue_mask()<br></div><div> mqprio: Add support for frame preemption offload<br></div><div> igc: Add support for exposing frame preemption stats registers<br></div><div> igc: Use strict cycles for LaunchTime mode<br></div><div><br></div><div>Voon Weifeng (2):<br></div><div> net: stmmac: support recalculating of CBS idle slope under EST<br></div><div> REVERTME: net: stmmac: Add module param to del/keep est hw conf<br></div><div><br></div><div>Wong Vee Khee (3):<br></div><div> stmmac: intel: Enable 2.5Gbps for Intel AlderLake-S<br></div><div> REVERTME: stmmac: intel: apply PCH MSI arbitration WA only for specific PCH stepping<br></div><div> Revert "net: stmmac: trigger PCS EEE to turn off on link down"<br></div><div><br></div><div>Xiaoliang Yang (1):<br></div><div> net: stmmac: bump tc when get underflow error from DMA descriptor<br></div><div><br></div><div>Yannick Vignon (1):<br></div><div> net: stmmac: optimize locking around PTP clock reads<br></div><div><br></div><div>Zhou Furong (1):<br></div><div> libbpf: Fix bpf_netlink_recv<br></div><div><br></div><div> Documentation/networking/ethtool-netlink.rst | 41 ++<br></div><div> MAINTAINERS | 10 +<br></div><div> drivers/net/Kconfig | 1 +<br></div><div> drivers/net/Makefile | 1 +<br></div><div> drivers/net/dsa/sja1105/sja1105_mdio.c | 2 +-<br></div><div> drivers/net/ethernet/intel/Kconfig | 1 +<br></div><div> drivers/net/ethernet/intel/igc/igc.h | 31 +<br></div><div> drivers/net/ethernet/intel/igc/igc_defines.h | 25 +<br></div><div> drivers/net/ethernet/intel/igc/igc_dump.c | 3 +<br></div><div> drivers/net/ethernet/intel/igc/igc_ethtool.c | 30 +-<br></div><div> drivers/net/ethernet/intel/igc/igc_main.c | 613 +++++++++++++++++-<br></div><div> drivers/net/ethernet/intel/igc/igc_ptp.c | 27 +<br></div><div> drivers/net/ethernet/intel/igc/igc_regs.h | 12 +<br></div><div> drivers/net/ethernet/intel/igc/igc_tsn.c | 49 +-<br></div><div> drivers/net/ethernet/intel/igc/igc_xdp.c | 114 ++++<br></div><div> drivers/net/ethernet/intel/igc/igc_xdp.h | 11 +<br></div><div> drivers/net/ethernet/stmicro/stmmac/Kconfig | 21 +<br></div><div> drivers/net/ethernet/stmicro/stmmac/Makefile | 3 +<br></div><div> drivers/net/ethernet/stmicro/stmmac/common.h | 7 +<br></div><div> drivers/net/ethernet/stmicro/stmmac/dwmac-intel.c | 314 ++++++++-<br></div><div> drivers/net/ethernet/stmicro/stmmac/dwmac-intel.h | 78 +++<br></div><div> .../net/ethernet/stmicro/stmmac/dwmac1000_core.c | 65 +-<br></div><div> .../net/ethernet/stmicro/stmmac/dwmac100_core.c | 25 +-<br></div><div> drivers/net/ethernet/stmicro/stmmac/dwmac4_core.c | 164 ++++-<br></div><div> drivers/net/ethernet/stmicro/stmmac/dwmac4_descs.c | 24 +-<br></div><div> drivers/net/ethernet/stmicro/stmmac/dwmac4_dma.c | 7 +-<br></div><div> drivers/net/ethernet/stmicro/stmmac/dwmac4_dma.h | 1 +<br></div><div> drivers/net/ethernet/stmicro/stmmac/dwmac4_lib.c | 9 -<br></div><div> drivers/net/ethernet/stmicro/stmmac/dwmac5.c | 8 +-<br></div><div> drivers/net/ethernet/stmicro/stmmac/dwmac5.h | 6 +-<br></div><div> .../net/ethernet/stmicro/stmmac/dwxgmac2_core.c | 108 +++-<br></div><div> drivers/net/ethernet/stmicro/stmmac/dwxgmac2_dma.c | 12 -<br></div><div> drivers/net/ethernet/stmicro/stmmac/hwif.h | 56 +-<br></div><div> drivers/net/ethernet/stmicro/stmmac/stmmac.h | 36 +-<br></div><div> .../net/ethernet/stmicro/stmmac/stmmac_ethtool.c | 19 +<br></div><div> .../net/ethernet/stmicro/stmmac/stmmac_hwtstamp.c | 4 +-<br></div><div> drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 677 ++++++++++++++++----<br></div><div> drivers/net/ethernet/stmicro/stmmac/stmmac_mdio.c | 20 +-<br></div><div> .../net/ethernet/stmicro/stmmac/stmmac_netproxy.c | 247 +++++++<br></div><div> .../net/ethernet/stmicro/stmmac/stmmac_netproxy.h | 24 +<br></div><div> drivers/net/ethernet/stmicro/stmmac/stmmac_ptp.c | 27 +-<br></div><div> .../net/ethernet/stmicro/stmmac/stmmac_selftests.c | 12 +-<br></div><div> drivers/net/ethernet/stmicro/stmmac/stmmac_tc.c | 227 ++++++-<br></div><div> drivers/net/networkproxy/Kconfig | 19 +<br></div><div> drivers/net/networkproxy/Makefile | 4 +<br></div><div> drivers/net/networkproxy/network_proxy.c | 707 +++++++++++++++++++++<br></div><div> drivers/net/networkproxy/network_proxy_configfs.c | 309 +++++++++<br></div><div> drivers/net/networkproxy/np_ishtp_client.c | 325 ++++++++++<br></div><div> drivers/net/pcs/pcs-xpcs.c | 87 ++-<br></div><div> drivers/net/phy/dp83867.c | 19 +<br></div><div> drivers/net/phy/marvell10g.c | 39 +-<br></div><div> drivers/net/phy/mxl-gpy.c | 5 +<br></div><div> drivers/net/phy/phy.c | 1 +<br></div><div> drivers/net/phy/phy_device.c | 14 +-<br></div><div> drivers/net/phy/phylink.c | 5 +<br></div><div> drivers/platform/x86/intel/pmc/core.c | 80 ++-<br></div><div> include/linux/btf.h | 9 +<br></div><div> .../pmc/core.h => include/linux/intel_pmc_core.h | 38 +-<br></div><div> include/linux/netdevice.h | 16 +-<br></div><div> include/linux/network_proxy.h | 92 +++<br></div><div> include/linux/network_proxy_common.h | 211 ++++++<br></div><div> include/linux/pcs/pcs-xpcs.h | 4 +-<br></div><div> include/linux/phy.h | 4 +<br></div><div> include/linux/stmmac.h | 14 +<br></div><div> include/uapi/linux/ethtool.h | 21 +-<br></div><div> include/uapi/linux/ethtool_netlink.h | 19 +<br></div><div> include/uapi/linux/if_link.h | 2 +<br></div><div> include/uapi/linux/if_xdp.h | 1 +<br></div><div> include/uapi/linux/pkt_sched.h | 2 +<br></div><div> kernel/bpf/btf.c | 90 +++<br></div><div> net/core/dev.c | 73 +++<br></div><div> net/core/rtnetlink.c | 25 +-<br></div><div> net/ethtool/Makefile | 2 +-<br></div><div> net/ethtool/netlink.c | 19 +<br></div><div> net/ethtool/netlink.h | 4 +<br></div><div> net/ethtool/preempt.c | 157 +++++<br></div><div> net/sched/sch_mqprio.c | 41 +-<br></div><div> net/sched/sch_taprio.c | 33 +-<br></div><div> tools/bpf/bpftool/main.h | 2 +<br></div><div> tools/bpf/bpftool/net.c | 7 +-<br></div><div> tools/bpf/bpftool/netlink_dumper.c | 21 +-<br></div><div> tools/bpf/bpftool/xdp.c | 310 +++++++++<br></div><div> tools/include/uapi/linux/if_link.h | 2 +<br></div><div> tools/lib/bpf/libbpf.h | 1 +<br></div><div> tools/lib/bpf/libbpf.map | 1 +<br></div><div> tools/lib/bpf/netlink.c | 49 ++<br></div><div> 86 files changed, 5615 insertions(+), 441 deletions(-)<br></div><div> create mode 100644 drivers/net/ethernet/stmicro/stmmac/stmmac_netproxy.c<br></div><div> create mode 100644 drivers/net/ethernet/stmicro/stmmac/stmmac_netproxy.h<br></div><div> create mode 100644 drivers/net/networkproxy/Kconfig<br></div><div> create mode 100644 drivers/net/networkproxy/Makefile<br></div><div> create mode 100644 drivers/net/networkproxy/network_proxy.c<br></div><div> create mode 100644 drivers/net/networkproxy/network_proxy_configfs.c<br></div><div> create mode 100644 drivers/net/networkproxy/np_ishtp_client.c<br></div><div> rename drivers/platform/x86/intel/pmc/core.h => include/linux/intel_pmc_core.h (93%)<br></div><div> create mode 100644 include/linux/network_proxy.h<br></div><div> create mode 100644 include/linux/network_proxy_common.h<br></div><div> create mode 100644 net/ethtool/preempt.c<br></div><div> create mode 100644 tools/bpf/bpftool/xdp.c<br></div></blockquote></body></html>