mirror of
				https://git.tardis.systems/mirrors/yuzu
				synced 2025-10-31 18:54:14 +01:00 
			
		
		
		
	Merge pull request #10864 from t895/disable-mali-driver
android: Don't show custom driver button on mali and x86
This commit is contained in:
		
						commit
						eea2145698
					
				| @ -68,79 +68,109 @@ class HomeSettingsFragment : Fragment() { | ||||
|     override fun onViewCreated(view: View, savedInstanceState: Bundle?) { | ||||
|         mainActivity = requireActivity() as MainActivity | ||||
| 
 | ||||
|         val optionsList: MutableList<HomeSetting> = mutableListOf( | ||||
|             HomeSetting( | ||||
|                 R.string.advanced_settings, | ||||
|                 R.string.settings_description, | ||||
|                 R.drawable.ic_settings | ||||
|             ) { SettingsActivity.launch(requireContext(), SettingsFile.FILE_NAME_CONFIG, "") }, | ||||
|             HomeSetting( | ||||
|                 R.string.open_user_folder, | ||||
|                 R.string.open_user_folder_description, | ||||
|                 R.drawable.ic_folder_open | ||||
|             ) { openFileManager() }, | ||||
|             HomeSetting( | ||||
|                 R.string.preferences_theme, | ||||
|                 R.string.theme_and_color_description, | ||||
|                 R.drawable.ic_palette | ||||
|             ) { SettingsActivity.launch(requireContext(), Settings.SECTION_THEME, "") }, | ||||
|             HomeSetting( | ||||
|                 R.string.install_gpu_driver, | ||||
|                 R.string.install_gpu_driver_description, | ||||
|                 R.drawable.ic_exit | ||||
|             ) { driverInstaller() }, | ||||
|             HomeSetting( | ||||
|                 R.string.install_amiibo_keys, | ||||
|                 R.string.install_amiibo_keys_description, | ||||
|                 R.drawable.ic_nfc | ||||
|             ) { mainActivity.getAmiiboKey.launch(arrayOf("*/*")) }, | ||||
|             HomeSetting( | ||||
|                 R.string.install_game_content, | ||||
|                 R.string.install_game_content_description, | ||||
|                 R.drawable.ic_system_update_alt | ||||
|             ) { mainActivity.installGameUpdate.launch(arrayOf("*/*")) }, | ||||
|             HomeSetting( | ||||
|                 R.string.select_games_folder, | ||||
|                 R.string.select_games_folder_description, | ||||
|                 R.drawable.ic_add | ||||
|             ) { | ||||
|                 mainActivity.getGamesDirectory.launch(Intent(Intent.ACTION_OPEN_DOCUMENT_TREE).data) | ||||
|             }, | ||||
|             HomeSetting( | ||||
|                 R.string.manage_save_data, | ||||
|                 R.string.import_export_saves_description, | ||||
|                 R.drawable.ic_save | ||||
|             ) { | ||||
|                 ImportExportSavesFragment().show( | ||||
|                     parentFragmentManager, | ||||
|                     ImportExportSavesFragment.TAG | ||||
|         val optionsList: MutableList<HomeSetting> = mutableListOf<HomeSetting>().apply { | ||||
|             add( | ||||
|                 HomeSetting( | ||||
|                     R.string.advanced_settings, | ||||
|                     R.string.settings_description, | ||||
|                     R.drawable.ic_settings | ||||
|                 ) { SettingsActivity.launch(requireContext(), SettingsFile.FILE_NAME_CONFIG, "") } | ||||
|             ) | ||||
|             add( | ||||
|                 HomeSetting( | ||||
|                     R.string.open_user_folder, | ||||
|                     R.string.open_user_folder_description, | ||||
|                     R.drawable.ic_folder_open | ||||
|                 ) { openFileManager() } | ||||
|             ) | ||||
|             add( | ||||
|                 HomeSetting( | ||||
|                     R.string.preferences_theme, | ||||
|                     R.string.theme_and_color_description, | ||||
|                     R.drawable.ic_palette | ||||
|                 ) { SettingsActivity.launch(requireContext(), Settings.SECTION_THEME, "") } | ||||
|             ) | ||||
| 
 | ||||
|             if (GpuDriverHelper.supportsCustomDriverLoading()) { | ||||
|                 add( | ||||
|                     HomeSetting( | ||||
|                         R.string.install_gpu_driver, | ||||
|                         R.string.install_gpu_driver_description, | ||||
|                         R.drawable.ic_exit | ||||
|                     ) { driverInstaller() } | ||||
|                 ) | ||||
|             }, | ||||
|             HomeSetting( | ||||
|                 R.string.install_prod_keys, | ||||
|                 R.string.install_prod_keys_description, | ||||
|                 R.drawable.ic_unlock | ||||
|             ) { mainActivity.getProdKey.launch(arrayOf("*/*")) }, | ||||
|             HomeSetting( | ||||
|                 R.string.install_firmware, | ||||
|                 R.string.install_firmware_description, | ||||
|                 R.drawable.ic_firmware | ||||
|             ) { mainActivity.getFirmware.launch(arrayOf("application/zip")) }, | ||||
|             HomeSetting( | ||||
|                 R.string.share_log, | ||||
|                 R.string.share_log_description, | ||||
|                 R.drawable.ic_log | ||||
|             ) { shareLog() }, | ||||
|             HomeSetting( | ||||
|                 R.string.about, | ||||
|                 R.string.about_description, | ||||
|                 R.drawable.ic_info_outline | ||||
|             ) { | ||||
|                 exitTransition = MaterialSharedAxis(MaterialSharedAxis.X, true) | ||||
|                 parentFragmentManager.primaryNavigationFragment?.findNavController() | ||||
|                     ?.navigate(R.id.action_homeSettingsFragment_to_aboutFragment) | ||||
|             } | ||||
|         ) | ||||
| 
 | ||||
|             add( | ||||
|                 HomeSetting( | ||||
|                     R.string.install_amiibo_keys, | ||||
|                     R.string.install_amiibo_keys_description, | ||||
|                     R.drawable.ic_nfc | ||||
|                 ) { mainActivity.getAmiiboKey.launch(arrayOf("*/*")) } | ||||
|             ) | ||||
|             add( | ||||
|                 HomeSetting( | ||||
|                     R.string.install_game_content, | ||||
|                     R.string.install_game_content_description, | ||||
|                     R.drawable.ic_system_update_alt | ||||
|                 ) { mainActivity.installGameUpdate.launch(arrayOf("*/*")) } | ||||
|             ) | ||||
|             add( | ||||
|                 HomeSetting( | ||||
|                     R.string.select_games_folder, | ||||
|                     R.string.select_games_folder_description, | ||||
|                     R.drawable.ic_add | ||||
|                 ) { | ||||
|                     mainActivity.getGamesDirectory.launch( | ||||
|                         Intent(Intent.ACTION_OPEN_DOCUMENT_TREE).data | ||||
|                     ) | ||||
|                 } | ||||
|             ) | ||||
|             add( | ||||
|                 HomeSetting( | ||||
|                     R.string.manage_save_data, | ||||
|                     R.string.import_export_saves_description, | ||||
|                     R.drawable.ic_save | ||||
|                 ) { | ||||
|                     ImportExportSavesFragment().show( | ||||
|                         parentFragmentManager, | ||||
|                         ImportExportSavesFragment.TAG | ||||
|                     ) | ||||
|                 } | ||||
|             ) | ||||
|             add( | ||||
|                 HomeSetting( | ||||
|                     R.string.install_prod_keys, | ||||
|                     R.string.install_prod_keys_description, | ||||
|                     R.drawable.ic_unlock | ||||
|                 ) { mainActivity.getProdKey.launch(arrayOf("*/*")) } | ||||
|             ) | ||||
|             add( | ||||
|                 HomeSetting( | ||||
|                     R.string.install_firmware, | ||||
|                     R.string.install_firmware_description, | ||||
|                     R.drawable.ic_firmware | ||||
|                 ) { mainActivity.getFirmware.launch(arrayOf("application/zip")) } | ||||
|             ) | ||||
|             add( | ||||
|                 HomeSetting( | ||||
|                     R.string.share_log, | ||||
|                     R.string.share_log_description, | ||||
|                     R.drawable.ic_log | ||||
|                 ) { shareLog() } | ||||
|             ) | ||||
|             add( | ||||
|                 HomeSetting( | ||||
|                     R.string.about, | ||||
|                     R.string.about_description, | ||||
|                     R.drawable.ic_info_outline | ||||
|                 ) { | ||||
|                     exitTransition = MaterialSharedAxis(MaterialSharedAxis.X, true) | ||||
|                     parentFragmentManager.primaryNavigationFragment?.findNavController() | ||||
|                         ?.navigate(R.id.action_homeSettingsFragment_to_aboutFragment) | ||||
|                 } | ||||
|             ) | ||||
|         } | ||||
| 
 | ||||
|         if (!BuildConfig.PREMIUM) { | ||||
|             optionsList.add( | ||||
|  | ||||
| @ -113,6 +113,8 @@ object GpuDriverHelper { | ||||
|         initializeDriverParameters(context) | ||||
|     } | ||||
| 
 | ||||
|     external fun supportsCustomDriverLoading(): Boolean | ||||
| 
 | ||||
|     // Parse the custom driver metadata to retrieve the name. | ||||
|     val customDriverName: String? | ||||
|         get() { | ||||
|  | ||||
| @ -560,6 +560,26 @@ void JNICALL Java_org_yuzu_yuzu_1emu_NativeLibrary_initializeGpuDriver( | ||||
|         GetJString(env, custom_driver_name), GetJString(env, file_redirect_dir)); | ||||
| } | ||||
| 
 | ||||
| [[maybe_unused]] static bool CheckKgslPresent() { | ||||
|     constexpr auto KgslPath{"/dev/kgsl-3d0"}; | ||||
| 
 | ||||
|     return access(KgslPath, F_OK) == 0; | ||||
| } | ||||
| 
 | ||||
| [[maybe_unused]] bool SupportsCustomDriver() { | ||||
|     return android_get_device_api_level() >= 28 && CheckKgslPresent(); | ||||
| } | ||||
| 
 | ||||
| jboolean JNICALL Java_org_yuzu_yuzu_1emu_utils_GpuDriverHelper_supportsCustomDriverLoading( | ||||
|     [[maybe_unused]] JNIEnv* env, [[maybe_unused]] jobject instance) { | ||||
| #ifdef ARCHITECTURE_arm64 | ||||
|     // If the KGSL device exists custom drivers can be loaded using adrenotools
 | ||||
|     return SupportsCustomDriver(); | ||||
| #else | ||||
|     return false; | ||||
| #endif | ||||
| } | ||||
| 
 | ||||
| jboolean Java_org_yuzu_yuzu_1emu_NativeLibrary_reloadKeys(JNIEnv* env, | ||||
|                                                           [[maybe_unused]] jclass clazz) { | ||||
|     Core::Crypto::KeyManager::Instance().ReloadKeys(); | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user