[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20200819002821.2657515-6-jacob.e.keller@intel.com>
Date: Tue, 18 Aug 2020 17:28:19 -0700
From: Jacob Keller <jacob.e.keller@...el.com>
To: netdev@...r.kernel.org
Cc: Jacob Keller <jacob.e.keller@...el.com>
Subject: [iproute2-next v3 0/2] devlink flash update overwrite mask
This series introduces support for the new attribute to devlink flash
update, DEVLINK_ATTR_FLASH_UPDATE_OVERWRITE_MASK.
This attribute is a bitfield which allows userspace to specify what set of
subfields to overwrite when performing a flash update for a device.
The intention is to support the ability to control the behavior of
overwriting the configuration and identifying fields in the Intel ice device
flash update process. This is necessary as the firmware layout for the ice
device includes some settings and configuration within the same flash
section as the main firmware binary.
This series, and the accompanying kernel series, introduce support for the
attribute. Once applied, the overwrite support can be be invoked via
devlink:
# overwrite settings
devlink dev flash pci/0000:af:00.0 file firmware.bin overwrite settings
# overwrite identifiers and settings
devlink dev flash pci/0000:af:00.0 file firmware.bin overwrite settings overwrite identifiers
The overwrite mask is determined by combining all of the "overwrite
<section>" arguments into a bitmask by doing bitwise OR. The "selector" for
the nla_bitfield32 will always be specified as the
DEVLINK_SUPPORTED_FLASH_OVERWRITE_SECTIONS provided in our copy of the uapi
header.
Changes since v2:
* remove the use of GENMASK from the userspace API header.
* separate iproute2 and net-next patches to avoid confusion.
* convert to using an nla_bitfield32 using the mnl_attr_push().
Jacob Keller (2):
Update devlink header for overwrite mask attribute
devlink: support setting the overwrite mask
devlink/devlink.c | 48 ++++++++++++++++++++++++++++++++++--
include/uapi/linux/devlink.h | 24 ++++++++++++++++++
2 files changed, 70 insertions(+), 2 deletions(-)
base-commit: e8e8f16ed155dfbe026ad3c22458d1277e17794e
--
2.28.0.218.ge27853923b9d.dirty
Powered by blists - more mailing lists