[PATCH v2] Re: Battery class driver.
Shem Multinymous
multinymous at gmail.com
Tue Oct 31 08:28:27 EST 2006
Hi Greg,
On 10/31/06, Greg KH <greg at kroah.com> wrote:
> > On 10/28/06, David Zeuthen <davidz at redhat.com> wrote:
> > >What about just prepending the unit to the 'threshold' file? Then user
> > >space can expect the contents of said file to be of the form "%d %s". I
> > >don't think that violates the "only one value per file" sysfs mantra.
> >
> > The tp_smapi battery driver did just this ("16495 mW"). But I dropped
> > it in a recent version when Pavel pointed out the rest of sysfs, hwmon
> > included, uses undecorated integers.
> > Consistency aside, it seems reasonable and convenient. You have to
> > decree that writes to the attributes (where relevant) don't include
> > the units, of course, so no one will expect the kernel to parse that.
> >
> > There's an issue here if a drunk driver decides to specify (say)
> > capacity_remaining in mWh and capacity_last_full in mAa, which will
> > confuse anyone comparing those attributest. So don't do that.
> >
> > Jean, what's your opinion on letting hwmon-ish attributes specify
> > units as "%d %s" where these are hardware-dependent?
>
> No, the sysfs files should just always keep the same units as
> documented. It's easier all around that way.
It sure is easier, but we're discussinng the case where units change
in runtime; what do we document then? Plug in a different battery and
you get reports in mA and mAh insted of mW and mWh.
The suggestions so far were:
1. Append units string to the content of such attribute:
/sys/.../capacity_remaining reads "16495 mW".
2. Add a seprate *_units attribute saying what are units for other attribute:
/sys/.../capacity_units gives the units for
/sys/.../capacity_{remaining,last_full,design,min,...}.
3. Append the units to the attribute names:
capacity_{remaining,last_full,design_min,...}:mV.
Shem
More information about the Devel
mailing list