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

nimble/phy: Introduce common phy for nRF52 and nRF53 #1354

Merged
merged 9 commits into from
Sep 14, 2022

Conversation

andrzej-kaczmarek
Copy link
Contributor

This is first cut of common nrf5x phy which works for both nRF52 and nRF53. The goal is to have the same code used on both series in order to make maintenance easier and have the same fixes and features supported.

@andrzej-kaczmarek andrzej-kaczmarek force-pushed the phy-nrf5x branch 3 times, most recently from bc63ea0 to 176ec7a Compare September 11, 2022 10:29
@andrzej-kaczmarek
Copy link
Contributor Author

rebased on #1345

@@ -67,6 +67,7 @@ void phy_fem_enable_pa(void);
#endif
#if PHY_USE_FEM_LNA
void phy_fem_enable_lna(void);
void phy_fem_disable(void);
Copy link
Contributor

Choose a reason for hiding this comment

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

should be under PHY_USE_FEM only

@@ -29,3 +29,8 @@ pkg.apis: ble_driver
pkg.deps:
- nimble
- nimble/controller

Copy link
Contributor

Choose a reason for hiding this comment

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

this will eventually use apache/mynewt-core#2869 ?

This is starting point for common phy for nRF52 and nRF53 which will
make maintaining both much easier. For now this is just c&p of nrf52
phy to make changes easier to follow.

Note that nrf5x phy will not support nRF51 since, apart from other
differences, it does not support hardware tifs which is required for
nRF51.
This moves most of code specific to nRF52 series to separate file and
creates private phy APIs to call that code.

The moved code is anything related to PPI: FEM, GPIO debug and PPI
itself.
This adds code for nRF5340 net core.
This adds proper support for FEM turn on time. Max supported turn on
time is 90us due to some optimizations in code, but that should be
enough - we can change it later if needed.
Radio enable takes 2 ticks, so if FEM turn on time is more than that we
need to account for extra tick in scheduling offset.
@andrzej-kaczmarek
Copy link
Contributor Author

@haukepetersen fyi, this needs to be updated in RIOT

@apache-mynewt-bot
Copy link

Style check summary

No suggestions at this time!


#if PHY_USE_FEM
void
phy_fem_init()
Copy link
Contributor

Choose a reason for hiding this comment

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

nitpick phe_fem_init(void)

@andrzej-kaczmarek andrzej-kaczmarek merged commit 3b02d6b into apache:master Sep 14, 2022
@andrzej-kaczmarek andrzej-kaczmarek deleted the phy-nrf5x branch September 14, 2022 10:52
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