Hello everybody,
#Test Setup
Ubuntu 12.04 x64 on Intel
OMAP 4460, Pandaboard ES Rev B1
Toolchain: arm-none-eabi- (Sourcery CodeBench Lite 2013.05-23)
U-Boot SPL 2011.12-rc1 (Sep 06 2013 - 15:42:53)
#Test Setup
We're just getting started with the A9 dual cores and our first exercise is to try to run two images of the same binary code on both of the A9 cores.
All code does is setup the respective PADCONF and blink the onboard LEDs D1 and D2:
- Binary 1: CPU0 blinks LED1 (GPIO_110).
- Binary 2: CPU1 blinks LED2 (GPIO_WK8).
So, the only difference between the two binaries is the GPIO that is controlled.
We also have Startup code that takes care of setting the entry points for CPU0 and CPU1 and for waking up CPU1.
The problem we face is that, the LED controlled by CPU1 always blinks at a much lower rate than that controlled by CPU0.
We have tried all possible combinations, switched the LEDs among the cores. The code attached tries to blink an LED on GPIO_137.
We still face the same issue, i.e. that the LED controlled by CPU1 always blinks much slower than the one controlled by CPU0.
We have tried to read the OMAP4460 TRM but we unable to find a setting that sets the CPU1 clock frequency.
Any pointers to help us look in the right direction is greatly appreciated. I have attached the code in this post.
Startup Script: 5734.startup.S
CPU0 Code: 0676.panda0.asm
CPU1 Code: 3513.panda1.asm
Thanks in advance for your help and support.