]>
glassweightruler.freedombox.rocks Git - waydroid.git/blob - tools/helpers/gpu.py
3 import tools
.helpers
.props
5 unsupported
= ["nvidia"]
7 def getMinor(args
, dev
):
8 return tools
.helpers
.props
.file_get(args
, "/sys/class/drm/{}/uevent".format(dev
), "MINOR")
10 def getKernelDriver(args
, dev
):
11 return tools
.helpers
.props
.file_get(args
, "/sys/class/drm/{}/device/uevent".format(dev
), "DRIVER")
13 def getCardFromRender(args
, dev
):
15 return "/dev/dri/" + os
.path
.basename(glob
.glob("/sys/class/drm/{}/device/drm/card*".format(dev
))[0])
20 for node
in glob
.glob("/dev/dri/renderD*"):
21 renderDev
= os
.path
.basename(node
)
22 if getKernelDriver(args
, renderDev
) not in unsupported
:
23 return node
, getCardFromRender(args
, renderDev
)
26 def getVulkanDriver(args
, dev
):
31 "panfrost": "panfrost",
33 "msm_dpu": "freedreno",
37 kernel_driver
= getKernelDriver(args
, dev
)
39 if kernel_driver
== "i915":
41 gen
= tools
.helpers
.run
.user(args
,["awk", "/^graphics version:|^gen:/ {print $NF}",
42 "/sys/kernel/debug/dri/{}/i915_capabilities".format(getMinor(args
, dev
))], output_return
=True, check
=False)
48 if kernel_driver
in mapping
:
49 return mapping
[kernel_driver
]