kernel_samsung_a34x-permissive/drivers/misc/mediatek/dvfsrc/dvfsrc.h
2024-04-28 15:51:13 +02:00

51 lines
911 B
C

/* SPDX-License-Identifier: GPL-2.0 */
/*
* Copyright (c) 2019 MediaTek Inc.
*/
#ifndef __DVFSRC_H
#define __DVFSRC_H
struct mtk_dvfsrc_up;
struct dvfsrc_opp {
u32 vcore_opp;
u32 dram_opp;
u32 vcore_uv;
u32 dram_khz;
};
struct dvfsrc_opp_desc {
int num_vcore_opp;
int num_dram_opp;
int num_opp;
struct dvfsrc_opp *opps;
};
struct dvfsrc_qos_config {
const int *ipi_pin;
int (*qos_dvfsrc_init)(struct mtk_dvfsrc_up *dvfs);
};
struct dvfsrc_up_data {
bool fb_act_enable;
u32 num_opp_desc;
struct dvfsrc_opp_desc *opps_desc;
const struct dvfsrc_qos_config *qos;
void (*setup_opp_table)(struct mtk_dvfsrc_up *dvfsrc);
};
struct mtk_dvfsrc_up {
struct device *dev;
int opp_type;
int fw_type;
struct dvfsrc_opp_desc *opp_desc;
const struct dvfsrc_up_data *dvd;
};
extern const struct dvfsrc_qos_config mt6761_qos_config;
extern const struct dvfsrc_qos_config mt6779_qos_config;
#endif