Dirk says: This series adds configuration capabilities to the firmware loading policy of the NFP driver.
NFP firmware loading is controlled via three HWinfo keys which can be set per device: 'abi_drv_reset', 'abi_drv_load_ifc' and 'app_fw_from_flash'. Refer to patch #11 for more detail on how these control the firmware loading. In order to configure the full extend of FW loading policy, a new devlink parameter has been introduced, 'reset_dev_on_drv_probe', which controls if the driver should reset the device when it's probed. This, in conjunction with the existing 'fw_load_policy' (extended to include a 'disk' option) provides the means to tweak the NFP HWinfo keys as required by users. Patches 1 and 2 adds the devlink modifications and patches 3 through 9 adds the support into the NFP driver. Furthermore, the last 2 patches are documentation only. v2: Renamed all 'reset_dev_on_drv_probe' defines the same as the devlink parameter name (Jiri) Dirk van der Merwe (11): devlink: extend 'fw_load_policy' values devlink: add 'reset_dev_on_drv_probe' param nfp: nsp: add support for fw_loaded command nfp: nsp: add support for optional hwinfo lookup nfp: nsp: add support for hwinfo set operation nfp: honor FW reset and loading policies nfp: add devlink param infrastructure nfp: devlink: add 'fw_load_policy' support nfp: devlink: add 'reset_dev_on_drv_probe' support kdoc: fix nfp_fw_load documentation Documentation: nfp: add nfp driver specific notes .../networking/device_drivers/netronome/nfp.rst | 133 +++++++++++ Documentation/networking/devlink-params-nfp.txt | 5 + Documentation/networking/devlink-params.txt | 16 ++ drivers/net/ethernet/netronome/nfp/Makefile | 1 + drivers/net/ethernet/netronome/nfp/devlink_param.c | 254 +++++++++++++++++++++ drivers/net/ethernet/netronome/nfp/nfp_main.c | 142 +++++++++--- drivers/net/ethernet/netronome/nfp/nfp_main.h | 5 + drivers/net/ethernet/netronome/nfp/nfp_net_main.c | 7 + .../net/ethernet/netronome/nfp/nfpcore/nfp_nsp.c | 77 ++++++- .../net/ethernet/netronome/nfp/nfpcore/nfp_nsp.h | 29 +++ include/net/devlink.h | 5 + include/uapi/linux/devlink.h | 8 + net/core/devlink.c | 5 + 13 files changed, 657 insertions(+), 30 deletions(-) create mode 100644 Documentation/networking/device_drivers/netronome/nfp.rst create mode 100644 Documentation/networking/devlink-params-nfp.txt create mode 100644 drivers/net/ethernet/netronome/nfp/devlink_param.c -- 2.11.0