cxgb4: fix sleep in atomic when flashing PHY firmware
authorRahul Lakkireddy <rahul.lakkireddy@chelsio.com>
Fri, 11 Jun 2021 06:47:46 +0000 (12:17 +0530)
committerDavid S. Miller <davem@davemloft.net>
Fri, 11 Jun 2021 18:15:00 +0000 (11:15 -0700)
commitf046bd0ae15d8a0bbe57d4647da182420f720c3d
treebb061e3c1ec6ed2276ac5d2e377bbca39e89b6b2
parent42a2039753a7f758ba5c85cb199fcf10dc2111eb
cxgb4: fix sleep in atomic when flashing PHY firmware

Before writing new PHY firmware to on-chip memory, driver queries
firmware for current running PHY firmware version, which can result
in sleep waiting for reply. So, move spinlock closer to the actual
on-chip memory write operation, instead of taking it at the callers.

Fixes: 5fff701c838e ("cxgb4: always sync access when flashing PHY firmware")
Signed-off-by: Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/chelsio/cxgb4/cxgb4_ethtool.c
drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c
drivers/net/ethernet/chelsio/cxgb4/t4_hw.c