MAC Merge support for frame preemption was previously added for igc: https://patchwork.kernel.org/project/netdevbpf/patch/20250318030742.2567080-1-faizal.abdul.ra...@linux.intel.com/
This series builds on that work and adds support for: - Harmonizing taprio and mqprio queue priority behavior, based on past discussions and suggestions: https://lore.kernel.org/all/20250214102206.25dqgut5tbak2rkz@skbuf/ - Enabling preemptible queue support for both taprio and mqprio, with priority harmonization as a prerequisite. It is based on the iwl tree as the baseline for development. Patch organization: - Patches 1–3: Preparation work for patches 6 and 7 - Patches 4–5: Introduce queue priority harmonization - Patches 6–8: Add preemptible queue support The series depends on the following patches, which are currently in the iwl tree and pending integration into netdev/net-next: - igc: Change Tx mode for MQPRIO offloading - igc: Limit netdev_tc calls to MQPRIO Chwee-Lin Choong (1): igc: SW pad preemptible frames for correct mCRC calculation Faizal Rahim (7): igc: move IGC_TXDCTL_QUEUE_ENABLE and IGC_TXDCTL_SWFLUSH igc: add TXDCTL prefix to related macros igc: refactor TXDCTL macros to use FIELD_PREP and GEN_MASK igc: assign highest TX queue number as highest priority in mqprio igc: add private flag to reverse TX queue priority in TSN mode igc: add preemptible queue support in taprio igc: add preemptible queue support in mqprio drivers/net/ethernet/intel/igc/igc.h | 24 +++- drivers/net/ethernet/intel/igc/igc_base.h | 4 - drivers/net/ethernet/intel/igc/igc_defines.h | 1 + drivers/net/ethernet/intel/igc/igc_ethtool.c | 12 +- drivers/net/ethernet/intel/igc/igc_main.c | 50 ++++++-- drivers/net/ethernet/intel/igc/igc_tsn.c | 116 ++++++++++++++++--- drivers/net/ethernet/intel/igc/igc_tsn.h | 5 + 7 files changed, 179 insertions(+), 33 deletions(-) -- 2.34.1