/** ** Exynos5 hardware specific initialization **/ static int kbase_platform_exynos5_init(struct kbase_device *kbdev) { /* gpu context init */ if (gpu_context_init(kbdev) < 0) goto init_fail; #if defined(CONFIG_SOC_EXYNOS7420) || defined(CONFIG_SOC_EXYNOS7890) if(gpu_device_specific_init(kbdev) < 0) goto init_fail; #endif /* gpu control module init */ if (gpu_control_module_init(kbdev) < 0) goto init_fail; /* gpu notifier init */ if (gpu_notifier_init(kbdev) < 0) goto init_fail; #ifdef CONFIG_MALI_DVFS /* gpu utilization moduel init */ gpu_dvfs_utilization_init(kbdev); /* dvfs governor init */ gpu_dvfs_governor_init(kbdev); /* dvfs handler init */ gpu_dvfs_handler_init(kbdev); #endif /* CONFIG_MALI_DVFS */ #ifdef CONFIG_MALI_DEBUG_SYS /* gpu sysfs file init */ if (gpu_create_sysfs_file(kbdev->dev) < 0) goto init_fail; #endif /* CONFIG_MALI_DEBUG_SYS */ return 0; init_fail: kfree(kbdev->platform_context); return -1; }
/** ** Exynos5 hardware specific initialization **/ static mali_bool kbase_platform_exynos5_init(struct kbase_device *kbdev) { /* gpu context init */ if (gpu_context_init(kbdev) < 0) goto init_fail; #ifdef CONFIG_SOC_EXYNOS7420 if (gpu_update_efuse_table(kbdev) < 0) goto init_fail; #endif /* gpu control module init */ if (gpu_control_module_init(kbdev) < 0) goto init_fail; /* gpu utilization moduel init */ gpu_dvfs_utilization_init(kbdev); /* dvfs governor init */ gpu_dvfs_governor_init(kbdev); #ifdef CONFIG_MALI_DVFS /* dvfs handler init */ gpu_dvfs_handler_init(kbdev); #endif /* CONFIG_MALI_DVFS */ /* gpu notifier init */ if (gpu_notifier_init(kbdev) < 0) goto init_fail; #ifdef CONFIG_MALI_DEBUG_SYS /* gpu sysfs file init */ if (gpu_create_sysfs_file(kbdev->dev) < 0) goto init_fail; #endif /* CONFIG_MALI_DEBUG_SYS */ return true; init_fail: kfree(kbdev->platform_context); return false; }