summaryrefslogtreecommitdiff
path: root/usr/src
diff options
context:
space:
mode:
authorRyan Zezeski <rpz@joyent.com>2019-02-16 11:28:23 -0700
committerRyan Zezeski <rpz@joyent.com>2019-03-06 13:54:44 -0700
commitb4bede175d4c50ac1b36078a677b69388f6fb59f (patch)
tree7b5a6063f8c92946b27abf0a91dc373563df92f9 /usr/src
parent8bdc9fe91da35790f4238cf0837e4e44933a6eeb (diff)
downloadillumos-joyent-b4bede175d4c50ac1b36078a677b69388f6fb59f.tar.gz
OS-7577 initialize FC for i40e
Reviewed by: Robert Mustacchi <rm@joyent.com> Approved by: Rob Johnston <rob.johnston@joyent.com>
Diffstat (limited to 'usr/src')
-rw-r--r--usr/src/uts/common/io/i40e/i40e_main.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/usr/src/uts/common/io/i40e/i40e_main.c b/usr/src/uts/common/io/i40e/i40e_main.c
index c1c70ffcdc..0623aee513 100644
--- a/usr/src/uts/common/io/i40e/i40e_main.c
+++ b/usr/src/uts/common/io/i40e/i40e_main.c
@@ -2454,6 +2454,7 @@ i40e_chip_start(i40e_t *i40e)
i40e_hw_t *hw = &i40e->i40e_hw_space;
struct i40e_filter_control_settings filter;
int rc;
+ uint8_t err;
if (((hw->aq.fw_maj_ver == 4) && (hw->aq.fw_min_ver < 33)) ||
(hw->aq.fw_maj_ver < 4)) {
@@ -2469,6 +2470,15 @@ i40e_chip_start(i40e_t *i40e)
/* Determine hardware state */
i40e_get_hw_state(i40e, hw);
+ /* For now, we always disable Ethernet Flow Control. */
+ hw->fc.requested_mode = I40E_FC_NONE;
+ rc = i40e_set_fc(hw, &err, B_TRUE);
+ if (rc != I40E_SUCCESS) {
+ i40e_error(i40e, "Setting flow control failed, returned %d"
+ " with error: 0x%x", rc, err);
+ return (B_FALSE);
+ }
+
/* Initialize mac addresses. */
i40e_init_macaddrs(i40e, hw);