X-Git-Url: https://glassweightruler.freedombox.rocks/gitweb/waydroid.git/blobdiff_plain/fb349c82684dc57fae0f0828b6a55eddf60dc254..fb92d3a016a956e8520e938b59f55bd0fe9c2deb:/tools/helpers/gpu.py diff --git a/tools/helpers/gpu.py b/tools/helpers/gpu.py index 5f34656..cf88540 100644 --- a/tools/helpers/gpu.py +++ b/tools/helpers/gpu.py @@ -2,12 +2,28 @@ import glob import os import tools.helpers.props -unsupported = ["nvidia"] +unsupported = ["nvidia", "nouveau"] + +def getKernelDriver(args, dev): + return tools.helpers.props.file_get(args, "/sys/class/drm/{}/device/uevent".format(dev), "DRIVER") def getDriNode(args): for node in glob.glob("/dev/dri/renderD*"): dev = os.path.basename(node) - driver = tools.helpers.props.file_get(args, "/sys/class/drm/{}/device/uevent".format(dev), "DRIVER") - if driver not in unsupported: + if getKernelDriver(args, dev) not in unsupported: return node return "" + +def getVulkanDriver(args, dev): + mapping = { + "i915": "intel", + "amdgpu": "radeon", + "radeon": "radeon", + "panfrost": "panfrost", + "msm": "freedreno", + "vc4": "broadcom", + } + kernel_driver = getKernelDriver(args, dev) + if kernel_driver in mapping: + return mapping[kernel_driver] + return ""