none
Windows Embedded CE Boot Problem from SD Card

    Question

  • Hi all,

    I want to boot the CE image from SD card on i.MX23 EVK. There are nk.nb0 and nk.nb1 files in the release directory of the OSDesign project. What do they mean? After I run the following command on PC host and plug the SD card in the board, I've launched the NK image with "L" command from eboot menu.

    cfimager -a -f eboot.sb -d E -e nk.nb0

    The following messages are shown but the OS is not started. What can the problem be? Should nk.nb1 be handled?

     

    Press [ENTER] to launch image stored in SD/MMC or [SPACE] to cancel.

    Initiating image launch in 59 seconds.

    -----------------------------------------------------------------------------
    Freescale iMX SOC Menu Item
    -----------------------------------------------------------------------------
     [0] IP Address : 192.168.111.10
     [1] Set IP Mask : 255.255.255.0
     [2] Boot Delay : 60
     [3] DHCP : Disabled
     [4] Reset to Factory Default Configuration
     [5] Select Boot Device : NK from SD/MMC
     [6] Set MAC Address : 0-2-B3-92-A8-C4
     [7] Format OS NAND Region
     [8] Format All NAND Regions
     [9] Bootloader Shell
     [I] KITL Work Mode : Polling
     [K] KITL Enable Mode : Disable
     [P] KITL Passive Mode : Disable
     [S] Save Settings
     [D] Download Image Now
     [L] Launch Existing Flash Resident Image Now
     [E] Select Ether Device : USB Serial
     [M] MMC and SD Utilities
     [R] Reinit Display
     [F] NAND Low Level Format
     [U] Set UUID : FF-FF-FF-FF-FF-FF-FF-FF-FF-FF-FF-FF-FF-FF-FF-FF

     Selection: l
    -BLMenu .
    INFO: Using device name: 'MX23343204'
    SD Low Density card
    SD: Switched to 4 bit mode
    INFO: Initialized SD Card
    Card Capacity 1955840 (Kbytes)
    INFO: pSDImageCfg->dwNkOffset = 75500000, pSDImageCfg->dwNkSize = 0
    INFO: Reading NK image to SDHC (please wait)...
    INFO: Copying NK image to RAM address 0xa0200000
    INFO: Read is 100% complete
    INFO: Copy of NK completed successfully
    OEMLaunch called PhysAddress 0x40200000.
    Download successful!  Jumping to image at 0x0 (physical 0x40200000)...

     

    Thanks in advance for your helps,

    Yasemin

    Thursday, January 20, 2011 12:30 PM

Answers

  • Hi all,

    I've solved the problem. Also image_cfg.h of i.MX23 BSP files (not only config.bib) must be modified by increasing IMAGE_BOOT_NKIMAGE_SD_SIZE.

    Maybe this comment can help the developers who encounters with such problem.

    Thanks to all,


    • Marked as answer by yaseminyilmaz Wednesday, February 09, 2011 12:55 PM
    Wednesday, February 09, 2011 12:55 PM

