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

sys: Revert #11310 (make stdio_rx optional) #11594

Closed
wants to merge 1 commit into from

Conversation

jcarrano
Copy link
Contributor

Contribution description

This change was breaking (dependencies for) ethos, and other serial users, as well as an unknown number of external apps (API change.).

See #11525 for more details.

The reverted PR's functionality can be reintroduced once issues have been addressed. In other words, this revert is not to contest the feature itself, but its current embodiment.

Testing procedure

(taken from #11525)

run:

make -C tests/xtimer_usleep flash
make -C tests/xtimer_usleep test

After the revert the test works again (i.e. it waits for input before initiating)

Issues/PRs references

Fixes #11525.

@jcarrano jcarrano added Type: bug The issue reports a bug / The PR fixes a bug (including spelling errors) CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR labels May 28, 2019
@jcarrano jcarrano requested review from cladmi and MrKevinWeiss May 28, 2019 12:59
…ional"

This change was breaking (dependencies for) ethos, and other serial users,
as well as an unknown number of external apps (API change.).
See RIOT-OS#11525 for more details.

Fixes RIOT-OS#11525.
MrKevinWeiss
MrKevinWeiss previously approved these changes May 28, 2019
Copy link
Contributor

@MrKevinWeiss MrKevinWeiss left a comment

Choose a reason for hiding this comment

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

Looked over the revert, it looks accurate. I was able to find the error in master when testing on the nucleo-f091rc. I think we should revert until a better solution is provided! ACK.

Copy link
Contributor

@kaspar030 kaspar030 left a comment

Choose a reason for hiding this comment

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

Why not use the proposed "keep change but restore original behaviour" by making stdio_uart_rx a default module?

@aabadie
Copy link
Contributor

aabadie commented May 28, 2019

I'm against this because of low power on STM32, which I think is more important than having getchar working alone (e.g. without the shell) in a couple of tests.

@MrKevinWeiss
Copy link
Contributor

I think it was just nobody did that. I would also like @aabadie opinion since he seemed to really like the rx being disabled.

@MrKevinWeiss MrKevinWeiss self-requested a review May 28, 2019 14:24
@MrKevinWeiss MrKevinWeiss dismissed their stale review May 28, 2019 14:24

Not actually resolved

@aabadie
Copy link
Contributor

aabadie commented May 28, 2019

As I said in the original issue, I think having getchar working can be easily achieved by pulling a dedicated in an application requiring it. This is the usual RIOT way: only pull what's necessary.

@MrKevinWeiss
Copy link
Contributor

Ok as it stands it breaks certain things... Aside from reverting how should we fix this?

@jcarrano
Copy link
Contributor Author

I insist: if people want to have uart-rx disabled so they can have low power then OK. The issue here is having a tidy solution but also not keeping #11525 until such solution is found.

By reverting #11310 we can have the time give a nice answer to this UART vs PM issue without the pressure of having things broken and an upcoming release.

@aabadie
Copy link
Contributor

aabadie commented May 28, 2019

having things broken and an upcoming release.

IMHO the "broken things" are a corner case and very minor compared to having low-power working correctly (and easily).

@aabadie
Copy link
Contributor

aabadie commented May 28, 2019

Note that other solutions were already proposed but didn't get that much comments.

@cladmi
Copy link
Contributor

cladmi commented May 28, 2019

If a pull request breaks 2 applications in RIOT makes 5 applications inconsistently configured, and 2 documentations wrong, it is a problem.
Addressing these issues should have been done in the original pull request.
Getting back to the state before pull request state is a good trade-off.

Two weeks ago, the problem was issued and no reaction or fix or pull request proposal was done.
Meaning, nobody wants to really maintain RIOT for this change or assume its review.

Note that other solutions were already proposed but didn't get that much comments.

These should have been in the first pull request, or answered by people interested in the change.

Copy link
Contributor

@cladmi cladmi left a comment

Choose a reason for hiding this comment

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

ACK nobody proposed a fix pull request for the 7 application and 2 documentation break.

The pull request can be re-issued in a working state.

@aabadie
Copy link
Contributor

aabadie commented May 28, 2019

#11598 is proposing the fix I had in mind. I hope it'll make everyone happy :)

@aabadie
Copy link
Contributor

aabadie commented May 29, 2019

nobody proposed a fix pull request for the 7 application and 2 documentation break.

#11598 does it now. And to help making the fix more accurate, it would be great to precisely list those applications, what's broken, and those 2 documentation misses. I could only find 3 applications related using git grep.

@cladmi
Copy link
Contributor

cladmi commented Jun 13, 2019

Why not use the proposed "keep change but restore original behaviour" by making stdio_uart_rx a default module?

This breaks boards using stdio_rtt without providing periph_uart.
So this is not a valid solution.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR Type: bug The issue reports a bug / The PR fixes a bug (including spelling errors)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

API change, uart input not working anymore on previously working setups
5 participants