Hi hak8or
you are right, there is "some magic" in i.MX23/MX28 boot process.
in general boot process is described in sect.12.11 SD/MMC Boot Mode
MCIMX28RM (the same is for i.MX233), IMX23RM Chapter 35 Boot Modes,
sect.1.1 Boot Stream attached i.MX23_Linux_BSP_UserGuide.pdf,
AN4199 rev.1 9_2010.pdf. Some regulators (such as vddmem) are
not enabled by default, they should be enabled by software, one can find default
values in Chapter 32 Power Supply i.MX23 RM.
Some initialization code is performed by iROM (check attached uboot.db, link.lds,
init-mx23.c from Freescale BSP bootlets sources ) from internal iRAM, then after DDR
initialization uboot/linux code is loaded to DDR.
Ii your case (seems) processor continuosly resets due to some brownout,
before entering to DDR initialization. You can attach jtag debugger and test memory with
debugger and try to run bootlets with jtag. If your board design is based on
olinuxino board, then one needs to use images for olinuxino board.
If board is based on Freescale iMX23 Reference Schematics
then
one can use Freescale BSP L2.6.31_10.05.00_SDK_SOURCE
: Linux 2.6.31 Source Code Files.
Best regards
igor