Repository navigation
LTE-3100: DFS channel can't be reuse for BH on nop_started - #1540
poornakumar-pk wants to merge 1 commit into
Conversation
Reason for change: It prevents the STA connection attempt when the candidate is invalid Test Procedure: check XLE not use same channel while it is in the nop_started state Risks: Priority: P1 Signed-off-by: poornakumar_mezhiselvam@comcast.com
9f8a284 to
75ca46a
Compare
There was a problem hiding this comment.
🟡 Changes recommended
The new validation can reject valid backhaul candidates because of incorrect 6 GHz frequency conversion and overly restrictive bandwidth checks.
2 open issues
What changed in this PR
Backports the LTE-3100 DFS/NOP validation from PR #1490 to 8.7_p1b, checking mesh backhaul candidates before attempting a connection.
Changes:
- Validates cached and scanned candidates against runtime radio parameters before
wifi_hal_connect(). - Clears or skips rejected candidates and reschedules connection selection.
- Extends NOP checks to 160 MHz operating blocks with non-DFS primary channels.
| File | Description |
|---|---|
source/utils/wifi_util.c |
Expands the condition for operating-block NOP validation. |
source/core/services/vap_svc_mesh_ext.c |
Adds candidate validation and rejection handling before backhaul connections. |
Review effort: Balanced
| } | ||
|
|
||
| candidate_channel = 0; | ||
| convert_freq_to_channel(candidate->external_ap.freq, &candidate_channel); |
There was a problem hiding this comment.
Valid. The old converter turns 5955/5975 MHz into 191/195, so 6 GHz parents on primary 1/5 are rejected. Main already has the band-aware convert_freq_to_channel() from #1542; this will be fixed in a future PR.
| if (candidate->external_ap.oper_chan_bw != 0) { | ||
| candidate_params->channelWidth = candidate->external_ap.oper_chan_bw; |
There was a problem hiding this comment.
Not reachable on rdk-wifi-hal platforms. The HAL never fills radiocap.channelWidth, and move_radio_capability() defaults 5 GHz to 20/40/80/160, so a 160 MHz parent always passes.
| if (candidate_params == NULL) { | ||
| wifi_util_error_print(WIFI_CTRL, "%s:%d: failed to allocate candidate radio parameters\n", | ||
| __func__, __LINE__); | ||
| return; |
There was a problem hiding this comment.
Valid, minor. #1542 calls schedule_connect_sm() on this path, and the NOP-only check proposed there drops the allocation altogether.
|
@poornakumar-pk please hold this for 8.7, if possible (CC: @gsathish86 ). During a staged DFS rollout, gateways and extenders won't get the RFC at the same time. Extenders that haven't been switched yet would lose 5 GHz backhaul to gateways that have been. Please limit the gate to the NOP state of the parent's channel block (proposal on #1542 to follow), or confirm that rejecting DFS parents with local DFS off is intended and make that an explicit, logged check. |


Reason for change: It prevents the STA connection attempt when the candidate is invalid
Test Procedure: check XLE not use same channel while it is in the nop_started state
Risks:
Priority: P1
Signed-off-by: poornakumar_mezhiselvam@comcast.com