Support 6GHz band in RSSI level getter 93/299093/1 accepted/tizen_8.0_unified tizen_8.0 accepted/tizen/8.0/unified/20231005.092942 accepted/tizen/unified/20230920.161459 tizen_8.0_m2_release
authorJaehyun Kim <jeik01.kim@samsung.com>
Tue, 19 Sep 2023 12:37:06 +0000 (21:37 +0900)
committerJaehyun Kim <jeik01.kim@samsung.com>
Tue, 19 Sep 2023 12:37:06 +0000 (21:37 +0900)
Change-Id: Ifc0caab6aebc0a96d4f0108d6bb423b1c9cee0ce
Signed-off-by: Jaehyun Kim <jeik01.kim@samsung.com>
src/wifi_ap.c
tests/mocks/mock_gdbus.c

index f00dcd1..2b59ab9 100644 (file)
@@ -25,6 +25,8 @@
 #include "wifi_internal.h"
 
 #define MAX_PREFIX_LENGTH 6
+#define FREQUENCY_5G_BASE 5000
+#define FREQUENCY_6G_BASE 5925
 
 //LCOV_EXCL_START
 static char *__ap_convert_ip_to_string(net_addr_s *ip_addr,
@@ -219,6 +221,33 @@ static wifi_manager_rssi_level_e __ap_convert_dbm_to_level_50(int rssi_dbm)
        return rssi_level;
 }
 
+static wifi_manager_rssi_level_e __ap_convert_dbm_to_level_60(int rssi_dbm)
+{
+       wifi_manager_rssi_level_e rssi_level = WIFI_MANAGER_RSSI_LEVEL_0;
+
+       /* Wi-Fi Signal Strength Display (for 6G (dB))
+        *
+        * Excellent :     ~ -72
+        * Good      : -73 ~ -77
+        * Weak      : -78 ~ -82
+        * Very weak : -83 ~ -88
+        * No signal : -89 ~
+        */
+
+       if (rssi_dbm >= -72)
+               rssi_level = WIFI_MANAGER_RSSI_LEVEL_4;
+       else if (rssi_dbm >= -78)
+               rssi_level = WIFI_MANAGER_RSSI_LEVEL_3;
+       else if (rssi_dbm >= -83)
+               rssi_level = WIFI_MANAGER_RSSI_LEVEL_2;
+       else if (rssi_dbm >= -88)
+               rssi_level = WIFI_MANAGER_RSSI_LEVEL_1;
+       else
+               rssi_level = WIFI_MANAGER_RSSI_LEVEL_0;
+
+       return rssi_level;
+}
+
 static bool _wifi_set_profile_name_to_ap(net_profile_info_s *ap_info)
 {
        char *profile_name = NULL;
@@ -610,7 +639,9 @@ EXPORT_API int wifi_manager_ap_get_rssi_level(wifi_manager_ap_h ap, wifi_manager
        net_profile_info_s *profile_info = ap;
        rssi_dbm = (int)(profile_info->Strength - 120);
 
-       if (profile_info->frequency > 4900)
+       if (profile_info->frequency > FREQUENCY_6G_BASE)
+               *rssi_level = __ap_convert_dbm_to_level_60(rssi_dbm);
+       else if (profile_info->frequency > FREQUENCY_5G_BASE)
                *rssi_level = __ap_convert_dbm_to_level_50(rssi_dbm);
        else
                *rssi_level = __ap_convert_dbm_to_level_24(rssi_dbm);
index ae02f11..6851b4c 100644 (file)
@@ -298,6 +298,7 @@ method_call_reply_s g_dbus_reply[] = {
        {"CheckGetPrivilege",       __get_mock_variant_int},
        {"GetMaxScanSsid",          __get_mock_variant_get_scanstate},
        {"Get5GhzSupported",        __get_mock_variant_get_scanstate},
+       {"Get6GHzSupported",        __get_mock_variant_get_scanstate},
        {"ResumeBgscan",            __get_mock_variant_string},
        {"PauseBgscan",             __get_mock_variant_string},
        {"AddVsie",                 __get_mock_variant_string},