
On 09/08/2012 18:01, Tom Rini wrote:
Hey all,
Hi Tom,
As Allen Martin noted, on tegra platforms a bug is exposed when using certain toolchains that currently calls to lowlevel_init must be calls to another assembly function as the stack is not explicitly setup / saved and thus register corruption can occur. Over in TI-land Aneesh V wrote a lowlevel_init that sets up the stack and calls s_init which is a C function that does what lowlevel_init does on other platforms. The code is generic to at least v7, so this series moves it to arch/arm/cpu/armv7.
Then as far as I can see in your patch, other armv7 can profit as well, such as the i.MX5 and i.MX6 ;-)
The only issue is to generalize the entry point for the function to setup PLL and or pinmux. It should be enough to change lowlevel_init to s_init in i.MX to do the job.
Best regards, Stefano