Hi All,
We need to bring up a 1 GB NAND on our i.mx233 board based on WINCE 6.0.
But we are getting ROM code error 0x80508003.(Unable to find LDLB)
Configuration done:
First 8 good block NCB.(0-7)
Next 8 good block LDLB. (8-15)
Next 2 good block DBBT. (16-17)
Even I tried to allocate next 50 blocks to LDLB after NCB still I am getting LDLB block is not found error by ROM code.
Whether I.mx233 can not boot from NAND having the page size 4k ( 4k + 224 spare size)...........?
Please help me sort out this issue.
Regards,
Kishore P
Hi kishore
i.MX23 can boot from this NAND if it requires ecc <=20 bit (max. supported by
BCH module). Regarding adding new NAND support to BSP, there is special procedure
for it. First please refer to Application Note AN4111 (Rev. 0, 04/2010)
"Changing the i.MX25 NAND Flash Model for Windows Embedded CE 6.0"
http://www.freescale.com/files/dsp/doc/app_note/AN4111.pdf
Then one needs to program NAND using MFG Tool, for that one needs
to rebuild MFG firmware (uce.sb) and add support for that NAND.
For rebuilding firmware please refer to attached i.MX23 EVK WinCE
Guide sect.2.3 "Sample OS Design Solutions", workspace for building the
MfgTool Windows Embedded CE 6.0 firmware run-time image.
One can look at WinCE60\SUPPORT_PDK1_7\TOOL\iMX23-EVK\UUT.
New uce.sb should be placed instead old to OS firmware
directory.
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Burn uce.sb by MFG tools, is this action can upgrade SoC ROM?
Hi igor,
As per the document Application Note AN4111.pdf
Header file \WINCE600\PLATFORM\iMX25-3DS-PDK1_x\SRC\COMMON\NANDFMD\nandbsp.h and nandchip.inc has to be updated , but in the current BSP
version 1_8 (iMX233-EVK-PDK1_8) both the file are note present.
O.S is loaded to the RAM via 1 GB NAND , but ROM code is unable to find the LDLB block , hence Boot loader is not up in the recovery mode.
Regards,
Kishore P
Has this issue resolved? I meet the same problem. Any experience to share?
Hi kishore
without programming NAND with MFG Tool, ROM code will not be able to read
correctly this NAND. So I think you should follow
i.MX23 EVK WinCEGuide sect.2.3 "Sample OS Design Solutions".
As for AN4111 please refer to sect.13.4.3 Adding New Flash Configurations
attached Manual for more updated info.
~igor
Hi igor,
We have modified imx233 evk bootloader to flash images (eboot.sb and nk.sb) from SD card to NAND flash in recovery mode .
This method is working for our old NAND which is 128 MB (2K +64 page size). ROM code was able to detect NCB ,LDLB and boot OS image successfully.
For 1GB NAND (4K + 224 page size), ROM identifyied NCB but it is unable to find LDLB in NAND boot mode. (ROM code error 0x80508003.(Unable to find LDLB))
Another Observation : 1) We tried booting our custom device in recovery mode and our 1GB NAND flash is mounted in OS.
2) Read , Write and Erase operation is performed correctly in 1 GB NAND.
As per your suggestion, we also tried using MFGtool,
Built imx233-EVK_PDK1_8_UUT solution with BSP modified for our NAND and used generated
nk.sb and eboot.sb in MFGTool for flashing .But obtained error "panel A: Updater Error 0xffff0000 (-65536)"
Regards,
Kishore P
Hi kishore
one can check if this is caused by erratum
4559 ROM Fails to Boot from BA-NAND IMX23CE
(Bit 7 of Byte 6-7 (1=supports Block Abstracted access mode) in ONFI NAND
device’s parameter page to determine if the NAND device is ONFI BA-NAND)
~igor
Hi igor,
I have checked my NAND it not a BA-NAND (6th BYTE 7 bit is 0 ) (data is obtained by sending cmd READ PARAMETER (ECh) to NAND).
byte 6 of the response is 0x58
I have copied NCB to 1st 4 blocks (0-3) , LDLB to next 4 blocks (4-7) and DBBT to blocks 9 and 10.
Same configuration works fine for 128 MB Nand ( page size : 2K +64 spare Bytes) , but in the 1 GB Nand (page size : 4 K + 224 spare Bytes) , ROM code throwing
0x80508003 Unable to find LDLB error.
Note : I have tried writing LDLB data in 96 blocks after the NCB blocks, still ROM code is unable to find LDLB blocks.
Please clarify on how ROM code finds LDLB after NCB blocks...?
In imx233 reference manual given , if NCB is found the search state machine increments 64 pages and reads that page until efNANDBootSearchLimit
what is efNANDBootSearchLimit value ?
Regards,
Kishore P
Hi kishore
you can try to boot in Linux, it has much better
NAND support (more supported chips), use latest kobs-ng release from
i.MX6 BSPs, and write with MFG Tool. Then you can read correct NAND
boot structure.
~igor