diff options
| author | Jonathan Santos <Jonathan.Santos@analog.com> | 2026-01-14 12:27:03 +0300 |
|---|---|---|
| committer | Jonathan Cameron <Jonathan.Cameron@huawei.com> | 2026-01-22 23:53:18 +0300 |
| commit | 404a3b4c36f2e1987ff28d1d61d309292d2e33cb (patch) | |
| tree | 66f9d626bf5daa93a9a5494fa6aed8984460dfc1 /include/linux | |
| parent | fa087f5babbc24db76d5b24073216fa2d7d7b57d (diff) | |
| download | linux-404a3b4c36f2e1987ff28d1d61d309292d2e33cb.tar.xz | |
units: add conversion macros for percentage related units
Add macros to convert between ratio and percentage related units,
including percent (1/100), permille (1/1,000), permyriad (1/10,000,
also equivalent to one Basis point) and per cent mille (1/100,000).
Those are Used for precise fractional calculations in engineering,
finance, and measurement applications.
Signed-off-by: Jonathan Santos <Jonathan.Santos@analog.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@intel.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/units.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/include/linux/units.h b/include/linux/units.h index 00e15de33eca..3471c5a38dcf 100644 --- a/include/linux/units.h +++ b/include/linux/units.h @@ -21,6 +21,25 @@ #define PICO 1000000000000ULL #define FEMTO 1000000000000000ULL +/* + * Percentage and related scaling units + * + * These macros define scaling factors used to convert between ratio and + * percentage-based representations with different decimal resolutions. + * They are used for precise fractional calculations in engineering, finance, + * and measurement applications. + * + * Examples: + * 1% = 0.01 = 1 / PERCENT + * 0.1% = 0.001 = 1 / PERMILLE + * 0.01% = 0.0001 = 1 / PERMYRIAD (1 basis point) + * 0.001% = 0.00001 = 1 / PERCENTMILLE + */ +#define PERCENT 100 +#define PERMILLE 1000 +#define PERMYRIAD 10000 +#define PERCENTMILLE 100000 + #define NANOHZ_PER_HZ 1000000000UL #define MICROHZ_PER_HZ 1000000UL #define MILLIHZ_PER_HZ 1000UL |
