-
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
cpu: Add PIC32MZ support #6066
cpu: Add PIC32MZ support #6066
Conversation
I was able to build and flash the ipc_pingpong (at least mdb is saying:
but I couldn't get any output. |
Do I assume correctly that UART0 is configured over the mini-USB port? |
Its UART4 on the pic device, but yes the MINI USB header is the one you If you want to power the board off that USB cable you need to set the you might need to press enter a couple of times in your console to wake Neill On 11/21/16 17:45, Oleg Hahm wrote:
|
Ah, true. Forgot about the 9600 baud... Now it is working! 👍 |
Sweet! On 11/21/16 17:57, Oleg Hahm wrote:
|
4003290
to
d273ecd
Compare
Hi all, Why are we running cppcheck on .s and .S files ? I get this error: It looks like this check fails on other (in tree) asm file also (testing in my local docker image): cpu/lpc2387/asmfunc.s:0: error (syntaxError): syntax error Hopefully this is now close to a point where we can merge it, The PIC32 ports should be of more interest as the targets are readily available and cheap. @OlegHahm Can you try this on your board. I ran the unittest suite and that all passed: main(): This is RIOT! (Version: 2017.04-devel-152-g204aa-a2f4afe6403a-pr/add_mips-pic32_mz) |
So cppcheck was failing on the asm style comments (in an asm file) WTF!! |
fa24898
to
4413a76
Compare
I'm seeing errors with objcopy at the end:
Both pic32-wifire and pic32-clicker. GNU objcopy (Gentoo 2.27 p1.0) 2.27 |
f9d717f
to
0075137
Compare
@gebart Are you happy for me to squash this now so we can get this merged ? |
@@ -0,0 +1,9 @@ | |||
# Put defined MCU peripherals here (in alphabetical order) | |||
FEATURES_PROVIDED += periph_timer | |||
FEATURES_PROVIDED += periph_uart |
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.
Why is periph_uart in FEATURES_PROVIDED if there is no UART available?
according to comment at https://github.com/RIOT-OS/RIOT/pull/6066/files#diff-8790a8833e3d374cd14889b9f0e69a2cR18
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.
Uart Tx is implemented but not the full UART API yet.
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.
I tweaked the comment when squashing see e2d7d36
27ed5fc
to
e2d7d36
Compare
@gebart @OlegHahm @haukepetersen Can we finally get this ACK'd and merged ? :-) |
I don't have any of the boards to test it. I'm fine with the change as long as Murdock is fine. |
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.
Clearing my request for comments since my comments were addressed. I have not reviewed the code or tested this on an actual board though. Leaving the formal ACK to @OlegHahm and colleagues.
Please can someone merge this @OlegHahm @haukepetersen @miri64 @kaspar030 :-) |
This code is very similar to #6092, so I'll have more or less the same comments. I'd like to have the comments addressed before merging this one too... |
d70b7ff
to
d3a0c76
Compare
Can some one re-run the CI Please, I don't believe the error. |
Murdock (not Murdock2) is our current last-word, so this PR basically passed CI. |
Cheers, Can we get this merged at last ? |
|
||
|
||
/* | ||
* Without a reference to this function from elsewhere LD throws the whole |
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.
Probably has to do with missing '--whole-archive'. Could you please check if #5757 removes the need for this?
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.
(well, let's not delay the PR because of this. can be checked at a later time.)
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.
Note this is only supported in unvectored mode currently.
specific support for the pic32mz2046efg100 is added along with code common to all pic32 devices and all pic32mz devices.
4cd9789
to
489e404
Compare
This board features a pic32mz2048efg100 PIC32 device with a MIPS core.
Extened the temporary workaround for mips boards to all mips boards until pr#6639 is merged.
7666577
to
0bafa33
Compare
Now squashed some more, Please Please Please can we finally get this merged..... |
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.
I think there are still some things that can substantially be simplified und unified, but this can be done later -> so ACK
Murdock is happy, and we got two ACKs -> lets go @neiljay thanks a lot for all the efforts and your patience! |
Thanks everyone!! |
This PR is dependant on #6060- mergedAdd support for PIC32 MZ devices which use a MIPS M5150 core.
This PR adds basic support for Microchip PIC32MZ devices, including
bootstrapping the device, the build system produces a hex image loadable via
MPLAB-IPE. It has been tested on a Digilent Wifire board.
NOTE: This port requires the use of the GCC based MIPS Codescape SDK toolchain
available here:
https://community.imgtec.com/developers/mips/tools/codescape-mips-sdk/download-codescape-mips-sdk-essentials/
You cannot use Microchip's MPLAB / Harmony tools to build this port.
The port has been tested with the following examples:
hello-world
ipc_pingpong
timer_periodic_wakeup
riot_and_cpp
Note this is a re-work of #5885 with review comments addressed but now broken down into 3 separate PR's of which this is the second.