[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20181203075809.3725-1-idosch@mellanox.com>
Date: Mon, 3 Dec 2018 07:58:57 +0000
From: Ido Schimmel <idosch@...lanox.com>
To: "netdev@...r.kernel.org" <netdev@...r.kernel.org>
CC: "davem@...emloft.net" <davem@...emloft.net>,
Jiri Pirko <jiri@...lanox.com>,
Shalom Toledo <shalomt@...lanox.com>,
"jakub.kicinski@...ronome.com" <jakub.kicinski@...ronome.com>,
"andrew@...n.ch" <andrew@...n.ch>,
"f.fainelli@...il.com" <f.fainelli@...il.com>,
"dsahern@...il.com" <dsahern@...il.com>,
"andy@...yhouse.net" <andy@...yhouse.net>,
Alexander Petrovskiy <alexpe@...lanox.com>,
mlxsw <mlxsw@...lanox.com>, Ido Schimmel <idosch@...lanox.com>
Subject: [PATCH net-next v2 0/3] mlxsw: Add 'fw_load_policy' devlink parameter
Shalom says:
Currently, drivers do not have the ability to control the firmware
loading policy and they always use their own fixed policy. This prevents
drivers from running the device with a different firmware version for
testing and/or debugging purposes. For example, testing a firmware bug
fix.
For these situations, the new devlink generic parameter,
'fw_load_policy', gives the ability to control this option and allows
drivers to run with a different firmware version than required by the
driver.
Patch #1 adds the new parameter to devlink. The other two patches, #2
and #3, add support for this parameter in the mlxsw driver.
Example:
# Query the devlink parameters supported by the device
$ devlink dev param show
pci/0000:03:00.0:
name fw_load_policy type generic
values:
cmode driverinit value driver
# Flash new firmware using ethtool
$ ethtool -f swp1 mellanox/mlxsw_spectrum-13.1703.4.mfa2
# Toggle parameter
$ devlink dev param set pci/0000:03:00.0 name fw_load_policy value flash cmode driverinit
# devlink reset
$ devlink dev reload pci/0000:03:00.0
# Query firmware version to show changes took affect
$ ethtool -i swp1
driver: mlxsw_spectrum
version: 1.0
firmware-version: 13.1703.4
expansion-rom-version:
bus-info: 0000:03:00.0
supports-statistics: yes
supports-test: no
supports-eeprom-access: no
supports-register-dump: no
supports-priv-flags: no
iproute2 patches available here:
https://github.com/tshalom/iproute2-next
v2:
* Change 'fw_version_check' to 'fw_load_policy' with values 'driver' and
'flash' (Jakub)
Shalom Toledo (3):
devlink: Add 'fw_load_policy' generic parameter
mlxsw: core: Reset firmware after flash during driver initialization
mlxsw: spectrum: Load firmware version based on devlink parameter
Documentation/networking/devlink-params.txt | 9 +++
drivers/net/ethernet/mellanox/mlxsw/core.c | 45 ++++++++++++--
drivers/net/ethernet/mellanox/mlxsw/core.h | 2 +
drivers/net/ethernet/mellanox/mlxsw/pci.c | 11 +---
.../net/ethernet/mellanox/mlxsw/spectrum.c | 60 +++++++++++++++++++
include/net/devlink.h | 4 ++
include/uapi/linux/devlink.h | 5 ++
net/core/devlink.c | 5 ++
8 files changed, 127 insertions(+), 14 deletions(-)
--
2.19.1
Powered by blists - more mailing lists