IMX233 reset loop during boot, PDN unstable (especially 2v5)

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

IMX233 reset loop during boot, PDN unstable (especially 2v5)

1,744 Views
jlumme
Contributor III

We have created a design using i.mx233, and have great difficulties getting it stable and booting.

Our original reference was Olinuxino Maxi, but we do not support battery, and power the board directly from 5V. We use imx to generate all other power lines needed - or we would like it to. So far we are failing miserably.

Sometimes the board might boot (usually the board behaves better when it has been without power for a while), but still 95% of the time it just stays in a reset loop during power on.

We are using mainline u-boot as our loader, and the same uboot will boot our reference board just fine.

Our PDN schematic looks like this:

hw1.1_pdn.jpg

And in the scope the power lines look like this:

reboot_cycle.jpg

As you can see from the image, our 2v5 never manages to climb to acceptable levels, and we are suspecting it to cause the crash. 4v2 seems to rise very well, but it drops slightly when 2v5 line is started, but it seems to recover before the reset..

We have also tried to change our caps closer to the Freescale reference design, but there is no real difference. 2v5 looks somewhat different, but actually we still have same stability problems and a reboot.

Could some load (ie. 100k resistor) on the VDDD and VDDA lines help the PDN internally ?

Is there some rule regarding 2v5 capacitor placement we should have followed, or are our values too large ? What kind of values have other projects used ? 

We have been trying to get this board to wake up for few weeks now, and we are ready to try almost anything at this point...

Thank you for any suggestions in advance!

Labels (2)
0 Kudos
8 Replies

1,010 Views
tobiasdiendorfe
Contributor III

Little Update:

We had one 1k pullup to 4V2 to the two pins DCDC_BATT & BATT (which are connected together).

With this we got mem errors on different offsets with memtester.

Also the scope showed that DCDC_BATT & BATT pins was clocked @ 800 kHz (dc-dc switcher).

This 800kHz was giving noise to the 4V2 which leads to our instabillity issues.

Now we have added 3 x 22µ capacitors to the DCDC_BATT & BATT pins and memtester currently runs the 29th loop wihtout an error!! Also the voltage on DCDC_BATT, BATT & 4V2 pins does'nt pulse or has spikes, its an nice DC voltage without spikes.

I will let it run a few days to see if its now really stable.

It seem the adding those capacitors to the DCDC_BATT & BATT has solved our issue.

Thank you very much

Tobias

0 Kudos

1,010 Views
tobiasdiendorfe
Contributor III

Dear mlopez.

Thanks for your suggestions.

Sadly we have already done most of your suggestions and our devices locksup/stuck randomly without any kernel oops or similiar message.

Do you mean: memtester version 4 ?

Thank you

Tobias

0 Kudos

1,010 Views
tobiasdiendorfe
Contributor III

Anyone of you gotting this stable?

I also have similar issues with 5v only custom board.

Its just not stable. It starts most of the time but sometimes it just restarts or stuck.

Would nice to know if anoyone of you got this stable with uboot?

thx

0 Kudos

1,010 Views
mlopez
Contributor III

Hi,

I've got it stable with 5V supply. The only issues was:

- DC_DC_BAT and BATT unconnected pins

- Depending of the ddr memory chip, has to work at 2.6V, not 2.5V as in u-boot standard source.

- In one board, we needed to change sd signals strength from 8mA to 4mA (overshoot problems) in uboot and dts.

- A repetitive on/off, without allowing v4.2V discharge, leads to a problem in power supply not initialized correctly. Resolved with a power supervisor: TL77xxA family from TI, and setting CT capacitor to at least 200ms of reset time.

Also test:

When the board starts ok, test memory interface with memtester.

Regards,

mlopez

0 Kudos

1,010 Views
mlopez
Contributor III

I've got the same problem with my board.

My problem was that in my board, the DC_DC_BAT and BATT pins were left open, like in yours..

By placing a 1K pull-up resistor to 4.2V and a 33uF capacitor to ground to both pins connected together, all starts OK

See this link:

imx233 bootlets and no battery board

Regards,

mlopez

0 Kudos

1,010 Views
igorpadykov
NXP Employee
NXP Employee

Hi Juha

Freescale has recommendations for i.MX28 usage with 5V only:

hardware

Power MX28_VDD5V_only Rev.B.pdf

and software

L2.6.35_10.12_5V_SUPPLY_PATCH : Linux patch for i.MX28 SDK 2010.12

to add the most robust support possible for a VDD5V

BSP which support 5V only option for i.MX28 EVK

L2.6.35_1.1.0_ER_SOURCE : i.MX28 Linux 2.6.35 Source Code Files and documentation.

Size (K): 726912 Format: gz Rev #: L2.6.35_1.1.0 Modified: 2/22/2013


Hardware connections explanations in sect.4.1.2.1

VDD5V source only: hardware configuration AN4199


Since i.MX23 PMU is the same as i.MX28 you may wish to implement all that for

your design.


Best regards

igor

-----------------------------------------------------------------------------------------------------------------------

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

-----------------------------------------------------------------------------------------------------------------------

0 Kudos

1,010 Views
jlumme
Contributor III

Hi Igor,

Thanks for your time and reply!

The configuration Olimex decided to use is indeed very different from what Freescale recommends.. Actually we saw the configuration recommended for imx233 (sorry, link is through google to freescale community site https://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0CB0QFjAA&url=h...) and it seems somewhat different to mx28 reference configuration you posted (VDDIO and VDDD lines differ at least). I now wonder which one could be better for our case.

In our first production run we decided to try Olimex configuration but it seems difficult to get this configuration working now.. It's strange why they have such a differing configuration to Freescale.. 

I took a look at the patch set for 5V only configuration - unfortunately it's for Freescale bootlets (we use uboot), but there is some errata workaround for false brownout detection on VDDD, VDDA, VDDIO and VBUSVALID comparators, I will need to study u-boot code more to see if this is implemented there or not.

0 Kudos

1,010 Views
igorpadykov
NXP Employee
NXP Employee

Hi Juha

I think looking through bootlets may be very useful.

Especially pay attention to erratum (implemenetd in bootlets

file hw_power.c)

5837 Setting the ENABLE_DCDC bit in the HW_POWER_DCDC4P2

can result in false brownout detection

IMX23CE Chip Errata for the i.MX23

Best regards

igor

0 Kudos