Commit fc2635bf authored by Jakub Kicinski's avatar Jakub Kicinski
Browse files

Merge branch 'mlxsw-couple-of-fixes'

Ido Schimmel says:

====================
mlxsw: Couple of fixes

Patch #1 fixes firmware flashing when CONFIG_MLXSW_CORE=y and
CONFIG_MLXFW=m.

Patch #2 prevents EMAD transactions from needlessly failing when the
system is under heavy load by using exponential backoff.

Please consider patch #2 for stable.
====================

Link: https://lore.kernel.org/r/20201117173352.288491-1-idosch@idosch.org


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parents 1532b977 1f492eab
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -6,6 +6,7 @@
config MLXSW_CORE
	tristate "Mellanox Technologies Switch ASICs support"
	select NET_DEVLINK
	select MLXFW
	help
	  This driver supports Mellanox Technologies Switch ASICs family.

@@ -82,7 +83,6 @@ config MLXSW_SPECTRUM
	select GENERIC_ALLOCATOR
	select PARMAN
	select OBJAGG
	select MLXFW
	imply PTP_1588_CLOCK
	select NET_PTP_CLASSIFY if PTP_1588_CLOCK
	default m
+2 −1
Original line number Diff line number Diff line
@@ -571,7 +571,8 @@ static void mlxsw_emad_trans_timeout_schedule(struct mlxsw_reg_trans *trans)
	if (trans->core->fw_flash_in_progress)
		timeout = msecs_to_jiffies(MLXSW_EMAD_TIMEOUT_DURING_FW_FLASH_MS);

	queue_delayed_work(trans->core->emad_wq, &trans->timeout_dw, timeout);
	queue_delayed_work(trans->core->emad_wq, &trans->timeout_dw,
			   timeout << trans->retries);
}

static int mlxsw_emad_transmit(struct mlxsw_core *mlxsw_core,