Hey all,
I was trying to boot Linux on my custom board with i.MX23 from microSD card (1GB). The design is pretty much similar to the ref design, but without the SD power gate control (I gotta use PMW3 for other application). This is what the ROM bootloader prints on the terminal,
PowerPrep start initialize power...
Battery Voltage = 3.96V
boot from battery. 5v input not detected
May 30 201000:24:36
EMI_CTRL 0x1C084040
FRAC 0x92926192
init_ddr_mt46v32m16_133Mhz
power 0x00820710
Frac 0x92926192
start change cpu freq
hbus 0x00000003
cpu 0x00010001
Data Abortr14_
PowerPrep start initialize power...
It's stuck repeating this message over and over..
any help appreciated
sure I,m using Micron DDR MT46V32M16
I changed the frequency to 96MHz and boot Linux successfully.
The thing is, I designed a 4 layer low cost board, so I compromised the EMI a little bit; seems I'm paying for that :-)
Thank you all
This is usually indicative of a DDR problem.
The above message indicates you're using init_ddr_mt46v32m16_133Mhz - is this the DDR1 part on your board?
It is possible to run at 96MHz. In boot_prep/init.c, uncomment the #define EMI_96M to enable this. Suggest you try this and see if you can get the kernel uncompressed.
Now I get something like this on the terminal,
Uncompressing Linux.............................................................................................................................................
crc error
-- System halted
what would probably be the issue and what is the work around?
btw: Can I run the DDR at lower speeds, like 96MHz or even 48MHz?
Hi,
Have you done Length matching of DDR Data signals? Just insert a simple memory write and read code in the linux prep. Check if you are able to read the same data you wrote.
Balaji.V
Sure I can do that, but you see what I can't understand is:
right before it prints "Data abortr14_" the VDD4p2 and VDDRAM (2V5) collapses and I hear a 'tzzzzzzzzzz' sound somewhere on the board, but all the other power rails remain intact. This is like a nightmare!!!
I tried to trace the power_prep and boot_prep sources, and seems it is done with those steps and the data abort occurs just before it tries to load the kernel, but I can't even think about why the VDDM and VDD4p2 collapses!
I'd suggest to add some printfs to bootlets, rebuild them and try to locate more precisely what fails. bootlets are very simple and straightforward C code so it should be easy to locate the reason boot fails.
Vladan