Skip to content

RDKBWIFI-477 Add ACS channel exclusion list support#1229

Open
santhoshg6 wants to merge 1 commit into
rdkcentral:developfrom
santhoshg6:RDKBWIFI-477
Open

RDKBWIFI-477 Add ACS channel exclusion list support#1229
santhoshg6 wants to merge 1 commit into
rdkcentral:developfrom
santhoshg6:RDKBWIFI-477

Conversation

@santhoshg6

@santhoshg6 santhoshg6 commented Jun 25, 2026

Copy link
Copy Markdown
Contributor

Reason for change:
Introduce support for configuring ACS (Auto Channel Selection) channel exclusion list via RBUS and control queue.

Changes:

  • Added RBUS API: Device.WiFi.X_RDKCENTRAL-COM_StartACS
  • Introduced event: wifi_event_type_command_start_acs
  • Implemented JSON parsing and validation for ACS exclusion list
  • Integrated HAL API to apply exclusion list
  • Trigger ACS restart if current channel is excluded
  • Added full RBUS → queue → HAL flow

Signed-off-by: sgunasekaran@maxlinear.com

Dep PR: rdkcentral/rdk-wifi-hal#764 and rdkcentral/rdkb-halif-wifi#115

Copilot AI review requested due to automatic review settings June 25, 2026 07:01
@santhoshg6 santhoshg6 requested a review from a team as a code owner June 25, 2026 07:01
Reason for change:
Introduce support for configuring ACS (Auto Channel Selection)
channel exclusion list via RBUS and control queue.

Changes:
- Added RBUS API: Device.WiFi.X_RDKCENTRAL-COM_StartACS
- Introduced event: wifi_event_type_command_start_acs
- Implemented JSON parsing and validation for ACS exclusion list
- Integrated HAL API to apply exclusion list
- Trigger ACS restart if current channel is excluded
- Added full RBUS → queue → HAL flow

Signed-off-by: sgunasekaran@maxlinear.com

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds an RBUS-triggered “StartACS” command path that carries an ACS channel exclusion list from RBUS → ctrl queue → HAL, and optionally restarts ACS when the current operating channel is excluded.

Changes:

  • Introduces a new command event subtype (wifi_event_type_command_start_acs) and wires it into the command-event dispatch path.
  • Adds RBUS method Device.WiFi.X_RDKCENTRAL-COM_StartACS to enqueue a StartACS request into the control queue.
  • Implements JSON decoding/validation for ACS exclusion list payloads and applies the result via a HAL call, restarting ACS when required.

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
source/core/wifi_events.c Adds string mapping for the new StartACS command subtype.
source/core/wifi_ctrl_rbus_handlers.c Registers the new RBUS method and enqueues the StartACS JSON payload to the control queue.
source/core/wifi_ctrl_queue_handlers.c Adds JSON parsing/validation and the queue handler that applies the exclusion list via HAL and restarts ACS if needed.
include/wifi_events.h Extends command subtype enum with wifi_event_type_command_start_acs.
include/wifi_base.h Adds RBUS element name macro for Device.WiFi.X_RDKCENTRAL-COM_StartACS.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +4330 to +4345
pTmp = (char *)p_data->raw_data.bytes;
payload_len = p_data->raw_data_len;

if (pTmp == NULL || pTmp[0] == '\0' || payload_len == 0) {
wifi_util_error_print(WIFI_CTRL, "%s:%d payload is NULL or empty\n",
__func__, __LINE__);
return bus_error_invalid_input;
}

pTmp[payload_len] = '\0';

wifi_util_info_print(WIFI_CTRL, "%s:%d StartACS request received: '%s'\n",
__func__, __LINE__, pTmp);

push_event_to_ctrl_queue(pTmp, (payload_len + 1), wifi_event_type_command,
wifi_event_type_command_start_acs, NULL);
Comment on lines +4565 to +4567
cJSON *ch_len_obj = cJSON_GetObjectItemCaseSensitive(entry, "exclude_channels_length");
total_channels += ch_len_obj->valueint;
}
@Nikita-Hakai Nikita-Hakai added the community contribution Contributions from community. label Jun 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

community contribution Contributions from community.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants