mirror of
https://github.com/Droid-Deck/DroidDeck.git
synced 2026-11-13 03:51:10 +00:00
* Device details on the GPU card, and the Adreno model when the kernel leaves it out The Components page called an AYANEO Pocket FIT (Adreno 750) "Adreno" and warned it was "Below tested hardware (Adreno 725 and newer)": its kernel names the GPU "Adreno33v2", GpuInfo wanted three digits, and the SoC model is blank. When KGSL's name has no model, take it from the phone's Vulkan driver (once this process has asked it) or from the platform code name (pineapple -> 750, kalama -> 740, sun -> 830, ...). The GPU card now opens with a tap or A onto the device's details, gathered once off the main thread (DeviceInfo): SoC (maker, model, platform, soc0 id), GPU (model and where it came from, the kernel's name, clock, load, temperature, support), CPU clusters, memory, system, the phone's own Vulkan driver - device, API, driver version and build, conformance, limits, the extensions DXVK and VKD3D lean on, Android's certified version and level - and the drivers DroidDeck uses. A button copies it all for a bug report; each section takes pad focus so the d-pad walks the list. Vulkan is asked through a new small native library (deviceinfo, vkinfo.c) that opens the system loader with dlopen and keeps nothing open. * Device details: the chip's model and name, CPU clusters, GPU clock range Ideas from ClusterTune (GPL-2.0, its approach, not its code), which tunes clocks on AYN, Retroid and other handhelds: - The SoC model is read where vendors put it - ro.soc.model, ro.vendor.qti.soc_model, Android's SOC_MODEL, ro.fota.platform (unless it is a branch name like "MSM_13.0") - since handhelds often leave Android's blank (Pocket FIT: SG8350P). - SocNames names it: model codes we are sure of (QCS8550 -> Snapdragon 8 Gen 2, SM8750 -> Snapdragon 8 Elite, ...), else the platform as a family (pineapple -> "Snapdragon 8 Gen 3 family"). The GPU card's subtitle shows it: "Snapdragon 8 Gen 3 family (SG8350P)". - CPU clusters come from the cpufreq policies (the cores each covers, min-max speed) rather than grouping cores by top speed. - GPU clock range from KGSL's step list, or a devfreq GPU node on non-Adreno chips (Mali), not only the top clock. * Device details: drop Qualcomm's own "Driver Build:" label from the driver build line --------- Co-authored-by: The412Banner <the412banner@users.noreply.github.com>