X-Git-Url: https://glassweightruler.freedombox.rocks/gitweb/waydroid.git/blobdiff_plain/43ab2b48853796f20715b1c883c3b4a7e6e95de2..2a1c48413b3c41a927b45be726d4f85e7a57d122:/tools/helpers/lxc.py diff --git a/tools/helpers/lxc.py b/tools/helpers/lxc.py index 8cacfe2..a099801 100644 --- a/tools/helpers/lxc.py +++ b/tools/helpers/lxc.py @@ -7,6 +7,7 @@ import logging import glob import shutil import platform +import gbinder import tools.config import tools.helpers.run @@ -171,6 +172,16 @@ def make_base_props(args): return prop return "" + def find_hidl(intf): + if args.vendor_type == "MAINLINE": + return False + + try: + sm = gbinder.ServiceManager("/dev/hwbinder") + return intf in sm.list_sync() + except: + return False + props = [] if not os.path.exists("/dev/ashmem"): @@ -180,7 +191,10 @@ def make_base_props(args): dri = tools.helpers.gpu.getDriNode(args) gralloc = find_hal("gralloc") - if gralloc == "": + if not gralloc: + if find_hidl("android.hardware.graphics.allocator@4.0::IAllocator/default"): + gralloc = "android" + if not gralloc: if dri: gralloc = "gbm" egl = "mesa"