eMMC flash programmer fails when DDR disabled on LS1088A - Custom Board

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

eMMC flash programmer fails when DDR disabled on LS1088A - Custom Board

846 次查看
BenQT
Contributor I

Hi everyone, 

I'm trying to program eMMC with cwflash.py but I'm facing an initialization failure even though the command (like fl_dump) completes.

1. What I'm doing: 
I want to dump the first sector (512 bytes), so I run:

BenQT_1-1763384100909.png

The strange part:
- The capacity of my eMMC is 7.3GB but info just 3.6
- The dump say DONE but immediately fails with "init error"

2. Change I made

Because my DDR fails to initialize (DDR: timeout while waiting for D_INIT), I followed the official documentation to
- Commented out DDR init call
- Set sw_address = 0x18000000 (OCRAM) in Config_Flash_Device()
- Reloaded board and flash programmer.

Do I need to disable more than init_ddr() or somethings? Pls let me know

Thank you in advance!

Best regards,

 

0 项奖励
回复
3 回复数

722 次查看
June_Lu
NXP TechSupport
NXP TechSupport

Given the complexity and size of the eSDHC programming algorithm, earlier attempts to implement it did not succeed.

For the DDR issue, have you passed the DDR validation?

Thanks

0 项奖励
回复

802 次查看
June_Lu
NXP TechSupport
NXP TechSupport

Please kindly follow the INSTALL\Freescale\CW4NET_v2020.06\CW_ARMv8\ARMv8\Help\PDF\ARMv8_Targeting_Manual.pdf, 8.6 Board Recovery to flash the first image.

But if you open the "Target Initialization File", you could find:

    # Add eMMC device

    fl.add_device({"alias": "mmc", "name": "MMCP1xxx_LSCH3_v3", "address": 0x00000000, "ws_address": 0x80000000, "ws_size": 0x1FFFF, "geometry": "8x1", "controller": "eSDHC"})

 

"ws_address": 0x80000000 is the DDR address, if the DDR fails to initialize (DDR: timeout while waiting for D_INIT), you could not use the flash programmer.

Thanks

768 次查看
BenQT
Contributor I

Hello June,
Thank you for your response. Currently, our custom board is using a 16-bit DDR4 interface, and this is causing the INIT_DDRC() process to fail and prevents it from completing.
Therefore, based on the description in the LS1088A-RDB README and section 7.5 of the ARMv8 Targeting Manual, I attempted to switch to using eSDHC instead of DMA to avoid relying on DDR.

I would like to confirm the following:

1. Is switching to eSDHC a feasible approach?

2. If we use DDR with a 3200 MT/s and a 16-bit width, what modifications do I need to make to the initialization file?

