-
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
UART RX implementation on PIC32 devices #13094
Conversation
1d88f20
to
dd77b56
Compare
This PR is now ready for review. |
dd77b56
to
a931014
Compare
Interestingly, a previous murdock build revealed that MIPS toolchain uses a different type for $ echo | gcc -E -xc -include 'stddef.h' - | grep size_t
typedef long unsigned int size_t;
$ echo | arm-none-eabi-gcc -E -xc -include 'stddef.h' - | grep size_t
typedef unsigned int size_t;
$ echo | avr-gcc -E -xc -include 'stddef.h' - | grep size_t
typedef unsigned int size_t;
$ echo | mips-mti-elf-gcc -E -xc -include 'stddef.h' - | grep size_t
typedef long unsigned int size_t;
$ echo | msp430-gcc -E -xc -include 'stddef.h' - | grep size_t
typedef unsigned int size_t;
$ echo | riscv-none-embed-gcc -E -xc -include 'stddef.h' - | grep size_t
typedef unsigned int size_t;
$ echo | xtensa-esp32-elf-gcc -E -xc -include 'stddef.h' - | grep size_t
typedef unsigned int size_t;
$ echo | xtensa-esp8266-elf-gcc -E -xc -include 'stddef.h' - | grep size_t
typedef unsigned int size_t;
$ echo | clang -E -xc -include 'stddef.h' - | grep size_t
typedef long unsigned int size_t;
|
a931014
to
4cc65fe
Compare
In the last Murdock build, all lwip related tests failed because it could not clone lwip repository. However, I was able to do it on my machine. |
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.
This is a major refactoring and unfortunately, I don't have the hardware to test this.
I have a couple of comments regarding the changes related to the build system.
4cc65fe
to
3785ec9
Compare
Indeed but I could split this PR in several parts:
Let me know what is preferred. Concerning the lack of hardware, I do have a spare WiFire board. Send me an email if you are interested. |
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
This file used to be part of the toolchain (at least in 2016.05-03 version) but is not part of the current MIPS toolchain (2018-09-03). Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
3785ec9
to
bc0346e
Compare
@francois-berder, I can't test this PR and I don't who is able to test except you. If you could paste the output of the build/flash/term of |
In this case, here are some logs for both clicker and wifire: |
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.
All good from my side. Thanks for providing the output @francois-berder !
ACK and go!
Contribution description
This PR finally implements UART RX on PIC32 devices and makes it possible to run
examples/default
on pic32-clicker and pic32-wifire.GPIO
Have a look at PR #12475. GPIOs are now working very similarly that on STM32.
Interrupts
Interrupts were refactored: we assume devices use EIC (that is true since Malta board was removed from RIOT) and the implementation is similar to RISCV FE310 CPU EIC.
I also found out that updating the MIPS toolchain completely broke interrupts due to a missing file (
mips_excpt_isr.S
) in 2018.09-03 that used to be present in 2016.05-03 version. Somips_excpt_isr.S
is now present incpu/misp32r2_common
.UART
UART peripheral driver was also refactored to make it more similar to STM32 UART driver implementation. UART configuration is now defined in board
periph_conf.h
file.The major novelty of this PR is that is now possible to receive data over serial.
miscellaneous
pm_reboot
was implemented incpu/mips_pic32_common
such that all commands available when runningexamples/default
are now working on pic32-clicker and pic32-wifire.Testing procedure
I ran
examples/default
and checked that I could execute commands on pic32-clicker and pic32-wifire.Issues/PRs references
Depends on
#12475.