iMX283 SD/MMC0 kernel boot hangs

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

iMX283 SD/MMC0 kernel boot hangs

959 Views
nick33
Contributor II

Hi

I have a custom iMX283 board with a single 1Gb Micron DDR2 chip, same as the one used on the iMX28 EVK. I am trying to boot Linux from a micro SD on MMC0. The kernel intermittently hangs during the boot process, sometimes just after decompressing, sometimes towards the middle of the boot sequence and sometimes the kernel actually boots through to a login prompt. When it does, everything seems to work properly. The memory test in the boot_prep bootlet (init-mx28.c) always completes successfully. I am using LTIB as downloaded from the Freesscale website with kernel version 2.6.35. Although the memory test always passes I still suspect that this problem is memory timing related and that the kernel isn't always decompressing properly. One thing I would like to try is to slow down the CPU and memory clocks but am not quite sure how to go about that in the code. I'm also inclined to change some memory settings in the DDR2 register table function in init-mx28.c but am not exactly sure about what to change given that the kernel boots successfully on the EVK board. Any suggestions are greatly appreciated!

Tags (2)
0 Kudos
3 Replies

605 Views
VladanJovanovic
NXP Employee
NXP Employee

If it is same Micron memory as on the i.MX28EVK timing issues should be fine. You might have board issues if layout/routing was not done well on DDR2 lines.

If you still suspect timings, please check this:

http://www.imxdev.org/wiki/index.php?title=Board_bring-up_and_DDR_initialization_tools

0 Kudos

605 Views
jarraj
Contributor I

hi

i am using imx233 kernel boot hang on common iEEE80211 library.it takes 5 min to cross over the line during booting time.when i insert my panel driver after that i faced this problem.

0 Kudos

605 Views
christianvieira
Contributor II

Hello Nichols! I am face same related problem, I think that you could change the CPU and EMI bus frequency in init-mx28.c in the function: void init_clock(). Into these function, has the function: set_emi_frac and the macro:     HW_CLKCTRL_EMI_WR(BF_CLKCTRL_EMI_DIV_XTAL(1)|
              BF_CLKCTRL_EMI_DIV_EMI(2)
             );
That I suppose to be closely with your needs!

In my case, the board reboots even when try decompress linux image. Like you I dont know yet if I have a hardware problem or a wrong DDR2 settings because I am now using a custom board made. My DDR2 is: MT47H64M16HR-25E:H

0 Kudos