All replies

  • Assuming that you didn't intentionally set up your bib file to create an nk.nb1 see:  http://geekswithblogs.net/BruceEitman/archive/2009/01/01/platform-builder-error-ram-start-overlaps-rom-binary.aspx
    Bruce Eitman (eMVP)
    Senior Engineer
    Bruce.Eitman AT Eurotech DOT com
    My BLOG http://geekswithblogs.net/bruceeitman

    Eurotech Inc.
    www.Eurotech.com
    Thursday, January 20, 2011 1:27 PM
  • Thanks so much. It has been very helpful to determine the problem.

    I've tried to reduce the NK.bin size by removing some Catalog Items. So the size of new image file is ~28MB (< 32MB). And Ce image is booted from SD card successfully. The ce.bib file includes the following memory records:

        AUTOSIZE=ON
        ROMSTART=80200000
        ROMSIZE= 02000000
        ROMWIDTH=32
            ; ROMOFFSET = (FLASH_PHYSICAL_ADDRESS - ROMSTART) % 0x100000000
            ;           = (0x84200000 -  0x80200000) % 0x10000000 = 4200000
            ROMOFFSET=4200000

     

    But I want to boot larger CE image from SD card (~40MB). In order to succeed it, I've modified the ROMSIZE in BSP's config.bib as following:

    ; ----------------------------------------------------------------------
    ;                   Name        Address      Size        Type
                        NK          80200000  02000000  RAMIMAGE
                        RAM         82200000 07E00000 RAM
                        OCRAM       88000000     00008000    RESERVED

    IF IMGFLASH !
        AUTOSIZE=ON
        ROMSTART=$(NK_START)
        ;ROMSIZE= $(NK_SIZE)
        ; MODIFIED
        ROMSIZE=02710000
        ROMWIDTH=32
        IF IMGNAND
            ; ROMOFFSET = (FLASH_PHYSICAL_ADDRESS - ROMSTART) % 0x100000000
            ;           = (0x84200000 -  0x80200000) % 0x10000000 = 4200000
            ROMOFFSET=4200000
        ENDIF
        IF IMGSDMMC
            ; ROMOFFSET = (FLASH PHYSICAL ADDRESS - ULDR_PHSYICAL_START) % 0x100000000
            ;           = ( 0x87F00000            -  0x80200000      ) % 0x10000000 = 7D00000
            ROMOFFSET=7d00000
        ENDIF
    ENDIF

     

    But the problem continues. CE image boot remains the message "Download successful!  Jumping to image at 0x0 (physical 0x40200000)...". How can I solve this problem?

     

    Thanks a lot for your clarifications and helps,

    Yasemin

     

    Friday, January 21, 2011 9:55 AM
  • Hi,

    I guess you may also need to increase RAMIMAGE size.

    Thank You & Regards,

    GSR

    Friday, January 21, 2011 10:49 AM
  •  

    Thanks, I've tried a little time ago. I've modified NK_SIZE, RAM_START and ROMSIZE as following but it'is failed. Any suggestions please?

    ; ----------------------------------------------------------------------
    ;                   Name        Address      Size        Type

                        NK          80200000  02800000  RAMIMAGE
                        RAM         82A00000 07E00000 RAM
                        OCRAM       88000000     00008000    RESERVED

    IF IMGFLASH !
        #define NK_START    80200000
        IF IMGUUT
            #define NK_SIZE     00300000    ;3MB
        ENDIF
       
        IF IMGUUT !
            ;MODIFIED
            ;#define NK_SIZE     02000000    ;32MB
            #define NK_SIZE     02800000    ;40MB

        ENDIF   
        ;MODIFIED
        ;#define RAM_START   82200000
        #define RAM_START   82A00000
      
        IF IMGRAM128
            #define RAM_SIZE    07E00000    ;126MB   
        ELSE IF IMGRAM64
            #define RAM_SIZE    03E00000    ;62MB   
        ELSE
            #define RAM_SIZE    01E00000    ;30MB   
        ENDIF

    ENDIF

    Friday, January 21, 2011 11:50 AM
  • "as following but it'is failed." - what exactly does that mean?  Does it means that the exact same problem occurs, which is that an nk.nb0 and nk.nb1 are created and the OS fails to boot?  Then you still have the same problem which is that your OS is larger than the size that you allocated.

    You may want to consider using AUTOSIZE=ON


    Bruce Eitman (eMVP)
    Senior Engineer
    Bruce.Eitman AT Eurotech DOT com
    My BLOG http://geekswithblogs.net/bruceeitman

    Eurotech Inc.
    www.Eurotech.com
    Saturday, January 22, 2011 1:40 PM
  • Hi all,

    I've solved the problem. Also image_cfg.h of i.MX23 BSP files (not only config.bib) must be modified by increasing IMAGE_BOOT_NKIMAGE_SD_SIZE.

    Maybe this comment can help the developers who encounters with such problem.

    Thanks to all,


    • Marked as answer by yaseminyilmaz Wednesday, February 09, 2011 12:55 PM
    Wednesday, February 09, 2011 12:55 PM