-
Notifications
You must be signed in to change notification settings - Fork 3k
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
Cypress: FPGA: UART random failure #11860
Comments
please report SHA, helps to get fixed version, edit the above to contain SHA. |
Done. Thanks. |
Internal Jira reference: https://jira.arm.com/browse/MBOTRIAGE-2315 |
@mprse Please take a llok if you have time. |
@mprse I see this exception from tester (FPGA) side. |
So if you run only one test case (any) it fails randomly?
What does it mean? What is the purpose of removing these lines: mbed-os/TESTS/mbed_hal_fpga_ci_test_shield/uart/main.cpp Lines 252 to 271 in 6993724
It looks like something bad happens inside serial interrupt handler - some disallowed operation and we got an exception. @fkjagodzinski have you seen such behavior? |
Yes.
It is not important. I commented because I wanted to isolate the problem. |
This looks suspicious. On current master (and also the SHA you mentioned -- f1848f9) you should not remove line 252 alone; you should also remove 249 & 251. mbed-os/TESTS/mbed_hal_fpga_ci_test_shield/uart/main.cpp Lines 249 to 252 in 2e96145
I do not have any Cypress target with an Arduino form factor to test with FPGA shield but I can see a similar crash on K64F if I comment out 252-271:
If you like to skip mbed-os/TESTS/mbed_hal_fpga_ci_test_shield/uart/main.cpp Lines 239 to 269 in 2e96145
|
@mprse @0xc0170 Please take a look @fkjagodzinski can reproduce this issue:
|
I think that we are missing the point here. @fkjagodzinski reproduced your failure on I think that we should start again since I think that no one understands now where or even if we have a problem. Please provide full test output with the failure (without modifying the test). |
OK. |
@mprse Please see test output (without modifying the test):
No responce... |
@mprse This test expects data from tester (FPGA): |
I'm on sick leave. Will chcek later. So the last call in the test is enabling the rx interrupt. And then you land in cyhal_uart_getc()? It looks like the rx interrupt fired and it tries to get data from uart buffer... This is probably some issue if getc is called immediately after enabling rx interrupt. |
Good point @mprse. If the
@yarbcy I suggest looking into
|
@mprse Get well. @fkjagodzinski This test consist of 4 test cases:
I tried Run 4) separatelly. But it stucked on line 255. It looks like test issue. |
I don't see what is changed. Can you rather include |
Hello again. According to the defined behavior of Lines 141 to 145 in 7177d8f
In the test, we are enabling RX interrupt which should fire when Receive Data Register is full, however it looks like the interrupt is triggered just after enabling it (where no data should be received). This means that for sure this is a Cypress driver issue. In the following line we can see that the following interrupts are enabled ( mbed-os/targets/TARGET_Cypress/TARGET_PSOC6/cy_serial_api.c Lines 152 to 153 in 7177d8f
I suggest leaving only |
Created #12052 |
Description of defect
Cypress: FPGA: UART random failure
Step to reproduce:
Expected: PASS
Actual:
tester.reset() returned:
This test PASSED if comment line 251.
Target(s) affected by this defect ?
All Cypress boards. Tested on CY8CKIT_062_WIFI_BT
Toolchain(s) (name and version) displaying this defect ?
Tested on GCC_ARM
What version of Mbed-os are you using (tag or sha) ?
Latest from main.
f1848f9
What version(s) of tools are you using. List all that apply (E.g. mbed-cli)
N/A
How is this defect reproduced ?
50/50
The text was updated successfully, but these errors were encountered: