Skip to content

cellular: eps ciot optimization network support check #8709

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

Closed
wants to merge 2 commits into from
Closed

cellular: eps ciot optimization network support check #8709

wants to merge 2 commits into from

Conversation

ghost
Copy link

@ghost ghost commented Nov 12, 2018

Description

CCIOTOPTI URC handler added, tested with unittests, no HW support currently available to test with

Pull request type

[ ] Fix
[ ] Refactor
[ ] Target update
[ ] Functionality change
[ ] Docs update
[ ] Test update
[ X ] Breaking change

@ghost
Copy link
Author

ghost commented Nov 12, 2018

@mirelachirica Please review

@0xc0170
Copy link
Contributor

0xc0170 commented Nov 12, 2018

travis-ci/astyle — Passed, 50 files (+1 files)

Can you fix please?

@@ -198,6 +200,7 @@ class AT_CellularNetwork : public CellularNetwork, public AT_CellularBase {
nsapi_ip_stack_t _ip_stack_type;
int _cid;
Callback<void(nsapi_event_t, intptr_t)> _connection_status_cb;
Callback<void(Supported_Network_Opt)> _ciot_network_support_cb;
Copy link
Contributor

Choose a reason for hiding this comment

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

I would include "opt" in the name of the callback _ciotopt_network_support_cb or _ciot_opt_network_support_cb.

@@ -55,6 +55,7 @@ class CellularNetwork : public NetworkInterface {
optimization. */
SUPPORTED_UE_OPT_MAX
};
typedef Supported_UE_Opt Supported_Network_Opt;
Copy link
Contributor

Choose a reason for hiding this comment

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

What about one type which doesnt have UE or network in the name of the values and it could be used bithe as UE and network values? Like:
enum CIoT_Opt {
CIOT_OPT_NO_SUPPORT
CIOT_OPT_CONTROL_PLANE
....

* @param preferred_opt Preferred CIoT EPS optimizations.
* @param network_support_cb This callback will be called when network optimisation support is known
Copy link
Contributor

Choose a reason for hiding this comment

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

when network CIoT optimisation support

_ciot_network_support_cb(supported_network_opt);
}
}

