mirror of
https://github.com/Droid-Deck/DroidDeck.git
synced 2026-11-13 03:51:10 +00:00
An Exynos with a Mali is a Mali, not an Xclipse
The system route took vulkan.samsung.so as Samsung's Xclipse, but an Exynos 1280/1380 (Galaxy Tab S9 FE: Mali-G68) may name its HAL the same; with /dev/mali0 present that HAL is not the system route's, and the device is detected as the Mali it is. The chip table adds the Exynos 1380 and 1280 (s5e8835, s5e8825: Mali-G68).
This commit is contained in:
1 parent
506cd5876e
commit
e5bea33cdc
3 files changed
+13
-2
No files matched your search
@@ -181,6 +181,7 @@ data class GpuInfo(
|
||||
"mt6833" to "Mali-G57", "mt6835" to "Mali-G57", "mt6789" to "Mali-G57", "mt6785" to "Mali-G76",
|
||||
"mt6781" to "Mali-G52", "mt6769" to "Mali-G52", "mt8192" to "Mali-G57", "mt8195" to "Mali-G57",
|
||||
"gs101" to "Mali-G78", "gs201" to "Mali-G710", "zuma" to "Mali-G715", "zumapro" to "Mali-G715",
|
||||
"s5e8835" to "Mali-G68", "s5e8825" to "Mali-G68",
|
||||
)
|
||||
|
||||
/** The Mali [ids] name a chip of, "Mali-G720 (by chip mt6989)", or null for an unknown chip. */
|
||||
|
||||
@@ -43,9 +43,16 @@ public final class SystemVulkanDriver {
|
||||
|
||||
private SystemVulkanDriver() {}
|
||||
|
||||
/** The first vendor HAL present, or null. */
|
||||
/**
|
||||
* The first vendor HAL present, or null. An Exynos with a Mali (Exynos 1280/1380: /dev/mali0)
|
||||
* may name its HAL vulkan.samsung.so too; that is a Mali, not an Xclipse, and is not taken.
|
||||
*/
|
||||
public static String hal() {
|
||||
for (String path : HALS) if (new File(path).isFile()) return path;
|
||||
for (String path : HALS) {
|
||||
if (!new File(path).isFile()) continue;
|
||||
if (path.endsWith("/vulkan.samsung.so") && new File("/dev/mali0").exists()) continue;
|
||||
return path;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
@@ -225,6 +225,9 @@ class DriverPairsTest {
|
||||
assertEquals("Mali-G720 (by chip mt6989)", GpuInfo.maliOfSoc(listOf("", "mt6989")))
|
||||
assertEquals("Mali-G710 (by chip gs201)", GpuInfo.maliOfSoc(listOf("GS201")))
|
||||
assertEquals(null, GpuInfo.maliOfSoc(listOf("unknown-chip")))
|
||||
// An Exynos with a Mali, and a Helio G99, by board name.
|
||||
assertEquals(Family.MALI_JM, GpuInfo.familyOf(false, 0, mali = GpuInfo.maliOfSoc(listOf("s5e8835"))))
|
||||
assertEquals(Family.MALI_JM, GpuInfo.familyOf(false, 0, mali = GpuInfo.maliOfSoc(listOf("MT6789"))))
|
||||
assertEquals(Family.MALI_G720, GpuInfo.familyOf(false, 0, mali = "Mali-G720 (by chip mt6989)"))
|
||||
assertEquals(Family.MALI_LATEST, GpuInfo.familyOf(false, 0, mali = "Mali-G925 (by chip mt6991)"))
|
||||
assertTrue(GpuInfo.maliKbaseCovered("Mali-G720 (by chip mt6989)"))
|
||||
|
||||
Reference in new issue
Block a user