18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 28c2ecf20Sopenharmony_ci#ifndef __PERF_SVGHELPER_H 38c2ecf20Sopenharmony_ci#define __PERF_SVGHELPER_H 48c2ecf20Sopenharmony_ci 58c2ecf20Sopenharmony_ci#include <linux/types.h> 68c2ecf20Sopenharmony_ci 78c2ecf20Sopenharmony_cistruct perf_env; 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_civoid open_svg(const char *filename, int cpus, int rows, u64 start, u64 end); 108c2ecf20Sopenharmony_civoid svg_ubox(int Yslot, u64 start, u64 end, double height, const char *type, int fd, int err, int merges); 118c2ecf20Sopenharmony_civoid svg_lbox(int Yslot, u64 start, u64 end, double height, const char *type, int fd, int err, int merges); 128c2ecf20Sopenharmony_civoid svg_fbox(int Yslot, u64 start, u64 end, double height, const char *type, int fd, int err, int merges); 138c2ecf20Sopenharmony_civoid svg_box(int Yslot, u64 start, u64 end, const char *type); 148c2ecf20Sopenharmony_civoid svg_blocked(int Yslot, int cpu, u64 start, u64 end, const char *backtrace); 158c2ecf20Sopenharmony_civoid svg_running(int Yslot, int cpu, u64 start, u64 end, const char *backtrace); 168c2ecf20Sopenharmony_civoid svg_waiting(int Yslot, int cpu, u64 start, u64 end, const char *backtrace); 178c2ecf20Sopenharmony_civoid svg_cpu_box(int cpu, u64 max_frequency, u64 turbo_frequency); 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_civoid svg_process(int cpu, u64 start, u64 end, int pid, const char *name, const char *backtrace); 218c2ecf20Sopenharmony_civoid svg_cstate(int cpu, u64 start, u64 end, int type); 228c2ecf20Sopenharmony_civoid svg_pstate(int cpu, u64 start, u64 end, u64 freq); 238c2ecf20Sopenharmony_ci 248c2ecf20Sopenharmony_ci 258c2ecf20Sopenharmony_civoid svg_time_grid(double min_thickness); 268c2ecf20Sopenharmony_civoid svg_io_legenda(void); 278c2ecf20Sopenharmony_civoid svg_legenda(void); 288c2ecf20Sopenharmony_civoid svg_wakeline(u64 start, int row1, int row2, const char *backtrace); 298c2ecf20Sopenharmony_civoid svg_partial_wakeline(u64 start, int row1, char *desc1, int row2, char *desc2, const char *backtrace); 308c2ecf20Sopenharmony_civoid svg_interrupt(u64 start, int row, const char *backtrace); 318c2ecf20Sopenharmony_civoid svg_text(int Yslot, u64 start, const char *text); 328c2ecf20Sopenharmony_civoid svg_close(void); 338c2ecf20Sopenharmony_ciint svg_build_topology_map(struct perf_env *env); 348c2ecf20Sopenharmony_ci 358c2ecf20Sopenharmony_ciextern int svg_page_width; 368c2ecf20Sopenharmony_ciextern u64 svg_highlight; 378c2ecf20Sopenharmony_ciextern const char *svg_highlight_name; 388c2ecf20Sopenharmony_ci 398c2ecf20Sopenharmony_ci#endif /* __PERF_SVGHELPER_H */ 40