Skip to content

Conversation

@marcemmers
Copy link
Contributor

@marcemmers marcemmers commented Nov 16, 2020

Summary of changes

This allows for changes to the buffers allocated in NRFCordioHCIDriver.cpp. Since the amount of buffers can be configured using the mbed_app.json it is only natural to also configure the buffer sizes that go with the number of buffers.

I also removed the confusing configuration settings used only by the NRF52840 which overruled other settings made by the cordio-ll config.

Impact of changes

No functionality change, only configuration changes

Migration actions required

All the default settings remained the same and if no custom configuration is used in mbed_app.json the no actions are required.
If you use the NRF52840 and have overruled any of the following settings you may need to change:

  • "cordio-ll-nrf52840.phy-coded-support" into "cordio-ll.phy-coded-support"
  • "cordio-ll-nrf52840.extended-advertising-size" into "cordio-ll.extended-advertising-size"
  • "cordio-ll-nrf52840.max-acl-size" into "cordio-ll.max-acl-size"
  • "cordio-ll-nrf52840.tx-buffers" into "cordio-ll.tx-buffers"

Documentation


Pull request type

[] Patch update (Bug fix / Target update / Docs update / Test update / Refactor)
[x] Feature update (New feature / Functionality change / New API)
[] Major update (Breaking change E.g. Return code change / API behaviour change)

Test results

[X] No Tests required for this change (E.g docs only update)
[] Covered by existing mbed-os tests (Greentea or Unittest)
[] Tests / results supplied as part of this PR

Reviewers


@ciarmcom ciarmcom requested review from a team November 16, 2020 16:30
@ciarmcom
Copy link
Member

@marcemmers, thank you for your changes.
@ARMmbed/mbed-os-connectivity @ARMmbed/mbed-os-maintainers please review.

Copy link
Member

@pan- pan- left a comment

Choose a reason for hiding this comment

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

Thanks @marcemmers, this is a useful addition. LGTM

"macro_name": "CHCI_TR_CUSTOM"
}
},
"target_overrides": {
Copy link
Member

Choose a reason for hiding this comment

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

Ideally this would be in the NRF5X driver but it is not possible du to the build system limitations.

Copy link
Contributor

Choose a reason for hiding this comment

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

Can we fix it in CMake ? If yes, we should

@mergify mergify bot added needs: CI and removed needs: review labels Nov 17, 2020
{
"name": "cordio-ll-nrf52840",
"config": {
"phy-coded-support": {
Copy link
Member

Choose a reason for hiding this comment

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

Wouldn't it be possible to preserve backward compatibility by keeping these parameters and overriding the cordio LL one if defined ?

For example in the HCI driver:

#if defined(MBED_CONF_CORDIO_LL_NRF52840_MAX_ACL_SIZE)
#warning "Please override the confirguration parameter cordio-ll.max-acl-size instead of cordio-ll-nrf52840.max-acl-size"
#undef MBED_CONF_CORDIO_LL_MAX_ACL_SIZE
#define MBED_CONF_CORDIO_LL_MAX_ACL_SIZE MBED_CONF_CORDIO_LL_NRF52840_MAX_ACL_SIZE

It would speed up this PR integration.

Copy link
Contributor Author

@marcemmers marcemmers Nov 17, 2020

Choose a reason for hiding this comment

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

One of the reasons for this PR was to get rid of those confusing redefinitions that are already being used in NRFCordioHCIDriver.cpp. In our mbed_config.h we have values specific for the NRF52840 and normal cordio_ll values and its quite hard to follow, especially when not looking at the source code.

It might be better to split the PR into two separate PRs. One will add the options the configure the buffers used in NRFCordioHCIDriver.cpp which stay compatible. The other will be breaking due to the cleaner way of configuring the ACL size etc.

@0xc0170
Copy link
Contributor

0xc0170 commented Nov 17, 2020

CI started

@mbed-ci
Copy link

mbed-ci commented Nov 18, 2020

Jenkins CI Test : ✔️ SUCCESS

Build Number: 1 | 🔒 Jenkins CI Job | 🌐 Logs & Artifacts

CLICK for Detailed Summary

jobs Status
jenkins-ci/mbed-os-ci_unittests ✔️
jenkins-ci/mbed-os-ci_build-example-ARM ✔️
jenkins-ci/mbed-os-ci_build-greentea-ARM ✔️
jenkins-ci/mbed-os-ci_cmake-example-ARM ✔️
jenkins-ci/mbed-os-ci_build-cloud-example-ARM ✔️
jenkins-ci/mbed-os-ci_cmake-example-GCC_ARM ✔️
jenkins-ci/mbed-os-ci_build-greentea-GCC_ARM ✔️
jenkins-ci/mbed-os-ci_build-cloud-example-GCC_ARM ✔️
jenkins-ci/mbed-os-ci_build-example-GCC_ARM ✔️
jenkins-ci/mbed-os-ci_dynamic-memory-usage ✔️
jenkins-ci/mbed-os-ci_greentea-test ✔️
jenkins-ci/mbed-os-ci_cmake-example-test ✔️
jenkins-ci/mbed-os-ci_cloud-client-pytest ✔️

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.

6 participants