Lines Matching refs:dso
87 static int do_android_unload_sphal_library(void* dso) { in do_android_unload_sphal_library() argument
89 return android_unload_sphal_library(dso); in do_android_unload_sphal_library()
94 dso[0] = gles; in driver_t()
95 for (size_t i=1 ; i<NELEM(dso) ; i++) in driver_t()
96 dso[i] = nullptr; in driver_t()
101 for (size_t i=0 ; i<NELEM(dso) ; i++) { in ~driver_t()
102 if (dso[i]) { in ~driver_t()
103 dlclose(dso[i]); in ~driver_t()
104 dso[i] = nullptr; in ~driver_t()
113 dso[0] = hnd; in set()
116 dso[1] = hnd; in set()
119 dso[2] = hnd; in set()
231 if (cnx->dso) { in unload_system_driver()
233 driver_t* hnd = (driver_t*)cnx->dso; in unload_system_driver()
234 if (hnd->dso[2]) { in unload_system_driver()
235 do_android_unload_sphal_library(hnd->dso[2]); in unload_system_driver()
237 if (hnd->dso[1]) { in unload_system_driver()
238 do_android_unload_sphal_library(hnd->dso[1]); in unload_system_driver()
240 if (hnd->dso[0]) { in unload_system_driver()
241 do_android_unload_sphal_library(hnd->dso[0]); in unload_system_driver()
243 cnx->dso = nullptr; in unload_system_driver()
259 if (cnx->dso) { in open()
260 return cnx->dso; in open()
351 driver_t* hnd = (driver_t*) cnx->dso; in close()
353 cnx->dso = nullptr; in close()
365 void Loader::init_api(void* dso, in init_api() argument
387 (__eglMustCastToProperFunctionPointerType)dlsym(dso, name); in init_api()
398 f = (__eglMustCastToProperFunctionPointerType)dlsym(dso, scrap); in init_api()
407 f = (__eglMustCastToProperFunctionPointerType)dlsym(dso, scrap); in init_api()
516 void* dso = do_android_load_sphal_library(driver_absolute_path, in load_system_driver() local
518 if (dso == nullptr) { in load_system_driver()
526 return dso; in load_system_driver()
592 void* dso = load_system_driver("EGL", prop, true); in load_angle() local
593 if (dso) { in load_angle()
594 cnx->vendorEGL = dso; in load_angle()
644 void* dso = load_angle("EGL", ns, cnx); in attempt_to_load_angle() local
645 if (dso) { in attempt_to_load_angle()
646 initialize_api(dso, cnx, EGL); in attempt_to_load_angle()
647 hnd = new driver_t(dso); in attempt_to_load_angle()
649 dso = load_angle("GLESv1_CM", ns, cnx); in attempt_to_load_angle()
650 initialize_api(dso, cnx, GLESv1_CM); in attempt_to_load_angle()
651 hnd->set(dso, GLESv1_CM); in attempt_to_load_angle()
653 dso = load_angle("GLESv2", ns, cnx); in attempt_to_load_angle()
654 initialize_api(dso, cnx, GLESv2); in attempt_to_load_angle()
655 hnd->set(dso, GLESv2); in attempt_to_load_angle()
671 void* dso = load_updated_driver("GLES", ns); in attempt_to_load_updated_driver() local
672 if (dso) { in attempt_to_load_updated_driver()
673 initialize_api(dso, cnx, EGL | GLESv1_CM | GLESv2); in attempt_to_load_updated_driver()
674 hnd = new driver_t(dso); in attempt_to_load_updated_driver()
678 dso = load_updated_driver("EGL", ns); in attempt_to_load_updated_driver()
679 if (dso) { in attempt_to_load_updated_driver()
680 initialize_api(dso, cnx, EGL); in attempt_to_load_updated_driver()
681 hnd = new driver_t(dso); in attempt_to_load_updated_driver()
683 dso = load_updated_driver("GLESv1_CM", ns); in attempt_to_load_updated_driver()
684 initialize_api(dso, cnx, GLESv1_CM); in attempt_to_load_updated_driver()
685 hnd->set(dso, GLESv1_CM); in attempt_to_load_updated_driver()
687 dso = load_updated_driver("GLESv2", ns); in attempt_to_load_updated_driver()
688 initialize_api(dso, cnx, GLESv2); in attempt_to_load_updated_driver()
689 hnd->set(dso, GLESv2); in attempt_to_load_updated_driver()
702 void* dso = load_system_driver("GLES", suffix, exact); in attempt_to_load_system_driver() local
703 if (dso) { in attempt_to_load_system_driver()
704 initialize_api(dso, cnx, EGL | GLESv1_CM | GLESv2); in attempt_to_load_system_driver()
705 hnd = new driver_t(dso); in attempt_to_load_system_driver()
708 dso = load_system_driver("EGL", suffix, exact); in attempt_to_load_system_driver()
709 if (dso) { in attempt_to_load_system_driver()
710 initialize_api(dso, cnx, EGL); in attempt_to_load_system_driver()
711 hnd = new driver_t(dso); in attempt_to_load_system_driver()
713 dso = load_system_driver("GLESv1_CM", suffix, exact); in attempt_to_load_system_driver()
714 initialize_api(dso, cnx, GLESv1_CM); in attempt_to_load_system_driver()
715 hnd->set(dso, GLESv1_CM); in attempt_to_load_system_driver()
717 dso = load_system_driver("GLESv2", suffix, exact); in attempt_to_load_system_driver()
718 initialize_api(dso, cnx, GLESv2); in attempt_to_load_system_driver()
719 hnd->set(dso, GLESv2); in attempt_to_load_system_driver()
724 void Loader::initialize_api(void* dso, egl_connection_t* cnx, uint32_t mask) { in initialize_api() argument
726 getProcAddress = (getProcAddressType)dlsym(dso, "eglGetProcAddress"); in initialize_api()
738 (__eglMustCastToProperFunctionPointerType)dlsym(dso, name); in initialize_api()
752 init_api(dso, gl_names_1, gl_names, in initialize_api()
759 init_api(dso, gl_names, nullptr, in initialize_api()