-
Notifications
You must be signed in to change notification settings - Fork 2k
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
radios: Remove default radio flags from init #10355
Conversation
This adds support to GNRC for enabling radio flags on device initialization
This adds support to LwIP for enabling radio flags on device initialization
This adds support to emb6 for enabling radio flags on device initialization
ACK_REQ and AUTOACK are always forced on independent of the settings as Openthread requires that these are enabled.
@@ -104,8 +104,6 @@ void kw2xrf_reset_phy(kw2xrf_t *dev) | |||
|
|||
kw2xrf_set_rx_watermark(dev, 1); | |||
|
|||
kw2xrf_set_option(dev, KW2XRF_OPT_AUTOACK, true); | |||
kw2xrf_set_option(dev, KW2XRF_OPT_ACK_REQ, true); | |||
kw2xrf_set_option(dev, KW2XRF_OPT_AUTOCCA, true); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I kept the AUTOCCA
flag here as it has a slightly different meaning than the CSMA
netopt. It also has its own netopt option.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
An alternative could be to try setting csma first, and if that fails, try to set autocca. What do you think of this?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
At the moment the kw2xrf is the only radio using the NETOPT_AUTOCCA
option, so I'd rather leave it to a follow up PR if we want this change.
I was thinking, if we combine this CCA feature with some exponential back off timer, we effectively have CSMA right? Would this be something that we want to have for this radio?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We can copy the behavior from kw41zrf. I did exactly what you describe in order to provide csma for that radio.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Someone else will have to provide the PR. I don't have the hardware and have no interest in the kw2xdrf
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Someone else will have to provide the PR. I don't have the hardware and have no interest in the kw2xdrf
Same for me to be honest
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@PeterKietzmann I opened #10364 as a reminder
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. If you want me to ignore this issue, please mark it with the "State: don't stale" label. Thank you for your contributions. |
Contribution description
This removes the default flag configuration from the initialization function of the supported radios. Instead, the upper layer network function configures the required/enabled flags on the radio.
The idea is to have a more centralized configuration of these flags instead of every radio enabling a different set of flags on init.
Testing procedure
Test if every radio correctly configures flags based on the configuration in
sys/include/net/ieee802154.h
Issues/PRs references
requires #9592