i40e: Store the requested FEC information
authorMariusz Stachura <mariusz.stachura@intel.com>
Wed, 12 Jul 2017 09:46:08 +0000 (05:46 -0400)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Sun, 27 Aug 2017 22:43:34 +0000 (15:43 -0700)
Store information about FEC modes, that were requested. It will be used
in printing link status information function and this way there is no
need to call admin queue there.

Signed-off-by: Mariusz Stachura <mariusz.stachura@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/i40e/i40e_common.c
drivers/net/ethernet/intel/i40e/i40e_type.h
drivers/net/ethernet/intel/i40evf/i40e_type.h

index 8e082a946411043d9a67e816009ecc951cbda910..5c36a18a31be9a0382184945ed4cbf123bea04d0 100644 (file)
@@ -2529,6 +2529,10 @@ i40e_status i40e_update_link_info(struct i40e_hw *hw)
                if (status)
                        return status;
 
+               hw->phy.link_info.req_fec_info =
+                       abilities.fec_cfg_curr_mod_ext_info &
+                       (I40E_AQ_REQUEST_FEC_KR | I40E_AQ_REQUEST_FEC_RS);
+
                memcpy(hw->phy.link_info.module_type, &abilities.module_type,
                       sizeof(hw->phy.link_info.module_type));
        }
index 3a18ed13edc4283ee3da71b47aa5f4757bc360b2..fd4bbdd88b575dfc99fac2782c15f6354f90a42a 100644 (file)
@@ -185,6 +185,7 @@ struct i40e_link_status {
        enum i40e_aq_link_speed link_speed;
        u8 link_info;
        u8 an_info;
+       u8 req_fec_info;
        u8 fec_info;
        u8 ext_info;
        u8 loopback;
index bde7f24af1c6f3a01af9773f5e721819bd49eb1d..2ea919d9cdcf0d159fb9f4abd56489df67d61c70 100644 (file)
@@ -159,6 +159,7 @@ struct i40e_link_status {
        enum i40e_aq_link_speed link_speed;
        u8 link_info;
        u8 an_info;
+       u8 req_fec_info;
        u8 fec_info;
        u8 ext_info;
        u8 loopback;