
-----Original Message----- From: Simon Kagstrom [mailto:simon.kagstrom@netinsight.net] Sent: Monday, October 05, 2009 8:23 PM To: Stefan Roese Cc: Andrew Dyer; Wolfgang Denk; u-boot@lists.denx.de; Prafulla Wadaskar; Tom Rix Subject: [PATCH v2] arm926ejs: 16-byte align stack to avoid LDRD/STRD problems
U-boot for Marvell Kirkwood boards no longer work after the EABI changes introduced in commit f772acf8a584067033eff1e231fcd1fb3a00d3d9. This turns out to be caused by a stack alignment issue. The armv5te instructions ldrd/strd instructions require 8-byte alignment to work properly (otherwise undefined behavior), and start.S gave the stack a 12-byte alignment.
Tested on an OpenRD base board, where both printouts and ubifs stuff now works.
Hi Simon Thanks for discovering this, nice catch :-) Even this may be applicable for other arm flavors too, if Top agrees
Regards.. Prafulla . .