int gpu_ipa_dvfs_max_lock(int level) { int clock; struct kbase_device *kbdev = pkbdev; struct exynos_context *platform = (struct exynos_context *)kbdev->platform_context; if (!platform) { GPU_LOG(DVFS_ERROR, "platform context (0x%p) is not initialized within %s\n", platform, __FUNCTION__); return -ENODEV; } platform->target_lock_type = IPA_LOCK; clock=gpu_dvfs_get_clock(level); gpu_dvfs_handler_control(kbdev, GPU_HANDLER_DVFS_MAX_LOCK, clock); return 0; }
int gpu_pmqos_dvfs_min_lock(int level) { #ifdef CONFIG_MALI_DVFS int clock; struct exynos_context *platform = (struct exynos_context *)pkbdev->platform_context; if (!platform) { GPU_LOG(DVFS_ERROR, DUMMY, 0u, 0u, "%s: platform context is not initialized\n", __func__); return -ENODEV; } clock = gpu_dvfs_get_clock(level); if (clock < 0) gpu_dvfs_clock_lock(GPU_DVFS_MIN_UNLOCK, PMQOS_LOCK, 0); else gpu_dvfs_clock_lock(GPU_DVFS_MIN_LOCK, PMQOS_LOCK, clock); #endif /* CONFIG_MALI_DVFS */ return 0; }