Hi,
My i.MX27 design used for 5 years already, several months ago all the new boards from factory can't bootup at all, after check the last MCIMX27CE.pdf, I changed the redboot of MPLL related code. This make about two-third of the boards boot up, but still one-third of boards even can't bootup to bootstrap, I mean, I can't connect the board with ADS tool from serial port. Even the good one sometime maybe stop at PLL configure code. If we remove the new i.MX27, replace it with Rev 2.1, everything works fine. The distributor told me there are only rev 2.2 now, but their FAE can't fix this problem too.
Does anyone using the i.MX27 now?
BTW, my design is based on MX27ADS, the PMIC is MC13783 and the bootloader is redboot.
Freescale, if rev 2.2 has problem, why stop shipping rev 2.1 and change to rev 2.2?
Regards,
Hello Jorge,
If we doesnt follow the errata NGcm11563 and ENGcm12387, then it will affect programming process or booting process of iMX27 board ?
My case, boards are not programming. I am getting below error messages while programming the boards.
1)Can't execute RAM kernal.
2)Connection error. Please reset the board and make sure the board in bootstrap mode.(Most of the time showing this issue)
3)Reset the target.
Note : While Flashing boards are in bootstrap mode
Regards,
Azlum
Hello Mohameed,
It sounds that you are having the errata problem, and you are using the ATK tool to flash your external memory. And since the Init PLL code it is not correct the device never enters in Bootstrap mode, you need to lower down the voltage as mention in the thread.
Hello Jamesbone,
These NGcm11563 and ENGcm12387 have to be applied in boot loader level and the same boot loader itself I couldn't program into the board.
Or you mean, Does the Init PLL code will be corrected during initial stage of programming ?
Is the flow is like below mentioned ?
suppose if I have errata fixed code. Same code will try to correct the Init PLL code during initial stage of programming. Once Init PLL code get corrected, board will go to the Bootstrap mode and board will start to program.
Regards,
Azlum
Hi Azlum,
There are some tricky here, because of this *limitation*, even the bootstrap code can't start :-D You can try to use a hot air gun warm up the i.mx27, then the bootstrap should boot up, then you can write your new bootloader which includes the last PLL init code to flash, and it should works.
Note, because Freescale doesn't think PLL change is important, so they didn't change the i.MX27's version number! This means, our software can't check the current i.mx27 is rev 2.1 or rev 2.2, that means, we CAN'T use one bootloader both support rev 2.1 and rev 2.2. This problem stop my bootloader on field upgrade, we have more than 100 thousand units can't upgrade the bootrom now. We start ship i.mx535 and i.mx6q from last year, I think we'll stop ship i.mx27 in next a few years.
Regards,
Yanjun Luo.
Dear Yanjun,
Thanks for the reply.
As you suggested, I have applied hot air gun into the iMX27 processor. But still result is same.
Whether do I need to change the processor and check ?
When the errata PLL changes will be affected the processor ? During booting or During programming ?.
Also, same software-bootloader- cannot be used with iMX27 2.1 revision and 2.2 revision. Then you could have change the i.MX27's version number.
Regards,
Azlum
Hi Azlum,
First you must make sure your hardware is ok, I mean the design and BGA solder, etc. In my experience, most of the boards can boot after warm up with hot air gun. And you can try to power on/off for several times, it should works after some test. I suggest you try this on another board.
The errata impact both bootstrap mode and normal boot mode, say, the old PLL init code doesn't work whatever in normal boot or bootstrap mode.
Another solution is program the flash chip with new bootloader then solder it, the i.mx27 should boot up.
And the i.mx27's version is fixed one inside the chip, I can't change it, Freescale doesn't change it when do rev2.2, I have no way to do it.
Regards,
Yanjun Luo.
Dear Yanjun,
I have manufactured 130pcs board with new silicon revision. Out of 130Pcs, 110Pcs could boot successfully and was working fine without any errata workaround. But after 3-4 months, 70% boards are not working. And I tried to re-program the boards. But boards are not programming as I mentioned above.
Let me do your suggestions in few boards.
Regards,
Azlum
Hello,
Hello Mohammed,
If after the test you are still having the problem, please submit a SR this requires to be handled as a Service Request (SR). Please be aware that we are going to need the complete part number and mask of the i.MX27 the ones that are working and the ones that are failing. And who is your distributor, so we can discuss with them some inputs about the devices.
I will also suggest to do a swap between the good and the bad, so to isolate that the issue it is cause only in the side of the i.MX and not from the board or other components.
Have a great day,
Jaime
-------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-------------------------------------------------------------------------------
Hello Jaime , Thank you for the reply....
I have done re-flow in problematic boards. But still result is same. Let me replace with new CPU and DDR part.
We have used new silicon version [Silicon revision 2.2] processor [MCIMX27VO4A M72J] in same production .But we didnt follow errata NGcm11563 and ENGcm12387 in this production. When I check,Errata ENGcm11563 QVDD must be powered up before MPLLVDD . But in our board QVDD & MPLLVDD tied together (no delay).
So this will create any issues ?
Regarding SR, I have already generated many Service Request regarding this issues.
Regards,
Azlum
Hello Mohammed,
Please update the SR that it is related with the exact same question. I already highlight to the engineer in charger, he is part of my team. Please let him know your advanced on this issue.
Have a great day,
Jaime
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hello Jaime, Thanks for your support...
I have generated new Service Request (SR). But I didn't get any reply from freescale team.
Service Request SR# : 1-2996999471
Regards,
Azlum
Hello James,
Thank you. Artur has replied to me.
We really appreciate your support !!!
Regards,
Azlum
Skype: mohammed.azlum
Hi Azlum:
I have the same issue you faced in 2014, that some iMX27 can't boot from UART port and shake with ADS tools serial port.
Some of issue boards can boot from UART under workaround of heat up CPU.
However heat up can't resolve all issue boards.
What is the suggestion of freescal/NXP?
And how do you work out the boot issue finally?
Thanks for your comments.
Hello Jaime, Thanks for your support...
I have generated new Service Request (SR). I hope my explanation is fine for him.
Service Request SR# : 1-2996999471
Regards,
Azlum
Hi Jaime,
As per your below suggestion;
One way to diagnose is to lower QVDD to 1.2V. If 2.2 boots with this voltage, then this errata should be the cause.
In our board, we used PMIC MC13783 for power management. SW1AOUT from PMIC is connected to QVDD pins of iMX27 processor. So I have tried PUMS1 & PUMS2 (of PMIC-MC13783) made as ground to provide 1.2V [from SW1A] to QVDD pins of iMX27 processor . But still the result is same. I couldn't program and boot.
Could you let me know, Is the right procedure I did for lowering QVDD to 1.2 ? See the below image.
Regards,
Azlum
Hello Jamesbone, Thanks for the reply.
Yes, I am using ATK tool kit for flashing external memory NOR flash(S29GL256N).
But whether Init PLL code will be activated during booting time ?
Regards,
Azlum
Hi Yanjun,
As Vladan mentioned, if 2.1 boots in your system, and 2.2 doesn't, there's a high probability that ENGcm12387 is the cause, this errata is published on the web already. In addtion to his comments: One way to diagnose is to lower QVDD to 1.2V. If 2.2 boots with this voltage, then this errata should be the cause.
Answering your question "if rev 2.2 has problem, why stop shipping rev 2.1 and change to rev 2.2?": ENGcm12387 is not really an issue, it is only a limitation that was introduced to the MPLL when we fixed an old issue in 2.1.
Best regards.
Jorge.
Please make sure to follow all requirements in the Errata document for setting up PLL. Specifically ENGcm11563 and especially ENGcm12387 need to be considered. If you configure MPLL to operate at 1.2GHz, also implications of ENGcm12388 need to be considered.