Re: [PATCH resend v1 1/3] units: Add SI metric prefix definitions

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Jun 07, 2021 at 05:24:44PM +0300, Andy Shevchenko wrote:
> On Mon, Jun 07, 2021 at 03:33:31PM +0300, Jarkko Nikula wrote:
> > On 6/3/21 7:04 PM, Andy Shevchenko wrote:
> > > Sometimes it's useful to have well-defined SI metric prefix to be used
> > > to self-describe the formulas or equations.
> > > 
> > > List most popular ones in the units.h.
> 
> ...
> 
> > > +/* Metric prefixes in accordance with Système international (d'unités) */
> > > +#define PETA	1000000000000000LL
> > > +#define TERA	1000000000000LL
> > > +#define GIGA	1000000000L
> > > +#define MEGA	1000000L
> > > +#define KILO	1000L
> > > +#define HECTO	100L
> > > +#define DECA	10L
> > > +#define DECI	10L
> > > +#define CENTI	100L
> > > +#define MILLI	1000L
> > > +#define MICRO	1000000L
> > > +#define NANO	1000000000L
> > > +#define PICO	1000000000000LL
> > > +#define FEMTO	1000000000000000LL
> > 
> > For me milli is always 1/1000.
> 
> For me as well. Kernel does not operate with float point numbers.
> That's why it's ordered like this.
> 
> > Might lead to confusion with these defines if
> > idea is to multiply with KILO but divide with MILLI?
> 
> If the author of the hypothetical driver doesn't understand this, maybe
> they can ask first, but I am an optimist here and I assume that whoever
> writes the driver for a sensor / etc has a minimum education to see
> what's needed for the certain case.

Writing this, I think that I'm not so educated :-)

What we have in I²C case is kHz * ns = 10^3 * 10^-9, so we need to divide by
10^-6 to normalize the numbers. Sounds like MICRO is the correct thing to use
there.

-- 
With Best Regards,
Andy Shevchenko





[Index of Archives]     [Linux GPIO]     [Linux SPI]     [Linux Hardward Monitoring]     [LM Sensors]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux