Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(enodebd): BaiCells QRTB and FreedomFi One Carrier Aggregation #13195

Merged
merged 1 commit into from Jul 7, 2022

Conversation

xbend
Copy link
Contributor

@xbend xbend commented Jul 5, 2022

Added support for setting and configuring Carrier Aggregation
on BaiCells QRTB and FreedomFi One based on state results received from
Domain Proxy:

  • Added Carrier Aggregation TR parameter nodes
  • Changed TX power parameters on FreedomFi one (necessary to utilize Carrier Aggregation configuraion)
  • Tweaked postprocessing on FreedomFi one to remove some TX related parameters from device desired config (band and earfcn has to be removed from the configuration, since it may be set in the eNB RAN config in NMS/Orc8r and may initially overwrite domain proxy configuration before enodebd manages to ask for Domain Proxy state and acquire correct TX parameters)

Signed-off-by: Artur Dębski artur.debski@freedomfi.com

Summary

Extended and modified BaiCells QRTB and FreedomFi One devices models in enodebd to support Carrier Aggregation configuration based on Domain Proxy responses.

Domain Proxy may obtain many LTE channel grants from SAS servers. As a result, enodebd device "drivers" will query Domain Proxy for CBSD state, and may receive a reply containing many LTE channels.
If Domain Proxy response contains 2 or more channels, and explicitly enables carrier aggregation, Carrier Aggregation will be attempted to be configured on the respective eNBs.

In case Domain Proxy responses do no allow setting Carrier Aggregation (only 1 channel, carrier aggregation explicitly disabled), enodebd will reconfigure the eNB to parameters derived from the available channel and set eNB to work in Single Carrier mode - this behavior was suggested by both BaiCells (for eNBs running QRTB firmware) and Sercomm (for FreedomFi One Englewood and HGO)

Test Plan

Extended unit testing for all supported scenarios.
Tested enodebd code contained in this PR with 1 BaiCells unit (Software Version: QRTB 2.8.15) and Sercomm Englewood (Software Version: RC3925@2204201602). Testing included simulations of Domain Proxy responses (0 channel response, 1 channel response, 2 channel response with CA-incompatible channels, 2 channels with CA-compatible channels) and verified transmission on each case.

Additional Information

Domain Proxy does not yet implement obtaining multiple SAS grants for CBSDs. However the enodebd gRPC API is already prepared as it returns a LTEChannel array in the state response - but for the time being, the array will now only contain 1 channel, so the code will be "unused".
Once Domain Proxy implementation finishes multiple grant support, the extra functionality in this PR will be fully utilized.

  • This change is backwards-breaking

@xbend xbend requested a review from a team as a code owner July 5, 2022 12:12
@xbend xbend requested a review from koolzz July 5, 2022 12:12
@pull-request-size pull-request-size bot added the size/XXL Denotes a Pull Request that changes 1000+ lines. label Jul 5, 2022
@github-actions
Copy link
Contributor

github-actions bot commented Jul 5, 2022

Thanks for opening a PR! 💯

A couple initial guidelines

Howto

  • Reviews. The "Reviewers" listed for this PR are the Magma maintainers who will shepherd it.
  • Checks. All required CI checks must pass before merge.
  • Merge. Once approved and passing CI checks, use the ready2merge label to indicate the maintainers can merge your PR.

More info

Please take a moment to read through the Magma project's

If this is your first Magma PR, also consider reading

@github-actions github-actions bot added the component: agw Access gateway-related issue label Jul 5, 2022
@github-actions
Copy link
Contributor

github-actions bot commented Jul 5, 2022

Oops! Looks like you failed the Python Format Check.

Howto

♻️ Updated: ✅ The check is passing the Python Format Check after the last commit.

@xbend xbend force-pushed the enodebd_qrtb_ffone_ca_support branch from 221027a to ca0338d Compare July 5, 2022 12:15
@xbend xbend added the component: dp All updates to Domain Proxy dp module label Jul 5, 2022
@xbend xbend force-pushed the enodebd_qrtb_ffone_ca_support branch from ca0338d to 78c9a2f Compare July 5, 2022 12:27
@github-actions
Copy link
Contributor

github-actions bot commented Jul 5, 2022

feg-workflow

    2 files  203 suites   40s ⏱️
374 tests 374 ✔️ 0 💤 0
388 runs  388 ✔️ 0 💤 0

Results for commit c6d65cf.

♻️ This comment has been updated with latest results.

@github-actions github-actions bot removed the component: dp All updates to Domain Proxy dp module label Jul 5, 2022
@xbend xbend force-pushed the enodebd_qrtb_ffone_ca_support branch 2 times, most recently from 6cc9f74 to 2318266 Compare July 5, 2022 12:31
@github-actions
Copy link
Contributor

github-actions bot commented Jul 5, 2022

dp-workflow

18 tests   18 ✔️  4m 14s ⏱️
  2 suites    0 💤
  2 files      0

Results for commit c6d65cf.

♻️ This comment has been updated with latest results.

@xbend xbend force-pushed the enodebd_qrtb_ffone_ca_support branch 3 times, most recently from c4d3849 to bf082c2 Compare July 5, 2022 13:28
Added support for setting and configuring Carrier Aggregation
on BaiCells QRTB and FreedomFi One based on state results received from
Domain Proxy.

Signed-off-by: Artur Dębski <artur.debski@freedomfi.com>
@xbend xbend force-pushed the enodebd_qrtb_ffone_ca_support branch from bf082c2 to c6d65cf Compare July 5, 2022 13:50
@github-actions
Copy link
Contributor

github-actions bot commented Jul 5, 2022

agw-workflow

615 tests   611 ✔️  4m 28s ⏱️
    2 suites      4 💤
    2 files        0

Results for commit c6d65cf.

@xbend
Copy link
Contributor Author

xbend commented Jul 6, 2022

@magma/approvers-agw PR ready for review. Codecov complains due to mocking the entire python dp_client gRPC api call module. We tested this live.

@xbend xbend added the component: dp All updates to Domain Proxy dp module label Jul 6, 2022
@xbend xbend merged commit 252db04 into magma:master Jul 7, 2022
@xbend xbend deleted the enodebd_qrtb_ffone_ca_support branch July 7, 2022 17:06
emakeev pushed a commit to emakeev/magma that referenced this pull request Aug 5, 2022
…agma#13195)

Added support for setting and configuring Carrier Aggregation
on BaiCells QRTB and FreedomFi One based on state results received from
Domain Proxy.

Signed-off-by: Artur Dębski <artur.debski@freedomfi.com>

Co-authored-by: Artur Dębski <artur.debski@freedomfi.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component: agw Access gateway-related issue component: dp All updates to Domain Proxy dp module size/XXL Denotes a Pull Request that changes 1000+ lines.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants