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. |
aabadie
left a comment
There was a problem hiding this comment.
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: |
aabadie
left a comment
There was a problem hiding this comment.
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/defaulton 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.Sis 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.hfile.The major novelty of this PR is that is now possible to receive data over serial.
miscellaneous
pm_rebootwas implemented incpu/mips_pic32_commonsuch that all commands available when runningexamples/defaultare now working on pic32-clicker and pic32-wifire.Testing procedure
I ran
examples/defaultand checked that I could execute commands on pic32-clicker and pic32-wifire.Issues/PRs references
Depends on
#12475.