https://www.intel.com/content/dam/www/public/us/en/documents/specification-updates/i218-i219-ethernet-connection-spec-update.pdf?asset=9561 --- sys/dev/pci/if_em.c | 4 +++- sys/dev/pci/if_em_hw.h | 1 + 2 files changed, 4 insertions(+), 1 deletion(-)
diff --git sys/dev/pci/if_em.c sys/dev/pci/if_em.c index 30df846117c..233849f536b 100644 --- sys/dev/pci/if_em.c +++ sys/dev/pci/if_em.c @@ -2268,7 +2268,9 @@ em_initialize_transmit_unit(struct em_softc *sc) EM_WRITE_REG(&sc->hw, E1000_IOSFPC, reg_val); reg_val = E1000_READ_REG(&sc->hw, TARC0); - reg_val |= E1000_TARC0_CB_MULTIQ_3_REQ; + /* i218-i219 Specification Update 1.5.4.5 */ + reg_val &= ~E1000_TARC0_CB_MULTIQ_3_REQ; + reg_val |= E1000_TARC0_CB_MULTIQ_2_REQ; E1000_WRITE_REG(&sc->hw, TARC0, reg_val); } } diff --git sys/dev/pci/if_em_hw.h sys/dev/pci/if_em_hw.h index 91993a6eb66..9c2cfe97569 100644 --- sys/dev/pci/if_em_hw.h +++ sys/dev/pci/if_em_hw.h @@ -2296,6 +2296,7 @@ struct em_hw { #define E1000_WUS_FLX_FILTERS 0x000F0000 /* Mask for the 4 flexible filters */ /* TRAC0 bits */ +#define E1000_TARC0_CB_MULTIQ_2_REQ (1 << 29) #define E1000_TARC0_CB_MULTIQ_3_REQ (1 << 28 | 1 << 29) /* Management Control */ -- 2.13.0