0 项奖励
回复
%3CLINGO-SUB%20id%3D%22lingo-sub-2206083%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%E5%9C%A8%20LS1088A%20%E4%B8%8A%E7%A6%81%E7%94%A8%20DDR%20%E6%97%B6%20eMMC%20%E9%97%AA%E5%AD%98%E7%BC%96%E7%A8%8B%E5%99%A8%E5%87%BA%E7%8E%B0%E6%95%85%E9%9A%9C-%E8%87%AA%E5%AE%9A%E4%B9%89%E6%9D%BF%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2206083%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E5%A4%A7%E5%AE%B6%E5%A5%BD%20%3C%2FP%3E%3CP%3E%E6%88%91%E6%AD%A3%E8%AF%95%E5%9B%BE%E7%94%A8%20cwflash.py%20%E5%AF%B9%20eMMC%20%E8%BF%9B%E8%A1%8C%E7%BC%96%E7%A8%8B%EF%BC%8C%E4%BD%86%E5%8D%B3%E4%BD%BF%E5%91%BD%E4%BB%A4%EF%BC%88%E5%A6%82%20fl_dump%EF%BC%89%E5%B7%B2%E5%AE%8C%E6%88%90%EF%BC%8C%E6%88%91%E8%BF%98%E6%98%AF%E9%9D%A2%E4%B8%B4%E5%88%9D%E5%A7%8B%E5%8C%96%E5%A4%B1%E8%B4%A5%E7%9A%84%E9%97%AE%E9%A2%98%E3%80%82%3C%2FP%3E%3CP%3E1%E3%80%82%E6%88%91%E5%9C%A8%E5%81%9A%E4%BB%80%E4%B9%88%EF%BC%9A%3CBR%20%2F%3E%E6%88%91%E6%83%B3%E8%BD%AC%E5%82%A8%E7%AC%AC%E4%B8%80%E4%B8%AA%E6%89%87%E5%8C%BA%EF%BC%88512%20%E5%AD%97%E8%8A%82%EF%BC%89%EF%BC%8C%E6%89%80%E4%BB%A5%E6%88%91%E8%BF%90%E8%A1%8C%EF%BC%9A%3C%2FP%3E%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22BenQT_1-1763384100909.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22BenQT_1-1763384100909.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22BenQT_1-1763384100909.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F365910iDD40637018F57A8F%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22BenQT_1-1763384100909.png%22%20alt%3D%22BenQT_1-1763384100909.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%E5%A5%87%E6%80%AA%E7%9A%84%E6%98%AF%EF%BC%9A%3CBR%20%2F%3E-%20%E6%88%91%E7%9A%84%20eMMC%20%E5%AE%B9%E9%87%8F%E4%B8%BA%207.3GB%EF%BC%8C%E4%BD%86%E4%BF%A1%E6%81%AF%E4%BB%85%E4%B8%BA%203.6%3CBR%20%2F%3E-%20%E8%BD%AC%E5%82%A8%E8%AF%B4%E5%AE%8C%E6%88%90%EF%BC%8C%E4%BD%86%E7%AB%8B%E5%8D%B3%E5%87%BA%E7%8E%B0%22init%20error%EF%BC%88%E5%88%9D%E5%A7%8B%E9%94%99%E8%AF%AF%EF%BC%89%E3%80%82%22%3C%2FP%3E%3CP%3E2.%E6%88%91%E5%81%9A%E5%87%BA%E7%9A%84%E6%94%B9%E5%8F%98%3C%2FP%3E%3CP%3E%E7%94%B1%E4%BA%8E%E6%88%91%E7%9A%84%20DDR%20%E6%97%A0%E6%B3%95%E5%88%9D%E5%A7%8B%E5%8C%96%EF%BC%88DDR%EF%BC%9A%E7%AD%89%E5%BE%85%20D_INIT%20%E6%97%B6%E8%B6%85%E6%97%B6%EF%BC%89%EF%BC%8C%E6%88%91%E6%8C%89%E7%85%A7%E5%AE%98%E6%96%B9%E6%96%87%E6%A1%A3%E8%BF%9B%E8%A1%8C%E4%BA%86%E6%93%8D%E4%BD%9C%20%3CBR%20%2F%3E%20%E2%80%94%E2%80%94%E6%B3%A8%E9%87%8A%E6%8E%89%E4%BA%86%20DDR%20%E5%88%9D%E5%A7%8B%E8%B0%83%E7%94%A8%E2%80%94%E2%80%94%E5%9C%A8%20Config_Flash_Device%20()%20%E4%B8%AD%E8%AE%BE%E7%BD%AE%20sw_address%20%3D%200x18000000%20(OCRAM)%20%3CBR%20%2F%3E%20%E2%80%94%E2%80%94%E9%87%8D%E8%A3%85%E6%9D%BF%E5%92%8C%E9%97%AA%E5%AD%98%E7%BC%96%E7%A8%8B%E5%99%A8%E3%80%82%3CBR%20%2F%3E%3C%2FP%3E%3CP%3E%E9%99%A4%E4%BA%86%20init_ddr()%20%E4%B9%8B%E5%A4%96%EF%BC%8C%E6%88%91%E8%BF%98%E9%9C%80%E8%A6%81%E7%A6%81%E7%94%A8%E5%85%B6%E4%BB%96%E7%A8%8B%E5%BA%8F%E5%90%97%EF%BC%9F%E8%AF%B7%E5%91%8A%E8%AF%89%E6%88%91%3C%2FP%3E%3CP%3E%E6%8F%90%E5%89%8D%E8%B0%A2%E8%B0%A2%EF%BC%81%3C%2FP%3E%3CP%3E%3CSPAN%3E%E9%A1%BA%E7%A5%9D%E5%95%86%E7%A5%BA%EF%BC%81%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2247159%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20eMMC%20flash%20programmer%20fails%20when%20DDR%20disabled%20on%20LS1088A%20-%20Custom%20Board%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2247159%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%3E%E9%89%B4%E4%BA%8E%20eSDHC%20%E7%BC%96%E7%A8%8B%E7%AE%97%E6%B3%95%E7%9A%84%E5%A4%8D%E6%9D%82%E6%80%A7%E5%92%8C%E8%A7%84%E6%A8%A1%EF%BC%8C%E6%97%A9%E5%85%88%E7%9A%84%E5%B0%9D%E8%AF%95%E5%B9%B6%E6%9C%AA%E6%88%90%E5%8A%9F%E3%80%82%3C%2FP%3E%0A%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%20lang%3D%22en-US%22%3E%E5%85%B3%E4%BA%8E%20DDR%20%E9%97%AE%E9%A2%98%EF%BC%8C%E6%82%A8%E9%80%9A%E8%BF%87%20DDR%20%E9%AA%8C%E8%AF%81%E4%BA%86%E5%90%97%EF%BC%9F%3C%2FP%3E%0A%3CP%20style%3D%22margin%3A%200in%3B%20font-family%3A%20Calibri%3B%20font-size%3A%2011.0pt%3B%22%20lang%3D%22en-US%22%3E%E8%B0%A2%E8%B0%A2%EF%BC%81%3C%2FP%3E%3C%2FLINGO-BODY%3E