utils: cleanup

Move some RRM utility functions around to simplify code structure / #includes.

[fix commit message]
Signed-off-by: Nick Hainke <vincent@systemli.org>
This commit is contained in:
Ian Clowes 2022-01-31 10:47:32 +00:00 committed by Nick Hainke
parent 0e4fc507cb
commit 8bae43c811
5 changed files with 72 additions and 91 deletions

View file

@ -12,3 +12,49 @@ int rcpi_to_rssi(int rcpi)
{
return rcpi / 2 - 110;
}
static int get_rrm_mode_val(char mode) {
int ret = 0;
switch (mode) {
case 'A':
case 'a':
ret = WLAN_RRM_CAPS_BEACON_REPORT_ACTIVE;
break;
case 'P':
case 'p':
ret = WLAN_RRM_CAPS_BEACON_REPORT_PASSIVE;
break;
case 'B':
case 'b':
case 'T':
case 't':
ret = WLAN_RRM_CAPS_BEACON_REPORT_TABLE;
break;
}
return ret;
}
int parse_rrm_mode(int* rrm_mode_order, const char* mode_string) {
if (!mode_string)
mode_string = DEFAULT_RRM_MODE_ORDER;
int mask = 0;
int order = 0;
while ((*mode_string != 0) && (order < __RRM_BEACON_RQST_MODE_MAX)) {
int mode_val = get_rrm_mode_val(*mode_string);
if (mode_val && (mask & mode_val) == 0)
{
rrm_mode_order[order++] = mode_val;
mask |= mode_val;
}
mode_string++;
}
while (order < __RRM_BEACON_RQST_MODE_MAX)
{
rrm_mode_order[order++] = 0;
}
return mask;
}