Skip to content

RDKB-63482: wifi: MLO reconfiguration improvments and DML updates#1104

Open
WellPeter wants to merge 4 commits into
rdkcentral:developfrom
WellPeter:mlo_reconfiguration_v2
Open

RDKB-63482: wifi: MLO reconfiguration improvments and DML updates#1104
WellPeter wants to merge 4 commits into
rdkcentral:developfrom
WellPeter:mlo_reconfiguration_v2

Conversation

@WellPeter
Copy link
Copy Markdown
Contributor

@WellPeter WellPeter commented May 4, 2026

Reason for change:

  • Remove mld_apply parameter from codebase (no longer needed)
  • Remove mld_addr from DB schema; compute it at runtime from BSSID
  • Make old MLO DML parameters read-only
  • Add Device.WiFi.SSID.{i}.X_RDK_MLDLinkID DML parameter
  • Unify MLO group validation into shared mlo_update_all_groups() used by both webconfig and DB init paths
  • Add is_mlo_config_matching() to enforce SSID, password and security mode consistency before forming an MLO group; WPA3 variants treated as inter-compatible across bands Test Procedure:
    • Verify MLO groups can be configured via DML: Device.WiFi.SSID.{i}.MLDUnit Device.WiFi.SSID.{i}.X_RDK_MLDLinkID
    • Verify MLO groups are correctly formed on DB init and webconfig
    • Verify MLO groups are correctly updated when changing SSID, password or security mode of an existing MLO group member Risks: Medium
      Priority: P1

Depends on rdkcentral/rdkb-halif-wifi#103

@WellPeter WellPeter requested a review from a team as a code owner May 4, 2026 07:41
@WellPeter WellPeter force-pushed the mlo_reconfiguration_v2 branch from 368bd78 to a21ce59 Compare May 4, 2026 08:57
@WellPeter WellPeter marked this pull request as draft May 11, 2026 12:53
WellPeter added 2 commits May 19, 2026 13:35
Reason for change:
  - Remove mld_apply parameter from codebase (no longer needed)
  - Remove mld_addr from DB schema; compute it at runtime from BSSID
  - Make old MLO DML parameters read-only
  - Add Device.WiFi.SSID.{i}.X_RDK_MLDLinkID DML parameter
  - Unify MLO group validation into shared mlo_update_all_groups()
    used by both webconfig and DB init paths
  - Add is_mlo_config_matching() to enforce SSID, password and security
    mode consistency before forming an MLO group; WPA3 variants treated
    as inter-compatible across bands
Test Procedure:
    - Verify MLO groups can be configured via DML:
        Device.WiFi.SSID.{i}.MLDUnit
        Device.WiFi.SSID.{i}.X_RDK_MLDLinkID
    - Verify MLO groups are correctly formed on DB init and webconfig
    - Verify MLO groups are correctly updated when changing SSID, password
        or security mode of an existing MLO group member
Risks: Medium
Priority: P1
As multivap subdocs contains information about the only one VAP in the MLD group,
calling update_mld_groups for that subdocs will cause the MLD group to be disable on that VAP,
which is not the expected behavior.

Before it was filtered by vap_names size less than MAX_NUM_RADIOS.
So this behaviour is not changed.
@WellPeter WellPeter force-pushed the mlo_reconfiguration_v2 branch from a21ce59 to dd81668 Compare May 19, 2026 12:18
@WellPeter WellPeter marked this pull request as ready for review May 19, 2026 12:18
@narendradandu narendradandu requested a review from Copilot May 19, 2026 14:46
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR updates the OneWifi MLO (802.11be) configuration flow by removing deprecated MLO fields from webconfig/DB, adding a new SSID-level DML parameter for link ID, and centralizing MLO group validation/propagation so both DB-init and webconfig paths form consistent MLO groups.

Changes:

  • Removed mld_apply handling across webconfig encode/decode/validation, config-change detection, DML, and OVSDB schema/gen.
  • Removed mld_addr from the OVSDB schema (compute/propagate runtime MLD MAC from BSSID/main link) and added boot-time MLO group initialization after BSSID population.
  • Added Device.WiFi.SSID.{i}.X_RDK_MLDLinkID and introduced shared update_mld_groups() + is_mlo_config_matching() (SSID/key/security consistency, with WPA3 variants treated as compatible).

Reviewed changes

Copilot reviewed 14 out of 14 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
source/webconfig/wifi_encoder.c Stops emitting deprecated MLD_Apply in webconfig JSON.
source/webconfig/wifi_decoder.c Stops parsing deprecated MLD_Apply from webconfig JSON.
source/utils/wifi_validator.c Stops validating deprecated MLD_Apply from incoming config.
source/utils/wifi_util.c Removes mld_apply from VAP change-detection logic.
source/dml/tr_181/ml/cosa_wifi_dml.c Adds SSID X_RDK_MLDLinkID get/set and removes old MLO setters/getters per updated DML behavior.
source/db/wifi_db.c Removes default initialization of mld_apply in DB defaults.
source/db/wifi_db_apis.c Removes DB read/write/upgrade paths for mld_apply; removes prior DB-init MLD MAC updater.
source/core/wifi_ctrl.h Exposes update_mld_groups() for webconfig + init usage (BE + non-generic MLO only).
source/core/wifi_ctrl.c Adds shared MLO group validation/propagation + boot-time init after BSSID population.
source/core/wifi_ctrl_webconfig.c Switches webconfig apply flow to call shared update_mld_groups() from subdoc-specific apply paths.
lib/inc/schema_gen.h Removes mld_addr and mld_apply columns from generated OVSDB schema bindings.
include/wifi_base.h Adds MIN_MLO_GROUP_SIZE used by centralized MLO validation.
config/TR181-WiFi-USGv2.XML Adds X_RDK_MLDLinkID; makes legacy MLO DML params read-only; removes MLD_Apply.
config/rdkb-wifi.ovsschema Drops mld_addr and mld_apply columns from Wifi_VAP_Config table.

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

Comment thread source/dml/tr_181/ml/cosa_wifi_dml.c
Comment thread source/dml/tr_181/ml/cosa_wifi_dml.c
Comment thread source/dml/tr_181/ml/cosa_wifi_dml.c Outdated
Comment thread source/core/wifi_ctrl_webconfig.c
narendradandu
narendradandu previously approved these changes May 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants