On Mon, 2021-06-07 at 18:23 +0300, 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. [] > diff --git a/include/linux/units.h b/include/linux/units.h [] > @@ -4,6 +4,22 @@ > > #include <linux/math.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 > + > #define MILLIWATT_PER_WATT 1000L > #define MICROWATT_PER_MILLIWATT 1000L > #define MICROWATT_PER_WATT 1000000L Somewhat surprisingly to me, this seems safe. (though I suggest using UL and ULL rather than L and LL) The only use of any of these seems to be: sound/pcmcia/vx/vxp_ops.c: [VX_MICRO] = 0x0c, // MICRO sound/pcmcia/vx/vxp_ops.c: vx_outb(chip, MICRO, level); sound/pcmcia/vx/vxp_ops.c: vx_outb(chip, MICRO, vx_compute_mic_level(chip->mic_level)); and these vx_outb uses are themselves macros that prepend VX_ to the 2nd arg.