1b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */ 258db1d6eSArnaldo Carvalho de Melo #ifndef PERF_UNIT_H 358db1d6eSArnaldo Carvalho de Melo #define PERF_UNIT_H 458db1d6eSArnaldo Carvalho de Melo 558db1d6eSArnaldo Carvalho de Melo #include <stddef.h> 658db1d6eSArnaldo Carvalho de Melo #include <linux/types.h> 758db1d6eSArnaldo Carvalho de Melo 83caeafceSArnaldo Carvalho de Melo struct parse_tag { 93caeafceSArnaldo Carvalho de Melo char tag; 103caeafceSArnaldo Carvalho de Melo int mult; 113caeafceSArnaldo Carvalho de Melo }; 123caeafceSArnaldo Carvalho de Melo 133caeafceSArnaldo Carvalho de Melo unsigned long parse_tag_value(const char *str, struct parse_tag *tags); 143caeafceSArnaldo Carvalho de Melo 15*6859bc0eSChangbin Du double convert_unit_double(double value, char *unit); 1658db1d6eSArnaldo Carvalho de Melo unsigned long convert_unit(unsigned long value, char *unit); 1758db1d6eSArnaldo Carvalho de Melo int unit_number__scnprintf(char *buf, size_t size, u64 n); 1858db1d6eSArnaldo Carvalho de Melo 1958db1d6eSArnaldo Carvalho de Melo #endif /* PERF_UNIT_H */ 20