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

UART input does not work on mps2_an{385,521} #25601

Closed
stephanosio opened this issue May 26, 2020 · 4 comments · Fixed by #32335
Closed

UART input does not work on mps2_an{385,521} #25601

stephanosio opened this issue May 26, 2020 · 4 comments · Fixed by #32335
Assignees
Labels
area: ARM ARM (32-bit) Architecture area: Boards area: Drivers area: UART Universal Asynchronous Receiver-Transmitter bug The issue is a bug, or the PR is fixing a bug priority: low Low impact/importance bug
Milestone

Comments

@stephanosio
Copy link
Member

stephanosio commented May 26, 2020

Describe the bug
UART input does not work on mps2_an385 and mps2_an521 boards (in QEMU).

For example, the tests and samples that rely on the UART input functionality such as drivers/uart/uart_basic_api and shell are unable to accept any user input.

To Reproduce
In QEMU, run any tests and samples that require user input through the UART interface such as:

  • drivers/uart/uart_basic_api
  • samples/subsys/shell/shell_module

Expected behavior
UART user input is echo-ed on the input prompt.

Impact
Board usability is limited

Environment (please complete the following information):

  • OS: Ubuntu 18.04
  • Toolchain: Zephyr SDK 0.11.2
  • Commit SHA: 855b6c1

Additional context
Broken UART driver suspected

Also reproducible in H/W (see #25601 (comment)).

@stephanosio stephanosio added bug The issue is a bug, or the PR is fixing a bug priority: medium Medium impact/importance bug area: Drivers area: ARM ARM (32-bit) Architecture area: UART Universal Asynchronous Receiver-Transmitter area: Boards labels May 26, 2020
@stephanosio stephanosio added this to the v2.3.0 milestone May 26, 2020
@carlescufi carlescufi removed the priority: medium Medium impact/importance bug label May 26, 2020
@carlescufi
Copy link
Member

Removing the priority, we will go through it later today.

@galak
Copy link
Collaborator

galak commented May 26, 2020

@microbuilder can you try one of these tests/samples on a real MPS2 to see if this shows up on real HW as well.

@carlescufi carlescufi added the priority: low Low impact/importance bug label May 26, 2020
@microbuilder
Copy link
Member

Repeatable on actual HW as well (UART input also doesn't work, output from AN521 -> USB Serial does work fine, as is the case with QEMU).

@carlescufi carlescufi modified the milestones: v2.3.0, v2.4.0 Jun 5, 2020
@github-actions
Copy link

github-actions bot commented Aug 5, 2020

This issue has been marked as stale because it has been open (more than) 60 days with no activity. Remove the stale label or add a comment saying that you would like to have the label removed otherwise this issue will automatically be closed in 14 days. Note, that you can always re-open a closed issue at any time.

@github-actions github-actions bot added the Stale label Aug 5, 2020
@galak galak reopened this Feb 13, 2021
@galak galak removed the Stale label Feb 13, 2021
@galak galak assigned galak and unassigned microbuilder Feb 13, 2021
galak added a commit to galak/zephyr that referenced this issue Feb 15, 2021
The CMSDK uart interrupts for TX and RX can either be treated as a
signel interrupt line or distinct interrupts for TX & RX.  In the case
that they were distinct we didn't get the ifdef correct based on DTS.

If we have 2 interrupts in DTS we assume they are for TX & RX and thus
build the interrupt support for distinct TX & RX ISRs.

Also, cleanup handling of UART_2..UART_4 to be similar to how
UART_0/UART_1 code is using DT_INST_IRQN(x).

Fixes zephyrproject-rtos#30770
Fixes zephyrproject-rtos#25601

Signed-off-by: Kumar Gala <[email protected]>
nashif pushed a commit that referenced this issue Feb 15, 2021
The CMSDK uart interrupts for TX and RX can either be treated as a
signel interrupt line or distinct interrupts for TX & RX.  In the case
that they were distinct we didn't get the ifdef correct based on DTS.

If we have 2 interrupts in DTS we assume they are for TX & RX and thus
build the interrupt support for distinct TX & RX ISRs.

Also, cleanup handling of UART_2..UART_4 to be similar to how
UART_0/UART_1 code is using DT_INST_IRQN(x).

Fixes #30770
Fixes #25601

Signed-off-by: Kumar Gala <[email protected]>
zephyrbot pushed a commit that referenced this issue Apr 7, 2021
The CMSDK uart interrupts for TX and RX can either be treated as a
signel interrupt line or distinct interrupts for TX & RX.  In the case
that they were distinct we didn't get the ifdef correct based on DTS.

If we have 2 interrupts in DTS we assume they are for TX & RX and thus
build the interrupt support for distinct TX & RX ISRs.

Also, cleanup handling of UART_2..UART_4 to be similar to how
UART_0/UART_1 code is using DT_INST_IRQN(x).

Fixes #30770
Fixes #25601

Signed-off-by: Kumar Gala <[email protected]>
galak added a commit that referenced this issue Apr 8, 2021
The CMSDK uart interrupts for TX and RX can either be treated as a
signel interrupt line or distinct interrupts for TX & RX.  In the case
that they were distinct we didn't get the ifdef correct based on DTS.

If we have 2 interrupts in DTS we assume they are for TX & RX and thus
build the interrupt support for distinct TX & RX ISRs.

Also, cleanup handling of UART_2..UART_4 to be similar to how
UART_0/UART_1 code is using DT_INST_IRQN(x).

Fixes #30770
Fixes #25601

Signed-off-by: Kumar Gala <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: ARM ARM (32-bit) Architecture area: Boards area: Drivers area: UART Universal Asynchronous Receiver-Transmitter bug The issue is a bug, or the PR is fixing a bug priority: low Low impact/importance bug
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants