[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CO1PR11MB50899BF793E9DFD7731E9D5FD66D9@CO1PR11MB5089.namprd11.prod.outlook.com>
Date: Thu, 18 Aug 2022 21:16:40 +0000
From: "Keller, Jacob E" <jacob.e.keller@...el.com>
To: Jiri Pirko <jiri@...nulli.us>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>
CC: "davem@...emloft.net" <davem@...emloft.net>,
"kuba@...nel.org" <kuba@...nel.org>,
"idosch@...dia.com" <idosch@...dia.com>,
"pabeni@...hat.com" <pabeni@...hat.com>,
"edumazet@...gle.com" <edumazet@...gle.com>,
"saeedm@...dia.com" <saeedm@...dia.com>,
"vikas.gupta@...adcom.com" <vikas.gupta@...adcom.com>,
"gospo@...adcom.com" <gospo@...adcom.com>
Subject: RE: [patch net-next 0/4] net: devlink: sync flash and dev info
commands
> -----Original Message-----
> From: Jiri Pirko <jiri@...nulli.us>
> Sent: Thursday, August 18, 2022 6:01 AM
> To: netdev@...r.kernel.org
> Cc: davem@...emloft.net; kuba@...nel.org; idosch@...dia.com;
> pabeni@...hat.com; edumazet@...gle.com; saeedm@...dia.com; Keller, Jacob
> E <jacob.e.keller@...el.com>; vikas.gupta@...adcom.com;
> gospo@...adcom.com
> Subject: [patch net-next 0/4] net: devlink: sync flash and dev info commands
>
> From: Jiri Pirko <jiri@...dia.com>
>
> Purpose of this patchset is to introduce consistency between two devlink
> commands:
> devlink dev info
> Shows versions of running default flash target and components.
> devlink dev flash
> Flashes default flash target or component name (if specified
> on cmdline).
>
> Currently it is up to the driver what versions to expose and what flash
> update component names to accept. This is inconsistent. Thankfully, only
> netdevsim is currently using components, so it is a good time
> to sanitize this.
>
> This patchset makes sure, that devlink.c calls into driver for
> component flash update only in case the driver exposes the same version
> name.
Makes sense.
>
> Also there are two flags exposed to the use over netlink for versions:
>
> 1) if driver considers the version represents flashable component,
> DEVLINK_ATTR_INFO_VERSION_IS_COMPONENT is set.
> This provides a list of component names for the user.
>
> 2) if driver considers the version represents default flash target (w/o
> component name specified)
> DEVLINK_ATTR_INFO_VERSION_IS_FLASH_UPDATE_DEFAULT is set.
> This tells the user which version is going to be affected by flash
> command when no component name is passed.
>
This is great. I've been meaning to get around to adding single component update to the ice driver, so this would be a good time to do so along with implementing support for this.
> Example:
> $ devlink dev info
> netdevsim/netdevsim10:
> driver netdevsim
> versions:
> running:
> fw.mgmt 10.20.30
> fw 11.22.33
> flash_components:
> fw.mgmt
> flash_update_default fw
> $ devlink dev flash netdevsim/netdevsim10 file somefile.bin
> [fw.mgmt] Preparing to flash
> [fw.mgmt] Flashing 100%
> [fw.mgmt] Flash select
> [fw.mgmt] Flashing done
> $ devlink dev flash netdevsim/netdevsim10 file somefile.bin component fw.mgmt
> [fw.mgmt] Preparing to flash
> [fw.mgmt] Flashing 100%
> [fw.mgmt] Flash select
> [fw.mgmt] Flashing done
> $ devlink dev flash netdevsim/netdevsim10 file somefile.bin component dummy
> Error: selected component is not supported by this device.
>
> Jiri Pirko (4):
> net: devlink: extend info_get() version put to indicate a flash
> component
> net: devlink: expose the info about version representing a component
> netdevsim: expose version of default flash target
> net: devlink: expose default flash update target
>
> drivers/net/netdevsim/dev.c | 17 +++-
> include/net/devlink.h | 18 ++++-
> include/uapi/linux/devlink.h | 3 +
> net/core/devlink.c | 145 ++++++++++++++++++++++++++++++-----
> 4 files changed, 157 insertions(+), 26 deletions(-)
>
> --
> 2.37.1
Powered by blists - more mailing lists