> -----Original Message----- > From: Intel-wired-lan <[email protected]> On Behalf Of > Jedrzej Jagielski > Sent: Friday, February 21, 2025 5:21 PM > To: [email protected] > Cc: Nguyen, Anthony L <[email protected]>; > [email protected]; [email protected]; [email protected]; Jagielski, Jedrzej > <[email protected]>; Keller, Jacob E <[email protected]>; > Mrozowicz, SlawomirX <[email protected]>; Kwapulinski, Piotr > <[email protected]>; Wegrzyn, Stefan <[email protected]> > Subject: [Intel-wired-lan] [PATCH iwl-next v5 11/15] ixgbe: add device flash > update via devlink > > Use the pldmfw library to implement device flash update for the Intel ixgbe > networking device driver specifically for E610 devices. > This support uses the devlink flash update interface. > > Using the pldmfw library, the provided firmware file will be scanned for the > three major components, "fw.undi" for the Option ROM, "fw.mgmt" for the > main NVM module containing the primary device firmware, and "fw.netlist" > containing the netlist module. > > The flash is separated into two banks, the active bank containing the running > firmware, and the inactive bank which we use for update. Each module is > updated in a staged process. First, the inactive bank is erased, preparing the > device for update. Second, the contents of the component are copied to the > inactive portion of the flash. After all components are updated, the driver > signals the device to switch the active bank during the next EMP reset. > > With this implementation, basic flash update for the E610 hardware is > supported. > > Reviewed-by: Jacob Keller <[email protected]> > Co-developed-by: Slawomir Mrozowicz <[email protected]> > Signed-off-by: Slawomir Mrozowicz <[email protected]> > Co-developed-by: Piotr Kwapulinski <[email protected]> > Signed-off-by: Piotr Kwapulinski <[email protected]> > Co-developed-by: Stefan Wegrzyn <[email protected]> > Signed-off-by: Stefan Wegrzyn <[email protected]> > Signed-off-by: Jedrzej Jagielski <[email protected]> > --- > v5: fix caps->nvm_unified_update assignment > --- > Documentation/networking/devlink/ixgbe.rst | 24 + > drivers/net/ethernet/intel/Kconfig | 1 + > drivers/net/ethernet/intel/ixgbe/Makefile | 2 +- > .../ethernet/intel/ixgbe/devlink/devlink.c | 4 + > drivers/net/ethernet/intel/ixgbe/ixgbe_e610.c | 210 ++++++ > drivers/net/ethernet/intel/ixgbe/ixgbe_e610.h | 11 + > .../ethernet/intel/ixgbe/ixgbe_fw_update.c | 668 ++++++++++++++++++ > .../ethernet/intel/ixgbe/ixgbe_fw_update.h | 12 + > .../ethernet/intel/ixgbe/ixgbe_type_e610.h | 64 ++ > 9 files changed, 995 insertions(+), 1 deletion(-) create mode 100644 >
Tested-by: Bharath R <[email protected]>
