Page MenuHomeFreeBSD

ix: Fix accessing wrong register, improve WoL support recognition ix, ixv: Update link status with autonegotiated baudrate value
AbandonedPublic

Authored by piotr.pietruszewski_intel.com on Dec 7 2018, 1:24 PM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Apr 15, 3:24 AM
Unknown Object (File)
Sun, Apr 14, 4:11 AM
Unknown Object (File)
Mon, Apr 8, 3:38 AM
Unknown Object (File)
Mar 19 2024, 1:20 PM
Unknown Object (File)
Dec 20 2023, 1:00 AM
Unknown Object (File)
Dec 10 2023, 7:58 PM
Unknown Object (File)
Nov 21 2023, 2:59 AM
Unknown Object (File)
Nov 19 2023, 12:50 PM
Subscribers

Details

Summary

Use IXGBE_GRC_BY_MAC(hw) macro instead of IXGBE_GRC as IXGBE_GRC's
address is different on Denverton platform.

Improve WoL support recognition by expanding WoL capability check
to cover not only values reported by NVM, but also device IDs as
adapters older than X540 don't announce WoL support through NVM.

Set Wake-Up Filter Control register to wake up on Link Status change,
Magic Packet, Direct Exact Packet and Directed Multicast Packet by
default.

Add better description of Wake-Up Filter Control (wufc) sysctl.

Use autonegotiated link speed value while updating link status
to iflib.

This patch is extended version of change made in NetBSD kernel
by Masanobu Saitoh, NetBSD maintainer.

Diff Detail

Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 21425
Build 20747: arc lint + arc unit

Event Timeline

sbruno added inline comments.
sys/dev/ixgbe/ixgbe_osdep.c
112

It looks like ixgbe(4) has never used anything other than IF_Gbps(10). Has this been tested against the various speed?

This revision is now accepted and ready to land.Dec 10 2018, 3:49 PM
This revision now requires review to proceed.Dec 11 2018, 2:02 PM
  • Add missing return statement after checking WoL capability to prevent flow from entering wol_capable label reserved for WoL capable devices only.
  • In ixgbe_setup_low_power_mode(), move writing WoL specific registers outside of block executed only for X550EM_X_10G_T.
  • Set Wake-Up Filter Control register to wake up on Link Status change, Magic Packet, Direct Exact Packet and Directed Multicast Packet by default.
  • Change behaviour of Wake-Up Filter Control (wufc) sysctl handler to allow user not only set but also reset desirable bits.
  • Add better description of Wake-Up Filter Control (wufc) sysctl.