ACK/Cmnt: [SRU][PULL][jammy:linux-gke][v2] Intel IDPF support
Tim Gardner
tim.gardner at canonical.com
Thu Feb 22 14:19:55 UTC 2024
On 2/21/24 8:28 AM, Joseph Salisbury wrote:
>
> BugLink: https://bugs.launchpad.net/bugs/2039720
>
> [Impact]
>
> * Request from Google to include new Intel IDPF driver support
>
> [Fixes]
>
> * All clean cherry picks from jammy:linux-gcp:
> a7355680c7b6 UBUNTU: [Config] gcp: Adding support for IDPF driver
> b4c0df75ac2c u64_stats: Introduce u64_stats_set()
> faaf5b38fd8d virtchnl: add virtchnl version 2 ops
> 5fccd521e1d6 idpf: add SRIOV support and other ndo_ops
> 0001af6c3a66 idpf: add ethtool callbacks
> 489727b5f0fa idpf: add singleq start_xmit and napi poll
> 1bd0c96cc215 idpf: add RX splitq napi poll support
> ed53c3bcf921 idpf: add TX splitq napi poll support
> 6d83d684e2f7 idpf: add splitq start_xmit
> a21d1273c23c idpf: initialize interrupts and enable vport
> 1a49ee57f741 idpf: configure resources for RX queues
> 729cbfb98f5d idpf: configure resources for TX queues
> aa98bd53c405 idpf: add ptypes and MAC filter support
> 8c22112c4087 idpf: add create vport and netdev configuration
> 9aad37e70a94 idpf: add core init and interrupt request
> 8e8fc1ae7834 idpf: add controlq init and reset checks
> 86637c304c36 idpf: add module register and probe functionality
>
>
> [Test Case]
>
> * Compile tested
> * Boot tested
> * Tested internally and by Google using neper (https://github.com/google/neper)
> * Networking is functional and throughput is as expected
>
> [Where things could go wrong]
>
> * Low chance of regression, changes have been upstream since 6.6 kernel
> * Bulk of changes in IDPF driver
> * Other changes to network drivers largely adding #include directives
>
> [Other Info]
>
> * SF #00368902
>
> --------
>
> The following changes since commit fc71047f095553673f0d415e23025316cfe19072:
>
> UBUNTU: Ubuntu-gke-5.15.0-1051.56 (2024-02-14 11:12:11 +1030)
>
> are available in the Git repository at:
>
> https://git.launchpad.net/~jsalisbury/ubuntu/+source/linux-gke/+git/jammy-idpf master-next
>
> for you to fetch changes up to ef30ca44d775bbf00aaf6ad350d41c48cafbc920:
>
> UBUNTU: [Config] gcp: Adding support for IDPF driver (2024-02-20 13:14:11 -0500)
>
> ----------------------------------------------------------------
> Ahmed S. Darwish (1):
> u64_stats: Introduce u64_stats_set()
>
> Alan Brady (4):
> idpf: configure resources for TX queues
> idpf: configure resources for RX queues
> idpf: add RX splitq napi poll support
> idpf: add ethtool callbacks
>
> Joseph Salisbury (1):
> UBUNTU: [Config] gcp: Adding support for IDPF driver
>
> Joshua Hay (5):
> idpf: add controlq init and reset checks
> idpf: add splitq start_xmit
> idpf: add TX splitq napi poll support
> idpf: add singleq start_xmit and napi poll
> idpf: add SRIOV support and other ndo_ops
>
> Pavan Kumar Linga (5):
> idpf: add core init and interrupt request
> idpf: add create vport and netdev configuration
> idpf: add ptypes and MAC filter support
> idpf: initialize interrupts and enable vport
> virtchnl: add virtchnl version 2 ops
>
> Phani Burra (1):
> idpf: add module register and probe functionality
>
> .../networking/device_drivers/ethernet/index.rst | 1 +
> .../device_drivers/ethernet/intel/idpf.rst | 160 +
> debian.gke/config/annotations | 3 +
> drivers/net/ethernet/intel/Kconfig | 12 +
> drivers/net/ethernet/intel/Makefile | 1 +
> drivers/net/ethernet/intel/idpf/Makefile | 18 +
> drivers/net/ethernet/intel/idpf/idpf.h | 968 +++++
> drivers/net/ethernet/intel/idpf/idpf_controlq.c | 621 +++
> drivers/net/ethernet/intel/idpf/idpf_controlq.h | 130 +
> .../net/ethernet/intel/idpf/idpf_controlq_api.h | 169 +
> .../net/ethernet/intel/idpf/idpf_controlq_setup.c | 171 +
> drivers/net/ethernet/intel/idpf/idpf_dev.c | 165 +
> drivers/net/ethernet/intel/idpf/idpf_devids.h | 10 +
> drivers/net/ethernet/intel/idpf/idpf_ethtool.c | 1347 ++++++
> drivers/net/ethernet/intel/idpf/idpf_lan_pf_regs.h | 124 +
> drivers/net/ethernet/intel/idpf/idpf_lan_txrx.h | 293 ++
> drivers/net/ethernet/intel/idpf/idpf_lan_vf_regs.h | 128 +
> drivers/net/ethernet/intel/idpf/idpf_lib.c | 2379 +++++++++++
> drivers/net/ethernet/intel/idpf/idpf_main.c | 279 ++
> drivers/net/ethernet/intel/idpf/idpf_mem.h | 20 +
> .../net/ethernet/intel/idpf/idpf_singleq_txrx.c | 1191 ++++++
> drivers/net/ethernet/intel/idpf/idpf_txrx.c | 4312 ++++++++++++++++++++
> drivers/net/ethernet/intel/idpf/idpf_txrx.h | 1022 +++++
> drivers/net/ethernet/intel/idpf/idpf_vf_dev.c | 163 +
> drivers/net/ethernet/intel/idpf/idpf_virtchnl.c | 3791 +++++++++++++++++
> drivers/net/ethernet/intel/idpf/virtchnl2.h | 1273 ++++++
> .../net/ethernet/intel/idpf/virtchnl2_lan_desc.h | 451 ++
> include/linux/u64_stats_sync.h | 10 +
> 28 files changed, 19212 insertions(+)
> create mode 100644 Documentation/networking/device_drivers/ethernet/intel/idpf.rst
> create mode 100644 drivers/net/ethernet/intel/idpf/Makefile
> create mode 100644 drivers/net/ethernet/intel/idpf/idpf.h
> create mode 100644 drivers/net/ethernet/intel/idpf/idpf_controlq.c
> create mode 100644 drivers/net/ethernet/intel/idpf/idpf_controlq.h
> create mode 100644 drivers/net/ethernet/intel/idpf/idpf_controlq_api.h
> create mode 100644 drivers/net/ethernet/intel/idpf/idpf_controlq_setup.c
> create mode 100644 drivers/net/ethernet/intel/idpf/idpf_dev.c
> create mode 100644 drivers/net/ethernet/intel/idpf/idpf_devids.h
> create mode 100644 drivers/net/ethernet/intel/idpf/idpf_ethtool.c
> create mode 100644 drivers/net/ethernet/intel/idpf/idpf_lan_pf_regs.h
> create mode 100644 drivers/net/ethernet/intel/idpf/idpf_lan_txrx.h
> create mode 100644 drivers/net/ethernet/intel/idpf/idpf_lan_vf_regs.h
> create mode 100644 drivers/net/ethernet/intel/idpf/idpf_lib.c
> create mode 100644 drivers/net/ethernet/intel/idpf/idpf_main.c
> create mode 100644 drivers/net/ethernet/intel/idpf/idpf_mem.h
> create mode 100644 drivers/net/ethernet/intel/idpf/idpf_singleq_txrx.c
> create mode 100644 drivers/net/ethernet/intel/idpf/idpf_txrx.c
> create mode 100644 drivers/net/ethernet/intel/idpf/idpf_txrx.h
> create mode 100644 drivers/net/ethernet/intel/idpf/idpf_vf_dev.c
> create mode 100644 drivers/net/ethernet/intel/idpf/idpf_virtchnl.c
> create mode 100644 drivers/net/ethernet/intel/idpf/virtchnl2.h
> create mode 100644 drivers/net/ethernet/intel/idpf/virtchnl2_lan_desc.h
>
Acked-by: Tim Gardner <tim.gardner at canonical.com>
You made this none too easy to review. Really, cherry picks of cherry
picks ? Next time just cherry pick from the root source so one doesn't
have to follow an excessive chain of provenance.
--
-----------
Tim Gardner
Canonical, Inc
More information about the kernel-team
mailing list