Re: [PATCH v2 3/3] can: etas_es58x: report the firmware version through ethtool

From: Alan Stern
Date: Sat Nov 05 2022 - 20:45:17 EST


On Sat, Nov 05, 2022 at 06:38:35PM +0100, Greg Kroah-Hartman wrote:
> On Sun, Nov 06, 2022 at 02:21:11AM +0900, Vincent MAILHOL wrote:
> > On Sat. 5 Nov. 2022 at 18:27, Vincent MAILHOL
> > <mailhol.vincent@xxxxxxxxxx> wrote:
> > > On Sat. 5 Nov. 2022 at 17:36, Greg Kroah-Hartman
> > > <gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
> It's late right now, and I can't remember the whole USB spec, but I
> think the device provides a list of the string ids that are valid for
> it. If so, we can add that to sysfs for any USB device out there, no
> matter the string descriptor number.

No, there is no such list.

> If not, maybe we can just iterate the 255 values and populate sysfs
> files if they are present? I'll dig up the USB spec tomorrow...

Yes, we could do that. But the filename would have to be the string
id, which is not meaningful. We wouldn't be able to have labels like
"product-info" unless somehow a driver could provide the label.

Also, there's the matter of language. Devices can have string
descriptors in multiple languages; which one should we show in sysfs?
All of them? Right now we use just the default language for the strings
that we put in sysfs.

> I say do this at the USB core level, that way it works for any USB
> device, and you don't have a device-specific sysfs file and custom
> userspace code just for this.

This is unavoidable to some extent. Without device-specific information
or userspace code, there is no way to know which string descriptor
contains the data you want.

Alan Stern

> Sound reasonable?
>
> greg k-h