#include "gpu_dvfs_handler.h"
#include "gpu_dvfs_governor.h"
-#ifdef CONFIG_EXYNOS_BTS
-#include <soc/samsung/bts.h>
-#endif
extern struct kbase_device *pkbdev;
#define BS_G3D_PERFORMANCE BS_G3D_PEFORMANCE
#endif
- /* MALI_SEC_INTEGRATION : for EXYNOS_BTS */
if (platform->gpu_bts_support) {
- if (target_clk >= platform->mo_min_clock && !platform->is_set_bts) {
- bts_add_scenario(platform->bts_scen_idx);
- platform->is_set_bts = 1;
- } else if (target_clk < platform->mo_min_clock && platform->is_set_bts) {
- bts_del_scenario(platform->bts_scen_idx);
- platform->is_set_bts = 0;
- }
+ if (target_clk >= platform->mo_min_clock)
+ bts_update_scen(BS_G3D_PERFORMANCE, 1); /* GPU IDQ : 0 (max token) */
+ else
+ bts_update_scen(BS_G3D_PERFORMANCE, 0); /* GPU IDQ : 0x3 (default 12ea) */
}
mutex_unlock(&platform->gpu_clock_lock);
#include <linux/of_platform.h>
-#ifdef CONFIG_EXYNOS_BTS
-#include <soc/samsung/bts.h>
-#endif
struct kbase_device *pkbdev;
static int gpu_debug_level;
#endif
gpu_update_config_data_int(np, "gpu_runtime_pm_delay_time", &platform->runtime_pm_delay_time);
-#ifdef CONFIG_EXYNOS_BTS
gpu_update_config_data_int(np, "gpu_mo_min_clock", &platform->mo_min_clock);
- platform->bts_scen_idx = bts_get_scenindex("g3d_performance");
-#endif
gpu_update_config_data_int(np, "gpu_boost_gpu_min_lock", &platform->boost_gpu_min_lock);
gpu_update_config_data_int(np, "gpu_boost_egl_min_lock", &platform->boost_egl_min_lock);
int gpu_exception_count[GPU_EXCEPTION_LIST_END];
int balance_retry_count[BMAX_RETRY_CNT];
gpu_attribute *attrib;
-#ifdef CONFIG_EXYNOS_BTS
int mo_min_clock;
- unsigned int bts_scen_idx;
- unsigned int is_set_bts; // Check the pair of bts scenario.
-#endif
int *save_cpu_max_freq;
unsigned int g3d_cmu_cal_id;