On Fri, Nov 25, 2011 at 11:34 PM, Felix Ruess
<address@hidden> wrote:
Hi all,
There seems to be a problem with things not working correctly on the
stm32 when using a recent gcc (4.5 or 4.6).
When you are compiling the ap target, the gcc version is printed.
My Experiences so far:
When building and then flashing via JTAG the ap doesn't seem to come
up again properly. Only after power
cycling it starts up again and works as normal (as far as I can tell).
Hello Felix, I have experienced the same behavior but with both ARM7 (Atmel) and the STM32.
I was employing the Olimex's JTAG (2232 based) with openocd. I have solved this issue employing "reset init" , it provides as much of a cold (power up) reset as practical, let a little pause or sleep, and the continue.
In my experience with this JTAG, is that sometimes (I do not know) after the reset the chip enters in debug mode again, therefore the reset is not accomplished rightly.
I do not know if it depends on the compiler too, in my case it was independent.
Seems to work fine with gcc-4.4...
Unfortunately I could not get gcc-4.4 to build on oneiric...
I just build a new paparazzi-arm-multilib package with
gcc-linaro-4.6-2011.09-1 locally, get the same behaviour as with
gcc-4.5
Also uploaded the source package to
https://launchpad.net/~paparazzi-uav/+archive/testing, so this should
be built and available within the next hours...
Now from the simple tests I did it actually looks like if it works
properly if I change the optimization from -Os (optimizing for size)
to -O (same as -O1)!
(in conf/Makefile.stm32 line 36)
Maybe we should just not optimize for size anymore?
Ideas, test results, etc. are very welcome!!
mmm Linaro focuses more in "high" microcontrollers isn't it? I prefeer vanilla for cortex m0-4 / arm7.
Cheers, Héctor