forked from luck/tmp_suning_uos_patched
e1000e: Check the PCIm state
[ Upstream commit 2e7256f12cdb16eaa2515b6231d665044a07c51a ] Complete to commitdef4ec6dce
("e1000e: PCIm function state support") Check the PCIm state only on CSME systems. There is no point to do this check on non CSME systems. This patch fixes a generation a false-positive warning: "Error in exiting dmoff" Fixes:def4ec6dce
("e1000e: PCIm function state support") Signed-off-by: Sasha Neftin <sasha.neftin@intel.com> Tested-by: Dvora Fuxbrumer <dvorax.fuxbrumer@linux.intel.com> Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
cebff3d9f7
commit
393d48b3de
|
@ -5222,18 +5222,20 @@ static void e1000_watchdog_task(struct work_struct *work)
|
|||
pm_runtime_resume(netdev->dev.parent);
|
||||
|
||||
/* Checking if MAC is in DMoff state*/
|
||||
pcim_state = er32(STATUS);
|
||||
while (pcim_state & E1000_STATUS_PCIM_STATE) {
|
||||
if (tries++ == dmoff_exit_timeout) {
|
||||
e_dbg("Error in exiting dmoff\n");
|
||||
break;
|
||||
}
|
||||
usleep_range(10000, 20000);
|
||||
if (er32(FWSM) & E1000_ICH_FWSM_FW_VALID) {
|
||||
pcim_state = er32(STATUS);
|
||||
while (pcim_state & E1000_STATUS_PCIM_STATE) {
|
||||
if (tries++ == dmoff_exit_timeout) {
|
||||
e_dbg("Error in exiting dmoff\n");
|
||||
break;
|
||||
}
|
||||
usleep_range(10000, 20000);
|
||||
pcim_state = er32(STATUS);
|
||||
|
||||
/* Checking if MAC exited DMoff state */
|
||||
if (!(pcim_state & E1000_STATUS_PCIM_STATE))
|
||||
e1000_phy_hw_reset(&adapter->hw);
|
||||
/* Checking if MAC exited DMoff state */
|
||||
if (!(pcim_state & E1000_STATUS_PCIM_STATE))
|
||||
e1000_phy_hw_reset(&adapter->hw);
|
||||
}
|
||||
}
|
||||
|
||||
/* update snapshot of PHY registers on LSC */
|
||||
|
|
Loading…
Reference in New Issue
Block a user