i.MX6UL eMMC boot

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

i.MX6UL eMMC boot

跳至解决方案
3,487 次查看
petrkulhavy
Contributor I

Hi,

I'm trying to bootstrap i.MX6UL to boot from eMMC. The BOOT_MODE is set to 00 (boot from fuses) and the eMMC 4.4 is connected to USDHC2 using 8-bits.

To minimize the risk of breaking the board I'm writing the fuses one by one. So I wrote in u-boot:

fuse prog 0 5 0x860

fuse prog 0 6 0x10

In my view this should make the RBL boot from eMMC interface 2 (though using 1-bit interface). Unfortunately the device still ends up in serial update. I'm trying to figure out what is wrong. Is there some possibility for debug? E.g. to read some SBC register to see what happened?

My eMMC has 2 boot partitions. Does the RBL attempt to load the image from the "normal area", or from a boot partition? And how can it be influenced?

I loaded the image into both the normal area as well as boot partition 0, at offset 1kiB. Unfortunately none of it worked so far.

Thanks

Petr

标签 (1)
标记 (3)
0 项奖励
回复
1 解答
2,900 次查看
igorpadykov
NXP Employee
NXP Employee

Hi Petr

boot information is provided in SRC_SBMR1,2 registers and one can attach jtag to check it.

However before booting one needs to run ddr test

i.MX6/7 DDR Stress Test Tool V2.70 

and rebuild uboot with new calibration coefficients found from ddr test (uboot/

board/freescale/mx6ullevk/imximage.cfg).

Regarding writing to emmc one can look at mfg tools (script mfgtool2-yocto-mx-evk-emmc.vbs),

the same commands may be used for programming emmc in linux.

Mfg Tool can be found on

i.MX Software|NXP 

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

在原帖中查看解决方案

0 项奖励
回复
4 回复数
2,900 次查看
petrkulhavy
Contributor I

Hi Igor,

thank you for your reply. With the help of SBMR1 and SBMR2 registers I could debug and resolve the issue.

Best regards

Petr

0 项奖励
回复
2,900 次查看
anthony-loiseau-act
Contributor III

I am facing a very similar issue, and looking at SBMR registers I fail to find what is wrong.

Is it possible for you to give details about what you discovered in those registers?

Regards.

0 项奖励
回复
2,900 次查看
anthony-loiseau-act
Contributor III

I reply my old question in case this can help anyone.

My issue was Linux kernel not up-to-date for kobs-ng to work (4.9.x+fslc iirc). Looking kobs-ng output I was able to read that something like raw access failed (trace was located in the middle of the output), and kobs-ng continue the operation after that but the result was a mis-initialized SPL partition.

Switching to a more recent kernel branch fixed this (4.9-1.0.x-imx iirc).

0 项奖励
回复
2,901 次查看
igorpadykov
NXP Employee
NXP Employee

Hi Petr

boot information is provided in SRC_SBMR1,2 registers and one can attach jtag to check it.

However before booting one needs to run ddr test

i.MX6/7 DDR Stress Test Tool V2.70 

and rebuild uboot with new calibration coefficients found from ddr test (uboot/

board/freescale/mx6ullevk/imximage.cfg).

Regarding writing to emmc one can look at mfg tools (script mfgtool2-yocto-mx-evk-emmc.vbs),

the same commands may be used for programming emmc in linux.

Mfg Tool can be found on

i.MX Software|NXP 

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 项奖励
回复