[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20191006063452.7666-1-idosch@idosch.org>
Date: Sun, 6 Oct 2019 09:34:47 +0300
From: Ido Schimmel <idosch@...sch.org>
To: netdev@...r.kernel.org
Cc: davem@...emloft.net, jiri@...lanox.com, vadimp@...lanox.com,
mlxsw@...lanox.com, Ido Schimmel <idosch@...lanox.com>
Subject: [PATCH net-next 0/5] mlxsw: Query number of modules from firmware
From: Ido Schimmel <idosch@...lanox.com>
Vadim says:
The patchset adds support for a new field "num_of_modules" of Management
General Peripheral Information Register (MGPIR), providing the maximum
number of QSFP modules, which can be supported by the system.
It allows to obtain the number of QSFP modules directly from this field,
as a static data, instead of old method of getting this info through
"network port to QSFP module" mapping. With the old method, in case of
port dynamic re-configuration some modules can logically "disappear" as
a result of port split operations, which can cause some modules to
appear missing.
Such scenario can happen on a system equipped with a BMC card, while PCI
chip driver at host CPU side can perform some ports "split" or "unsplit"
operations, while BMC side I2C chip driver reads the "port-to-module"
mapping.
Add common API for FW "minor" and "subminor" versions validation and
share it between PCI and I2C based drivers.
Add FW version validation for "minimal" driver, because use of new field
"num_of_modules" in MGPIR register is not backward compatible.
Vadim Pasternak (5):
mlxsw: reg: Extend MGPIR register with new field exposing the number
of QSFP modules
mlxsw: hwmon: Provide optimization for QSFP modules number detection
mlxsw: thermal: Provide optimization for QSFP modules number detection
mlxsw: core: Push minor/subminor fw version check into helper
mlxsw: minimal: Add validation for FW version
drivers/net/ethernet/mellanox/mlxsw/core.c | 10 +++
drivers/net/ethernet/mellanox/mlxsw/core.h | 5 ++
.../net/ethernet/mellanox/mlxsw/core_hwmon.c | 66 +++++++++----------
.../ethernet/mellanox/mlxsw/core_thermal.c | 40 +++++------
drivers/net/ethernet/mellanox/mlxsw/minimal.c | 30 +++++++++
drivers/net/ethernet/mellanox/mlxsw/reg.h | 10 ++-
.../net/ethernet/mellanox/mlxsw/spectrum.c | 4 +-
7 files changed, 103 insertions(+), 62 deletions(-)
--
2.21.0
Powered by blists - more mailing lists