[TNEXT-136] Check model name for wlan driver
[platform/core/connectivity/net-config.git] / src / utils / util.c
index 6efd972..a5c2595 100755 (executable)
@@ -1048,6 +1048,31 @@ tizen_profile_t _get_tizen_profile()
        return profile;
 }
 
+tizen_wlan_driver_t _get_wlan_driver(void)
+{
+       static tizen_wlan_driver_t drv = TIZEN_WLAN_DRIVER_UNKNOWN;
+       if (__builtin_expect(drv != TIZEN_WLAN_DRIVER_UNKNOWN, 1))
+               return drv;
+
+       char *model_name = NULL;
+       int ret = 0;
+
+       ret = system_info_get_platform_string("http://tizen.org/system/model_name", &model_name);
+       if (ret != SYSTEM_INFO_ERROR_NONE) {
+               ERR("Failed to get system information(%d)", ret);
+               return drv;
+       }
+
+       if (model_name && strncmp(model_name, "TM1", sizeof("TM1")) == 0)
+               drv = TIZEN_WLAN_DRIVER_SPRD;
+       else if (strncmp(model_name, "n4", sizeof("n4")) == 0)
+               drv = TIZEN_WLAN_DRIVER_BROADCOM;
+
+       free(model_name);
+
+       return drv;
+}
+
 void netconfig_plugin_init()
 {
        handle_headed = dlopen(HEADED_PLUGIN_FILEPATH, RTLD_NOW);