Merge "video: driver: add clock residency calculation support"

Этот коммит содержится в:
qctecmdr
2023-01-06 10:25:30 -08:00
коммит произвёл Gerrit - the friendly Code Review server
родитель a0082a4c81 e15f3afabd
Коммит bc0e8274bf
5 изменённых файлов: 281 добавлений и 12 удалений

Просмотреть файл

@@ -439,6 +439,8 @@ int msm_vidc_change_core_sub_state(struct msm_vidc_core *core,
int msm_vidc_core_init(struct msm_vidc_core *core);
int msm_vidc_core_init_wait(struct msm_vidc_core *core);
int msm_vidc_core_deinit(struct msm_vidc_core *core, bool force);
int msm_vidc_print_residency_stats(struct msm_vidc_core *core);
int msm_vidc_reset_residency_stats(struct msm_vidc_core *core);
int msm_vidc_core_deinit_locked(struct msm_vidc_core *core, bool force);
int msm_vidc_inst_timeout(struct msm_vidc_inst *inst);
int msm_vidc_print_buffer_info(struct msm_vidc_inst *inst);

Просмотреть файл

@@ -117,6 +117,13 @@ struct regulator_set {
u32 count;
};
struct clock_residency {
struct list_head list;
u64 rate;
u64 start_time_us;
u64 total_time_us;
};
struct clock_info {
struct clk *clk;
const char *name;
@@ -126,6 +133,7 @@ struct clock_info {
#ifdef CONFIG_MSM_MMRM
struct mmrm_client *mmrm_client;
#endif
struct list_head residency_list; /* list of struct clock_residency */
};
struct clock_set {
@@ -232,6 +240,8 @@ struct msm_vidc_resources_ops {
int (*clk_enable)(struct msm_vidc_core *core, const char *name);
int (*clk_set_flag)(struct msm_vidc_core *core,
const char *name, enum branch_mem_flags flag);
int (*clk_print_residency_stats)(struct msm_vidc_core *core);
int (*clk_reset_residency_stats)(struct msm_vidc_core *core);
};
const struct msm_vidc_resources_ops *get_resources_ops(void);