This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM3874 custom board : Data written into the Nand flash did not stay on upon power cycle

Other Parts Discussed in Thread: LINUXEZSDK-SITARA, AM3874

Hi,

I am facing with data not able to stay on the nand flash after power cycle.  The nand flash is of this part number, MT29F8G16ADADAH4-IT:.

I did a nand write at u-boot to copy data from the memory onto the flash and nand read to copy data from the flash to the memory in which I was able to read back from the memory using md.

However, after the power cycle, the content I load from the flash to the memory which I read back using md is all 0xFF.

One thing that puzzles me is that how come I can write and read successfully to/from the flash based on the command line but some how these contents are not stored in the flash?? 

Any insight to that?

Thanks and regards,

poh boon

  • Poh,

    Can you provide full log.

    What is the ECC you are using during read/write the NAND? Are you aligned with the guidelines from http://processors.wiki.ti.com/index.php/TI81XX_PSP_UBOOT_User_Guide#U-Boot_NAND_Support ?

    Regards,
    Pavel

  • Hi Pavel,

    I follow the guideline faithfully a few times and the behaviour I got is always the same.

    For your information, I use BCH8 to flash the MLO file and ECC to flash u-boot.bin

    I have attached two log file for your reference.

    log1.txt shows the initial condition where I read from a blank flash, basically what I did was to dump from address 0x20000, length 0x2000 from the flash to the memory address location 0x90000000. You will see that the contents are mostly 0xff.

    log2.txt shows I perform a write to the flash and then read back to the memory, the contents show the u-boot.bin signature from 0x20000 to 0x22000.

    Upon power cycle and after performing the steps on what I did to collect log1.txt. I get back all 0xFF.

    Thanks and regards,

    poh boon

    TI8148_EVM#nand read 0x90000000 0x20000 0x2000
    
    NAND read: device 0 offset 0x20000, size 0x2000
     8192 bytes read: OK
    TI8148_EVM#md 0x90000000
    90000000: ffffffff ffffffff ffffffff ffffffff    ................
    90000010: ffffffff ffffffff ffffffff ffffffff    ................
    90000020: ff7fffff ffffffff ffffffff ffffffff    ................
    90000030: ffffffff ffffffff ffffffff ffffffff    ................
    90000040: ffffffff ffffffff ffffffff ffffffff    ................
    90000050: ffffffff ffffffff ffffffff ffffffff    ................
    90000060: ffffffff ffffffff ffffffff ffffffff    ................
    90000070: ffffffff ffffffff ffffffff ffffffff    ................
    90000080: ffffffff ffffffff ffffffff ffffffff    ................
    90000090: ffffffff ffffffff ffffffff ffffffff    ................
    900000a0: ffffffff ffffffff ffffffff ffffffff    ................
    900000b0: ffffffff ffffffff ffffffff ffffffff    ................
    900000c0: ffffffff ffffffff ffffffff ffffffff    ................
    900000d0: ffffffff ffffffff ffffffff ffffffff    ................
    900000e0: ffffffff ffffffff ffffffff ffffffff    ................
    900000f0: ffffffff ffffffff ffffffff ffffffff    ................
    TI8148_EVM#nandecc hw 0
    HW ECC Hamming Code selected
    TI8148_EVM#nand write.i 0x81000000 0x20000 0x60000
    
    NAND write: device 0 offset 0x20000, size 0x60000
     393216 bytes written: OK
    
    TI8148_EVM#nand read 0x90000000 0x20000 0x2000
    
    NAND read: device 0 offset 0x20000, size 0x2000
    Error: Bad compare! failed
    Error: Bad compare! failed
    Error: Bad compare! failed
    Error: Bad compare! failed
    Error: Bad compare! failed
    Error: Bad compare! failed
    NAND read from offset 20000 failed -74
     0 bytes read: ERROR
    TI8148_EVM#md 0x90000000
    90000000: ea000012 e59ff014 e59ff014 e59ff014    ................
    90000010: e59ff014 e59ff014 e59ff014 e59ff014    ................
    90000020: 80700100 80700160 807001c0 80700220    ..p.`.p...p. .p.
    90000030: 80700280 807002e0 80700340 12345678    ..p...p.@.p.xV4.
    90000040: 80700000 80700000 8072d75c 80765f2c    ..p...p.\.r.,_v.
    90000050: e10f0000 e3c0000f e38000d3 e129f000    ..............).
    90000060: e24f0068 e51f102c e1500001 0a000007    h.O.,.....P.....
    90000070: e51f2034 e51f3034 e0432002 e0802002    4 ..40... C.. ..
    90000080: e8b007f8 e8a107f8 e1500002 dafffffb    ..........P.....
    90000090: e51f0058 e2400a0a e2400080 e240d00c    X.....@...@...@.
    900000a0: e3cdd007 e51f0064 e51f1064 e3a02000    ....d...d.... ..
    900000b0: e5802000 e1500001 e2800004 1afffffb    . ....P.........
    900000c0: e51ff004 807004f4 e3a00000 ee080f17    ......p.........
    900000d0: ee070f15 ee110f10 e3c00a02 e3c00007    ................
    900000e0: e3800002 e3800b02 ee010f10 e1a0c00e    ................
    900000f0: eb0000ab e1a0e00c e1a0f00e e320f000    .............. .
    TI8148_EVM# 

  • Poh,

    Although some error reporting, I can see that the value written in the NAND flash (at 0x20000 offset) is preserved upon power cycle of the DM814x/AM387x EVM that I am using, see the log below:

    Terminal ready


    U-Boot 2010.06 (Dec 26 2012 - 18:17:23)

    TI8148-GP rev 2.1

    ARM clk: 600MHz
    DDR clk: 400MHz

    DRAM:  2 GiB
    MMC:   OMAP SD/MMC: 0
    Using default environment

    The 2nd stage U-Boot will now be auto-loaded
    Please do not interrupt the countdown till TI8148_EVM prompt if 2nd stage is already flashed
    Hit any key to stop autoboot:  0
    reading u-boot.bin

    210400 bytes read
    ## Starting application at 0x80800000 ...


    U-Boot 2010.06 (Dec 26 2012 - 18:12:01)

    TI8148-GP rev 2.1

    ARM clk: 600MHz
    DDR clk: 400MHz

    I2C:   ready
    DRAM:  2 GiB
    NAND:  HW ECC BCH8 Selected
    256 MiB
    MMC:   OMAP SD/MMC: 0
                              .:;rrr;;.                  
                        ,5#@@@@#####@@@@@@#2,            
                     ,A@@@hi;;;r5;;;;r;rrSG@@@A,         
                   r@@#i;:;s222hG;rrsrrrrrr;ri#@@r       
                 :@@hr:r;SG3ssrr2r;rrsrsrsrsrr;rh@@:     
                B@H;;rr;3Hs;rrr;sr;;rrsrsrsrsrsr;;H@B    
               @@s:rrs;5#;;rrrr;r#@H:;;rrsrsrsrsrr:s@@   
              @@;;srs&X#9;r;r;;,2@@@rrr:;;rrsrsrsrr;;@@  
             @@;;rrsrrs@MB#@@@@@###@@@@@@#rsrsrsrsrr;;@@ 
            G@r;rrsrsr;#X;SX25Ss#@@#M@#9H9rrsrsrsrsrs;r@G
            @9:srsrsrs;2@;:;;:.X@@@@@H::;rrsrsrsrsrsrr:3@
           X@;rrsrsrsrr;XAi;;:&@@#@Bs:rrsrsrsrsrsrsrsrr;@X
           @#;rsrsrsrsrr;r2ir@@@###::rrsrsrsrsrsrsrsrsr:@@
           @A:rrsrsrsrr;:2@29@@M@@@;:;rrrrsrsrsrsrsrsrs;H@
           @&;rsrsrsrr;A@@@@@@###@@@s::;:;;rrsrsrsrsrsr;G@
           @#:rrsrsrsr;G@5Hr25@@@#@@@#9XG9s:rrrrsrsrsrs:#@
           M@;rsrsrsrs;r@&#;::S@@@@@@@M@@@@Grr:;rsrsrsr;@#
           :@s;rsrsrsrr:M#Msrr;;&#@@@@@@@@@@H@@5;rsrsr;s@,
            @@:rrsrsrsr;S@rrrsr;:;r3MH@@#@M5,S@@irrsrr:@@
             @A:rrsrsrsrrrrrsrsrrr;::;@##@r:;rH@h;srr:H@ 
             ;@9:rrsrsrsrrrsrsrsrsr;,S@Hi@i:;s;MX;rr:h@; 
              r@B:rrrrsrsrsrsrsrr;;sA@#i,i@h;r;S5;r:H@r  
               ,@@r;rrrsrsrsrsrr;2BM3r:;r:G@:rrr;;r@@,   
                 B@Mr;rrrrsrsrsr@@S;;;rrr:5M;rr;rM@H     
                  .@@@i;;rrrrsrs2i;rrrrr;r@M:;i@@@.      
                    .A@@#5r;;;r;;;rrr;r:r#AsM@@H.        
                       ;&@@@@MhXS5i5SX9B@@@@G;           
                           :ihM#@@@@@##hs,               

    Net:   Detected MACID:90:d7:eb:d5:13:96
    cpsw
    Hit any key to stop autoboot:  0
    TI8148_EVM#md 0x81000000
    81000000: 9eb79496 36a63587 a7dab692 b61eb616    .....5.6........
    81000010: 96449696 94b696dc 9e909884 9714a416    ..D.............
    81000020: b6d6b6b6 94f2b756 94b29695 a4b69684    ....V...........
    81000030: b6869687 969686f6 96969494 12949794    ................
    81000040: 96b79696 96f79eb6 9d969592 8696f49e    ................
    81000050: a4048486 9c949696 97b48292 b0969e86    ................
    81000060: 9696969c 9796b6b6 f6bec697 96969686    ................
    81000070: d2819682 8696979c 96968615 16409686    ..............@.
    81000080: 77979696 d6360692 96b69616 9ed993d7    ...w..6.........
    81000090: b0069e91 844083e6 94b3d696 96961494    ......@.........
    810000a0: f4de9cd6 96f7c696 96b7971f 96b69696    ................
    810000b0: 94171394 16869406 3a948486 da968496    ...........:....
    810000c0: 9796d696 b68e9684 b65686ce b6b796c0    ..........V.....
    810000d0: 9690919e 869680b2 86969414 bca916d6    ................
    810000e0: bee60796 9495d292 8296d406 beae0696    ................
    810000f0: 92869492 b6868692 85028686 8396d294    ................
    TI8148_EVM#md 0x90000000
    90000000: 7c6d415f 782b6161 63587b48 7038696b    _Am|aa+xH{Xcki8p
    90000010: 96049696 94b69794 94949494 96108416    ................
    90000020: 6b68e968 c970396f 29306949 696d69e0    h.hko9p.Ii0).imi
    90000030: 96869686 96968492 16969692 12149694    ................
    90000040: 4bebe969 79696a65 79256969 6a1f692b    i..Kejiyii%y+i.j
    90000050: 9404049e 161c9696 d6948094 36961a16    ...............6
    90000060: 00e17379 417868b9 6a296d7b 69eb0969    ys...hxA{m)ji..i
    90000070: 82c19686 86969696 96968696 16429686    ..............B.
    90000080: 79616b6a 716a61c1 cde92874 0a695bc9    jkay.ajqt(...[i.
    90000090: b2069e94 87009696 9cb2d696 96961690    ................
    900000a0: 69693845 79696869 01e9696a 69796b78    E8iiihiyji..xkyi
    900000b0: 94169794 12869296 1a949686 de168696    ................
    900000c0: 11e86958 69436d48 ea418949 63792149    Xi..HmCiI.A.I!yc
    900000d0: 96909696 069696b6 86969416 96e01695    ................
    900000e0: 3d6b0978 014d6949 6929680c 28296822    x.k=IiM..h)i"h)(
    900000f0: 92929616 96969696 04869686 83969296    ................
    TI8148_EVM#nandecc hw 0
    HW ECC Hamming Code selected
    TI8148_EVM#nand write.i 0x81000000 0x20000 0x60000

    NAND write: device 0 offset 0x20000, size 0x60000
     393216 bytes written: OK
    TI8148_EVM#nand read 0x90000000 0x20000 0x2000

    NAND read: device 0 offset 0x20000, size 0x2000
    Error: Bad compare! failed
    Error: Bad compare! failed
    Error: Bad compare! failed
    Error: Bad compare! failed
    Error: Bad compare! failed
    Error: Bad compare! failed
    Error: Bad compare! failed
    Error: Bad compare! failed
    Error: Bad compare! failed
    Error: Bad compare! failed
    Error: Bad compare! failed
    Error: Bad compare! failed
    NAND read from offset 20000 failed -74
     0 bytes read: ERROR
    TI8148_EVM#md 0x90000000
    90000000: 1eb71496 36223507 a7dab692 b21eb616    .....5"6........
    90000010: 96449296 90b696dc 9c109804 9310a406    ..D.............
    90000020: a6d6b6a2 94f2b346 94b29615 a0b49284    ....F...........
    90000030: b6868287 16168472 96969490 12109790    ....r...........
    90000040: 96b78602 96659eb4 99969592 8696f49e    ......e.........
    90000050: 24040006 1c149696 97a48090 30961a86    ...$...........0
    90000060: 9696969c 9794b6b6 f6bac497 96929682    ................
    90000070: c2819682 8692939c 96968615 16409686    ..............@.
    90000080: 73159606 d6360692 96a61616 9ad993c7    ...s..6.........
    90000090: b0069e91 004083e6 94b3d696 86961490    ......@.........
    900000a0: f4da9cd6 96f7c292 94b7071e 92b69694    ................
    900000b0: 94171394 12869006 3a948486 da128496    ...........:....
    900000c0: 1796d212 b28e9684 b65686ce b6b792c0    ..........V.....
    900000d0: 9610119a 069680b2 86969414 bca916d4    ................
    900000e0: bee60396 9495d292 82965406 3eaa0696    .........T.....>
    900000f0: 92821412 36068692 05028686 8396d214    .......6........
    TI8148_EVM#
    Thanks for using picocom    -----> here I made the power cycle !!!
    pbotev@pbotev:~/Desktop$ sudo picocom -b 115200 /dev/ttyUSB0 --send-cmd "sx -vv"
    picocom v1.4

    port is        : /dev/ttyUSB0
    flowcontrol    : none
    baudrate is    : 115200
    parity is      : none
    databits are   : 8
    escape is      : C-a
    noinit is      : no
    noreset is     : no
    nolock is      : no
    send_cmd is    : sx -vv
    receive_cmd is : rz -vv

    Terminal ready


    U-Boot 2010.06 (Dec 26 2012 - 18:17:23)

    TI8148-GP rev 2.1

    ARM clk: 600MHz
    DDR clk: 400MHz

    DRAM:  2 GiB
    MMC:   OMAP SD/MMC: 0
    Using default environment

    The 2nd stage U-Boot will now be auto-loaded
    Please do not interrupt the countdown till TI8148_EVM prompt if 2nd stage is already flashed
    Hit any key to stop autoboot:  0
    reading u-boot.bin

    210400 bytes read
    ## Starting application at 0x80800000 ...


    U-Boot 2010.06 (Dec 26 2012 - 18:12:01)

    TI8148-GP rev 2.1

    ARM clk: 600MHz
    DDR clk: 400MHz

    I2C:   ready
    DRAM:  2 GiB
    NAND:  HW ECC BCH8 Selected
    256 MiB
    MMC:   OMAP SD/MMC: 0
                              .:;rrr;;.                  
                        ,5#@@@@#####@@@@@@#2,            
                     ,A@@@hi;;;r5;;;;r;rrSG@@@A,         
                   r@@#i;:;s222hG;rrsrrrrrr;ri#@@r       
                 :@@hr:r;SG3ssrr2r;rrsrsrsrsrr;rh@@:     
                B@H;;rr;3Hs;rrr;sr;;rrsrsrsrsrsr;;H@B    
               @@s:rrs;5#;;rrrr;r#@H:;;rrsrsrsrsrr:s@@   
              @@;;srs&X#9;r;r;;,2@@@rrr:;;rrsrsrsrr;;@@  
             @@;;rrsrrs@MB#@@@@@###@@@@@@#rsrsrsrsrr;;@@ 
            G@r;rrsrsr;#X;SX25Ss#@@#M@#9H9rrsrsrsrsrs;r@G
            @9:srsrsrs;2@;:;;:.X@@@@@H::;rrsrsrsrsrsrr:3@
           X@;rrsrsrsrr;XAi;;:&@@#@Bs:rrsrsrsrsrsrsrsrr;@X
           @#;rsrsrsrsrr;r2ir@@@###::rrsrsrsrsrsrsrsrsr:@@
           @A:rrsrsrsrr;:2@29@@M@@@;:;rrrrsrsrsrsrsrsrs;H@
           @&;rsrsrsrr;A@@@@@@###@@@s::;:;;rrsrsrsrsrsr;G@
           @#:rrsrsrsr;G@5Hr25@@@#@@@#9XG9s:rrrrsrsrsrs:#@
           M@;rsrsrsrs;r@&#;::S@@@@@@@M@@@@Grr:;rsrsrsr;@#
           :@s;rsrsrsrr:M#Msrr;;&#@@@@@@@@@@H@@5;rsrsr;s@,
            @@:rrsrsrsr;S@rrrsr;:;r3MH@@#@M5,S@@irrsrr:@@
             @A:rrsrsrsrrrrrsrsrrr;::;@##@r:;rH@h;srr:H@ 
             ;@9:rrsrsrsrrrsrsrsrsr;,S@Hi@i:;s;MX;rr:h@; 
              r@B:rrrrsrsrsrsrsrr;;sA@#i,i@h;r;S5;r:H@r  
               ,@@r;rrrsrsrsrsrr;2BM3r:;r:G@:rrr;;r@@,   
                 B@Mr;rrrrsrsrsr@@S;;;rrr:5M;rr;rM@H     
                  .@@@i;;rrrrsrs2i;rrrrr;r@M:;i@@@.      
                    .A@@#5r;;;r;;;rrr;r:r#AsM@@H.        
                       ;&@@@@MhXS5i5SX9B@@@@G;           
                           :ihM#@@@@@##hs,               

    Net:   Detected MACID:90:d7:eb:d5:13:96
    cpsw
    Hit any key to stop autoboot:  0
    TI8148_EVM#md 0x90000000
    90000000: 6c6d41d5 60097929 69400148 6869e969    .Aml)y.`H.@ii.ih
    90000010: 8616b696 17b61398 90929094 96949416    ................
    90000020: 2b68e9e9 49681b7f 69796949 696961e9    ..h+..hIIiyi.aii
    90000030: 949494d2 86968e90 16a69792 1196948e    ................
    90000040: 6ae9696d 592960e5 692049e9 694b482b    mi.j.`)Y.I i+HKi
    90000050: 969e44dd 9604d69b dc968296 02929290    .D..............
    90000060: 24e15b79 40696881 4229ed79 692b4969    y[.$.hi@y.)BiI+i
    90000070: 1215838e 96969596 969684d6 86069685    ................
    90000080: 78616b6a 79686149 c909486d 28614b48    jkaxIahymH..HKa(
    90000090: b6069296 97841c9e d49614d6 96966614    .............f..
    900000a0: 61692861 70615169 09686168 69696b7b    a(iaiQaphah.{kii
    900000b0: 949693b6 b2961794 12959686 de868296    ................
    900000c0: 49e86940 69602968 69692969 63692949    @i.Ih)`ii)iiI)ic
    900000d0: 97149697 06169612 96929616 93b21694    ................
    900000e0: 28492868 29484949 79290969 69696829    h(I(IIH)i.)y)hii
    900000f0: 9494969c 96b49096 168e3c92 8796b696    .........<......
    TI8148_EVM#nand read 0x90000000 0x20000 0x2000

    NAND read: device 0 offset 0x20000, size 0x2000
    ECC: uncorrectable.
    ECC: uncorrectable.
    ECC: uncorrectable.
    ECC: uncorrectable.
    ECC: uncorrectable.
    ECC: uncorrectable.
    ECC: uncorrectable.
    ECC: uncorrectable.
    ECC: uncorrectable.
    ECC: uncorrectable.
    ECC: uncorrectable.
    ECC: uncorrectable.
    ECC: uncorrectable.
    ECC: uncorrectable.
    ECC: uncorrectable.
    ECC: uncorrectable.
    NAND read from offset 20000 failed -74
     0 bytes read: ERROR
    TI8148_EVM#md 0x90000000
    90000000: 1eb71496 36223507 a7dab692 b21eb616    .....5"6........
    90000010: 96449296 90b696dc 9c109804 9310a406    ..D.............
    90000020: a6d6b6a2 94f2b346 94b29615 a0b49284    ....F...........
    90000030: b6868287 16168472 96969490 12109790    ....r...........
    90000040: 96b78602 96659eb4 99969592 8696f49e    ......e.........
    90000050: 24040006 1c149696 97a48090 30961a86    ...$...........0
    90000060: 9696969c 9794b6b6 f6bac497 96929682    ................
    90000070: c2819682 8692939c 96968615 16409686    ..............@.
    90000080: 73159606 d6360692 96a61616 9ad993c7    ...s..6.........
    90000090: b0069e91 004083e6 94b3d696 86961490    ......@.........
    900000a0: f4da9cd6 96f7c292 94b7071e 92b69694    ................
    900000b0: 94171394 12869006 3a948486 da128496    ...........:....
    900000c0: 1796d212 b28e9684 b65686ce b6b792c0    ..........V.....
    900000d0: 9610119a 069680b2 86969414 bca916d4    ................
    900000e0: bee60396 9495d292 82965406 3eaa0696    .........T.....>
    900000f0: 92821412 36068692 05028686 8396d214    .......6........
    TI8148_EVM#

    By default I have the value of 0x7c6d415f on 0x90000000 address. Then reading from NAND flash (0x20000 offset), the value at 0x90000000 is 0x1eb71496. Then I power cycle the DM814x/AM387x EVM with the power on switch. The value at 0x90000000 is 0x6c6d41d5. And after reading from NAND flash (0x20000 offset), the value at 0x90000000 is again 0x1eb71496. Which means we have the same value at NAND 0x20000 before and after the power cycle, the value of 0x1eb71496.

    Could you please follow the exact flow as described in the log above. Do you still have this issue?

    BR
    Pavel

  • Hi Pavel,

    Thanks for your time for trying out on your board.

    In fact I was doing what you are doing on your board. :-)

    Regards,

    poh boon

  • Poh,

    Let me double check, you can read/write NAND successful, but when you power cycle your custom board, the value that you wrote to NAND is lost, is that correct?

    Your NAND behave like DDR memory. I can not recall some other E2E community member to report such issue. Do you have the same when you make (TI8148_EVM#reset) instead of power cycle the board?

    Can you also check whether your NAND chip is supported by the AM387x ROM code:

    AM387x TRM
    chapter 4 ROM Code Memory and Peripheral Booting
    4.7 Memory Booting
    4.7.3 NAND
    Table 4-14. Supported NAND Devices

    BR
    Pavel

  • Let me double check, you can read/write NAND successful, but when you power cycle your custom board, the value that you wrote to NAND is lost, is that correct?

    [PB] Yes

    Do you have the same when you make (TI8148_EVM#reset) instead of power cycle the board?

    [PB]I have a reset button on my custom board. Upon reset, the contents supposingly written to the flash is not there when I load them to the DDR memory.

     

     

  • There is something I notice about writing to the flash I am using.

    It will give me bad block as shown

    TI8148_EVM#nand write.i 0x81000000 0x20000 0x60000

    NAND write: device 0 offset 0x20000, size 0x60000

    Skip bad block 0x00020000 Skip bad block 0x00040000

    Skip bad block 0x00060000 Skip bad block 0x00080000

    Skip bad block 0x000a0000 Skip bad block 0x000c0000  

    393216 bytes written: OK

    Here are the information I got when I run the nand flash writer on CCS

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

      NAND FLASH DETAILS

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

    Device ID : 0xc3

    Manufacture ID : 0x2c

    Page Size : 2048 Bytes

    Spare Size : 64 Bytes

    Pages_Per_Block : 64

    Number_of_Blocks : 8192

    Device_width : 2 Byte

    DeviceSize : 1024 MB

     

  • Hi Pavel,

    I misinterpret your question on issuing a reset in your earlier post.

    I ran the "reset" command at the prompt and the result is the same, which is the data I wrote to the flash did not stay there.

    Regards,

    poh boon

  • Poh,

    You are using the u-boot from ti-ezsdk_dm814x-evm_5_04_00_11/board-support/u-boot-2010.06-psp04.04.00.01/, is that correct?

    Regards,
    Pavel

  • No, our software guy has downloaded this u-boot code under this folder named u-boot-omap3. He told me he verified that the code works on our TI8148  evaluation board before he started making modifications for our custom board.

  • Poh,

    Can you try with the default u-boot from ti-ezsdk_dm814x-evm_5_04_00_11/board-support/u-boot-2010.06-psp04.04.00.01/, just for the test. Do you have the same issue?

    Please note that the last tested/verified u-boot for AM387x device is the one from EZSDK 5.04.00.11:

    http://www.ti.com/tool/linuxezsdk-sitara -> http://software-dl.ti.com/dsps/dsps_public_sw/ezsdk/5_04_00_11/index_FDS.html

    While the one from http://arago-project.org/git/projects/u-boot-omap3.git has some patches in addition.

    Regards,
    Pavel

  • I have a copy of the ti-ezsdk_dm814x-evm_5_04_00_11, will try it and let you know tomorrow.

    Thank you.

  • Hi Pavel,

    Good news is that with ti-ezsdk_dm814x-evm_5_04_00_11, I can now write to the flash and the contents will stay there upon power cycle.

    Bad news is that writing the MLO to the flash does not make the flash bootable, must I name the file to MLO before I flash in the code??

    Thanks and regards,

    poh boon

  • Poh,

    Poh Boon Teo said:

    must I name the file to MLO before I flash in the code??

    No, MLO is used only for SD boot. For NAND boot, you should use ti8148_evm_min_nand and the generated output file will be u-boot.min.nand.  See http://processors.wiki.ti.com/index.php/TI81XX_PSP_UBOOT_User_Guide#Building_U-Boot

    Make sure also you configure the Boot Mode pins for NAND boot:

    http://processors.wiki.ti.com/index.php/TI81XX_PSP_UBOOT_User_Guide#EVM_Switch_Settings

    Best regards,
    Pavel

  • Hi Pavel,

    I have made sure that the boot mode is set correctly by reading the CONTROL MODULE register through JTAG, however, we are still not able to boot up from nand.

    One question I have is that in this case, has the code run to MLO or not? Could it be something due to the nand device table?

    Is there something we need to configure?

    Please advise.

    Thanks and regards,

    poh boon

  • Poh,

    Poh Boon Teo said:
    I have made sure that the boot mode is set correctly by reading the CONTROL MODULE register through JTAG, however, we are still not able to boot up

    Do you mean the CONTROL_STATUS register? What is the value in it?

    Poh Boon Teo said:

    One question I have is that in this case, has the code run to MLO or not? Could it be something due to the nand device table?

    Is there something we need to configure?

    Please refer to the below links for NAND boot:

    http://processors.wiki.ti.com/index.php/Davinci/Sitara/Integra_Nand_Boot_FAQ

    http://processors.wiki.ti.com/index.php/TI81XX_PSP_User_Guide#Boot_from_NAND_2

    http://e2e.ti.com/support/dsp/davinci_digital_media_processors/f/716/t/233142.aspx

    http://e2e.ti.com/support/dsp/davinci_digital_media_processors/f/717/p/231420/815463.aspx

    http://e2e.ti.com/support/dsp/davinci_digital_media_processors/f/717/t/206510.aspx

    http://e2e.ti.com/support/dsp/davinci_digital_media_processors/f/717/t/191210.aspx

    http://e2e.ti.com/support/embedded/linux/f/354/p/242691/849509.aspx

    BR
    Pavel

  • Hi  Pavel,

    I have started a separate thread under the heading AM3874 not able to boot up from Nand flash.

    I already identified the problem is way before the software code starts to run.

    Please refer to that thread.

    Thanks and regards,

    poh boon