[Bugfix][API-503][wifi][channel] add acs api enable acs
Change-Id: I8bafe461e2aa33c71f1dd6ee3bf0a12a91511bda
diff --git a/src/lynq/lib/liblynq-wifi6/include/libwifi6.h b/src/lynq/lib/liblynq-wifi6/include/libwifi6.h
index adc9ef2..c6ad362 100755
--- a/src/lynq/lib/liblynq-wifi6/include/libwifi6.h
+++ b/src/lynq/lib/liblynq-wifi6/include/libwifi6.h
@@ -226,4 +226,15 @@
*/
int lynq_ap_connect_num(int sta_number);
+/****add acs contrl api*****************
+ *
+ *idx:
+ * 1 is ap and only 1 is legal in this api
+ *acs_mode:
+ * 2 is open acs at 2.4GHz
+ * 5 is open acs at 5GHz
+ * didnt ssuport 2.4G&5G together
+ * add by qs.xiong 20221012*************/
+int lynq_enable_acs(lynq_wifi_index_e idx,int acs_mode);
+
#endif
diff --git a/src/lynq/lib/liblynq-wifi6/libwifi6.c b/src/lynq/lib/liblynq-wifi6/libwifi6.c
index 8867126..3ce3c62 100755
--- a/src/lynq/lib/liblynq-wifi6/libwifi6.c
+++ b/src/lynq/lib/liblynq-wifi6/libwifi6.c
@@ -2510,3 +2510,34 @@
return 0;
}
+int lynq_enable_acs(lynq_wifi_index_e idx,int acs_mode)
+{
+
+ char lynq_wifi_acs_cmd[128]={0};
+ char lynq_cmd_mode[128]={0};
+ char lynq_cmd_slect[128]={0};
+
+ if((acs_mode != 2) && (acs_mode != 5)){
+ PRINT_AND_RETURN_VALUE("set acs_mode is error",-1);
+ }
+
+ if (lynq_check_network_number(idx, CTRL_AP, AP_NETWORK_0) != 0) {
+ return -1;
+ }
+
+ CHECK_IDX(idx, CTRL_AP);
+
+ CHECK_WPA_CTRL(CTRL_AP);
+
+ sprintf(lynq_wifi_acs_cmd,"SET_NETWORK %d frequency %d", AP_NETWORK_0, acs_mode);
+ sprintf(lynq_cmd_mode, "SET_NETWORK %d mode 2", AP_NETWORK_0);
+ sprintf(lynq_cmd_slect, "SELECT_NETWORK %d", AP_NETWORK_0);
+
+ DO_OK_FAIL_REQUEST(cmd_disconnect);
+ DO_OK_FAIL_REQUEST(lynq_wifi_acs_cmd);
+ DO_OK_FAIL_REQUEST(lynq_cmd_mode);
+ DO_OK_FAIL_REQUEST(cmd_save_config);
+ DO_OK_FAIL_REQUEST(lynq_cmd_slect);
+
+ return 0;
+}