i.MX53 bare-metal/RTOS Development

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

i.MX53 bare-metal/RTOS Development

11,865 Views
ChrisPonder
Contributor I
Hi, I was wondering if anyone else is doing bare-metal/small RTOS development on the i.MX53 CPU and what tool-chain/RTOS they are using. Thanks
Tags (1)
0 Kudos
Reply
27 Replies

1,816 Views
Felix1z
Contributor I

let's start with basics -- j-link will work only if it's newer version, with swd support. best course of action is to acquire gdb server license for it -- this will allow you to debug using gdb. gdb server only works on windows, but you can connect to it from linux box. I prefer do develop using linux, and kdevelop, but it's not a must. if you're new to cross compiling, get yourself any latest arm-elf toolchain -- make sure it's arm-elf and not arm-linux! Since you're developing on bare metal (freertos is still considered as bare metal, since you don't have elf loader/run time linker in it), you need properly linked elf.

i would recommend reading http://download.ronetix.info/toolchains/arm/arm_cross_development_guide.pdf

for start.

As far as commercial ide/compilers -- i would not recommend any one of them... they all have their pros and cons. I've used crossworks for a while -- they have CTL (cross tasking library), that you can use in place of rtos, to have basic threads, but as i said, every one has pros and cons. Today it's much easier to use vanilla gcc toolchain

0 Kudos
Reply

1,816 Views
ChrisPonder
Contributor I
I guess that was a little vague, sorry. I am only just starting out so many of my questions seem daft. I have a Segger J-Link for JTAG operation and 30-day trials of most of the commercial IDEs. ARM DS-5 doesn't support the J-Link Keil doesn't support the Cortex-A8 Greenhills haven't bothered to get back to me IAR seems ok CrossWorks I have only just started looking at I am at the point of trying the Eclipse/GNU tools using gnuarmeclipse and yagarto. I have tried compiling the K60 project in IAR but the portasm.s throws some register errors: "Error[446]: The selected cpu/core does not support this status register" [82] msr msp, r0 [88] mrs r0, psp [97] msr basepri, r0 [100] msr basepri, r0 [106] msr psp, r0 [115] msr BASEPRI, R0 [125] MSR BASEPRI, R0 [137] msr psp, r0 [139] msr basepri, r0 [151] msr msp, r0 My guess is that it is three different registers msp psp basepri Since R0 is used elsewhere, but I also suspect that porting cannot be as simple as getting this file to compile
0 Kudos
Reply

1,816 Views
Felix1z
Contributor I

what are you having issues with? also -- do you have jtag probe?, since it will be your best tool until you'll be convinced, that everything runs smoothly... 

Chris Ponder said:

Yay, not alone! :)

Felix, that is exactly what I am trying to do, I don't suppose you have any tips for doing this?
0 Kudos
Reply

1,816 Views
ChrisPonder
Contributor I
Yay, not alone! :) Felix, that is exactly what I am trying to do, I don't suppose you have any tips for doing this?
0 Kudos
Reply

1,816 Views
Felix1z
Contributor I

We're doing GCC/FREERTOS on imx53. i've used K60 port and modified it to support imx53 specifics. GCC is vanilla 4.5.3, binutils vanilla 2.22.

0 Kudos
Reply

1,816 Views
VladanJovanovic
NXP Employee
NXP Employee

No there's others as well :-)

Codesourcery toolchains are one option. Or then any of the commercial arm compiler providers...

0 Kudos
Reply

1,816 Views
ChrisPonder
Contributor I
Are we really the only ones doing bare-bone development on the i.MX53?
0 Kudos
Reply