Re: [PATCH net-next 00/11] mlxsw: extend line card model by devices and info

Jiri Pirko
2022-05-25T06:21:05Z

Tue, May 24, 2022 at 08:00:57PM CEST, kuba@kernel.org wrote:
>On Tue, 24 May 2022 16:31:45 +0200 Jiri Pirko wrote:
>> >Sure. I considered that. The thing is, even if you put the lc component
>> >names to output of "devlink dev info", you would need to provide lc
>> >objects as well (somehow) - to contain the versions.
>> >
>> >But the component name is related to lc object listed in "devlink lc",
>> >so "devlink lc info" sounds line the correct place to put it.
>> >
>> >If you are concern about "devlink dev flash" using component name from
>> >"devlink lc info", I would rather introduce "devlink lc flash" so you
>> >have a match. But from what I see, I don't really see the necessity for
>> >this match. Do you?
>>
>> Okay, we can eventually avoid using component name at all for now,
>> considering one flash object per linecard (with possibility to extend by
>> component later on). This would look like:
>>
>> $ devlink lc info pci/0000:01:00.0 lc 8
>> pci/0000:01:00.0:
>> lc 8
>> versions:
>> fixed:
>> hw.revision 0
>> fw.psid MT_0000000749
>> running:
>> ini.version 4
>> fw 19.2010.1310
>>
>> $ devlink lc flash pci/0000:01:00.0 lc 8 file mellanox/fw-AGB-rel-19_2010_1312-022-EVB.mfa2
>>
>> I have to admit I like this.
>> We would reuse the existing DEVLINK_CMD_FLASH_UPDATE cmd and when
>> DEVLINK_ATTR_LINECARD_INDEX attribute is present, we call the lc-flash
>> op. How does this sound?
>
>We talked about this earlier in the thread, I think. If you need both
>info and flash per LC just make them a separate devlink instance and
>let them have all the objects they need. Then just put the instance
>name under lc info.

I don't follow :/ What do you mean be "separate devlink instance" here?
Could you draw me an example?