nsapi_error_t AT_CellularNetwork::get_ciot_optimization_config(Supported_UE_Opt &supported_opt,
Preferred_UE_Opt &preferred_opt)
{
Copy link
Contributor

Choose a reason for hiding this comment

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

This API name should be changed to indicate that this will return UE ciot optimizations.

Copy link
Contributor

Choose a reason for hiding this comment

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

I think a getter for the Network's ciot optimization is needed. Some flag/member to be set in urc_cciotopti()?


/** Get Network CIoT optimizations.
*
* @param supported_opt Supported CIoT EPS optimizations. CIOT_OPT_MAX will be returned,
Copy link
Contributor

Choose a reason for hiding this comment

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

supported_opt -> supported_network_opt Network supported CIoT EPS optimizations.....

@mirelachirica
Copy link
Contributor

Could you still have 2 commits only? One for astyle fixes and one for the "cellular: ciot eps optimization support". Now there is a third commit which has both kind changes.

@mirelachirica
Copy link
Contributor

mirelachirica commented Nov 14, 2018

Now there is a third commit which has both kind changes.

That is not true. My mistake.

Still the CIoT optimization changes better be in one commit than split in two commits which are not functional/logical splits.

@cmonr
Copy link
Contributor

cmonr commented Nov 15, 2018

@TeemuKultala Mind rebasing so that we can get CI started?

@cmonr
Copy link
Contributor

cmonr commented Nov 17, 2018

/morph build

@mbed-ci
Copy link

mbed-ci commented Nov 17, 2018

Build : SUCCESS

Build number : 3657
Build artifacts/logs : http://mbed-os.s3-website-eu-west-1.amazonaws.com/?prefix=builds/8709/

Triggering tests

/morph test
/morph export-build
/morph mbed2-build

@mbed-ci
Copy link

mbed-ci commented Nov 17, 2018

@NirSonnenschein
Copy link
Contributor

@ARMmbed/mbed-os-maintainers note: This one still needs a maintainer review

@0xc0170
Copy link
Contributor

0xc0170 commented Nov 19, 2018

travis-ci/astyle — Passed, 64 files (+4 files)

The best to avoid suprised, can you rebase on top of master to update travis config (this would error with the new config). This still needs to be addressed here, please update the code

@0xc0170
Copy link
Contributor

0xc0170 commented Nov 19, 2018

I fail to find how this is breaking and why it is breaking. Please explain in the commit (the first commit that is the most important should be expanded).

My/our expectation for even functionality change is to have at least one paragraph in the commit message to introduce the change (it's not few lines fix).

-added an API for checking network eps ciot optimization support
-renamed the API for getting the UE parameters
-the API for setting the UE parameters includes now a callback, which
will be called once network support for eps ciot optimization is known
@0xc0170
Copy link
Contributor

0xc0170 commented Nov 20, 2018

Is this breaking, how?

Preferred_UE_Opt preferred_opt) = 0;
virtual nsapi_error_t set_ciot_optimization_config(CIoT_Supported_Opt supported_opt,
CIoT_Preferred_UE_Opt preferred_opt,
Callback<void(CIoT_Supported_Opt)> network_support_cb) = 0;
Copy link
Contributor

@mirelachirica mirelachirica Nov 20, 2018

Choose a reason for hiding this comment

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

@0xc0170: I assume is breaking because of this change and the one from line 278 bellow, renaming
get_ciot_optimization_config ->get_ciot_ue_optimization_config

@bulislaw
Copy link
Member

@AnttiKauppila that's marked as a breaking change, we are committed to maintaining backward compatibility. Is this necessary, can we not massage it so it doesn't break the public APIs?

@AnttiKauppila
Copy link

AnttiKauppila commented Nov 23, 2018

Changing the enum values are also a breaking change, CIoT_ was added, was there a name clash of some sort @TeemuKultala? If we don't change the namings and modify that added callback to be a pointer (defaulting to NULL) then this would be a minor break and would be fine for 5.11.

@ghost
Copy link
Author

ghost commented Nov 23, 2018

@AnttiKauppila The support enum was previously referring to UE values, but is now used for both network and UE values, and therefore more common name taken into use. The preferred enum changed to be consistent with the supported enum. CCIOTOPTI is a Rel-14 feature, so most likely there are few, if any, users for this API

@AnttiKauppila
Copy link

@0xc0170 @bulislaw Let's move this to 5.12, it is not mandatory in 5.11

@0xc0170
Copy link
Contributor

0xc0170 commented Nov 26, 2018

@0xc0170 @bulislaw Let's move this to 5.12, it is not mandatory in 5.11

release version updated

@cmonr cmonr removed the risk: G label Nov 27, 2018
Copy link

@AnttiKauppila AnttiKauppila left a comment

Choose a reason for hiding this comment

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

This is a new feature which is needed in 5.12. This is breaking a functionality which was not even working fully earlier and therefore the "breaking" thing is not critical here.

@AnttiKauppila
Copy link

@0xc0170 @cmonr Is it possible to trigger CI for this?

Copy link
Contributor

@cmonr cmonr left a comment

Choose a reason for hiding this comment

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

LGTM

@cmonr
Copy link
Contributor

cmonr commented Dec 3, 2018

CI started

@mbed-ci
Copy link

mbed-ci commented Dec 3, 2018

Test run: SUCCESS

Summary: 4 of 4 test jobs passed
Build number : 8
Build artifacts
Build logs

@adbridge
Copy link
Contributor

adbridge commented Dec 4, 2018

This needs to go to a feature branch

@ghost
Copy link
Author

ghost commented Dec 5, 2018

This is the feature branch PR: #8979

@ghost ghost mentioned this pull request Dec 5, 2018
@cmonr
Copy link
Contributor

cmonr commented Dec 14, 2018

Closing since #8979 already came in.

@cmonr cmonr closed this Dec 14, 2018
@ghost ghost deleted the cellular_ciot_eps branch March 7, 2019 08:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants