IMX6D boot problem

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

IMX6D boot problem

Jump to solution
1,490 Views
egorrumjantsev
Contributor III

Hello.

I have custom board with IMX6Dual SoC. We use Micron's or Elpida LPDDR2 memory chips (2 chips with 512 megabytes per each).

Board schematic based on Sabre IMX dev kit.

First we did something like a draft board with MCIMX6D7CVT08AD (means Rev 1.3) and board booted fine using USB boot. Second iteration has mostly the same schematic, but real dimentions for our device. One of the difference is that we changed USB port mode from OTG to device mode.

PCB routing for memory chips looks the same as first board. But this second board has problem with U-boot. If we use MCIMX6D7CVT08AD chips then U-Boot which we loads to 0x10000000 stop working somewhere near to

announce_dram_init(void)

Unfortunately for us our supplier can order only MCIMX6D7CVT08AC chips (means Rev 1.2). So with that chips our board freeze on SPL stage when it trys to enumerate new gadget device.

 

U-Boot SPL 2021.04-03718-g69131a573d-dirty (Sep 09 2021 - 12:23:31 +0500)
>>SPL: board_init_r()
spl_init
Trying to boot from USB SDP
g_dnl_register: g_dnl_driver.name = usb_dnl_sdp
g_dnl_bind: gadget: 0x912210 cdev: 0x18300390
g_dnl_config_register(): Name: usb_dnload
usb_add_config: adding config #1 '%p
'/0x18300440

 

So the question is:
Are there any difference or errata between chips with Rev 1.2 and 1.3 which cause so strange behavior. Why Rev 1.2 can freeze on SPL phase, but Rev 1.3 can continue to boot to second stage bootloader?

Thanks

 

Labels (1)
0 Kudos
1 Solution
1,376 Views
egorrumjantsev
Contributor III

Hi, i want to finalize topic.

The problem of Rev 1.2 chip was in wrong soldering. When we resoldered chip, it boots like rev 1.3.

So topic can be closed

View solution in original post

0 Kudos
9 Replies
1,377 Views
egorrumjantsev
Contributor III

Hi, i want to finalize topic.

The problem of Rev 1.2 chip was in wrong soldering. When we resoldered chip, it boots like rev 1.3.

So topic can be closed

0 Kudos
1,446 Views
egorrumjantsev
Contributor III

I found that PFD Patch has implemented in s_init function. So probably that errata is not our case. Most magic event for me is that Rev 1.3 is doing usb renumeration before loading  but Rev. 1.2 can not do that.

0 Kudos
1,440 Views
igorpadykov
NXP Employee
NXP Employee

Rev 1.2 silicon was used before 2014 (Sabre SD board rev.B used it), so one can test it (including usb loading with mfg tool)

with software developed up to 2014, like

 

MX6Q_L3.0.35_MFG_TOOL link

https://www.nxp.com/webapp/sps/download/license.jsp?colCode=IMX_6DQ_MFG_TOOL

L3.0.35 link

https://www.nxp.com/webapp/Download?colCode=L3.0.35_4.1.0_ER_SOURCE_BSP&appType=license&loca...

 

simple unit tests

http://repository.timesys.com/buildsources/i/imx-test/imx-test-3.0.35-4.0.0/

 

However this is outdated software and not more supported, support is provided only with

Professional Services

 

Best regards
igor

0 Kudos
1,459 Views
egorrumjantsev
Contributor III

Also all references on patches and solutions related to very old U-Boot versions ( like 2009.x ) in my case i firstly adopted 2017.x version of FSL U-Boot, now i'm working with 2021.04 branch of FSL U-Boot, so i suppose that this versions should have all related workarounds. Am i right?

0 Kudos
1,447 Views
igorpadykov
NXP Employee
NXP Employee

there are many complex errata in that silicon verson, suggest to use NXP Professional Services

to fix them in software:
https://contact.nxp.com/new-prof-svcs-sw-tech

Or better option try to obtain latest silicon version where all these errata are fixed.

 

Best regards
igor

0 Kudos
1,459 Views
egorrumjantsev
Contributor III

But that topics say that board can not boot. In our case CPU loaded first stage bootloader via USB (i mean SPL), and CPU freeze near to the moment of re-apply new VID/PID of usb device to load second stage bootloader U-Boot. That related to Rev 1.2 core.

But 1.3 core could load U-Boot and freeze somewhere in memory init.

How that erratas can affect such difference on U-Boot loading? Can be a problem that we remove OTG circuits and set USB port only in device role?

 

0 Kudos
1,486 Views
igorpadykov
NXP Employee
NXP Employee

Hi Egor

 

>>Are there any difference or errata between chips with Rev 1.2 and 1.3 which cause so strange behavior.

 

one can look at EB803  i.MX 6Dual/6Quad Applications Processor Silicon Revision 1.2 to 1.3 Comparison - EB803

https://www.nxp.com/products/processors-and-microcontrollers/arm-processors/i-mx-applications-proces...

PFD Patch L3.0.35_1.1.2_patch_bundle.tar.gz  on

https://community.nxp.com/t5/i-MX-Processors/IMX6-booting-from-eMMC-Random-failure/m-p/497164?commen...

 

Best regards
igor

0 Kudos
1,471 Views
egorrumjantsev
Contributor III

Hi, Igor

Thank you for your assistance, but topic you mentioned is about booting from SD interface.

In my case i use Serial Downloader mode to boot from USB port.

Is there any difference between USB boot and SD card boot sequence taking into account that errata?

0 Kudos
1,466 Views
igorpadykov
NXP Employee
NXP Employee

>Is there any difference between USB boot and SD card boot sequence taking into account that errata?

 

no difference.

 

Best regards
igor

0 Kudos