Start u-boot from u-boot using go command

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

Start u-boot from u-boot using go command

1,844件の閲覧回数
ciaran_lequeux
Contributor I

Hello friends,

I have an imx6, u-boot booting on emmc, SYS_TEXT_BASE = 17800000

When i "go 0x17800000", it restart, good.

Now i wan't to start an other uboot from ram.

I've compiled it with SYS_TEXT_BASE = 17900000

I do :

tftp 0x17900000 u-boot.bin

go 0x7900000

It write "Starting application at ********" and it was blocked.

With lauterbach trace32 :

I see "stopped by vector catch", it's a data abord (SDABORT)

It failed in board_init_f at :

if (mxc_get_clock(MXC_ARM_CLK) == 396000000)
set_ahb_rate(132000000);

 

If i comment it, it fail after....

It's at my work, i wan't to use "go" command, not sb loader or other

Thanks for your help :smileyhappy:

0 件の賞賛
1 返信

1,541件の閲覧回数
igorpadykov
NXP Employee
NXP Employee

Hi lequxu

once started uboot initializes processor clock tree using special procedures

described in sect.18.5.1.5 CCM internal clock generation, sect.18.5.1.5.6 Divider change handshake,

sect.18.5.1.7 Clock Switching Multiplexers, sect.18.5.1.9 MMDC handshake i.MX6DQ Reference Manual.

So when running second uboot instance it tries to configure clocks which are already initialized.

Another document which describes clock configuration rules is EB790 Configuration of Phase Fractional Dividers

https://www.nxp.com/docs/en/engineering-bulletin/EB790.pdf 

You can try analyze which clock causes exception usng these documents.

http://www.nxp.com/docs/en/reference-manual/IMX6DQRM.pdf

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

0 件の賞賛