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.

How to connect ethernet to flash the WEC7 Image

Other Parts Discussed in Thread: OMAP3530

Hi, 

I am using OMAP3530 eval board for WEC7 environment.  I have done the build in release mode with KITL and kernel debugger enabled.  But, I am not clear from the 'BSP_WINCE_ARM_A8_User_Guide.pdf' how to connect the ethernet port.  Its saying the Connect the EVM3530 Ethernet to the same subnet as the Host PC.  How to do this and establish a connection to flash the image.  Am I need to connect a ethernet cable directly connected to My development PC to the target device...in this case what should I provide the details of IP address, Mask, router and DHCP should enabled or not??  please clarify.

Thanks and Regards,

Karthick

  • Actually, I have connected the ethernet cable to OMAP3530 platform ethernet hub and development PC where Platform Builder is running. I manged to configure the IP address and others as followed through eboot menu;
    KITL state: enabled
    KITL type: active
    KITL mode: interrupt
    DHCP: enabled
    IP address: xx.xxx.xx.x
    IP mask: 255.255.255.128
    IP router: 0.0.0.0
    Eth MAC Addr: 00:50:c2:7e:98:f3 (EEPROM)
    VMINI: enabled
    Note: USBFN RNDIS MAC Addr cannot be changed.

    personal Note: just I put xx on IP address.

    After this, I saved the settings and did power off and then powered the device again. But I manged to get the following error in the hyper terminal. How to resolve it. Also I am not seeing the target device name listed. Please provide possible solution to resolve it. I want to flash the image file (NK.bin) into NAND flash memory through ethernet.


    INFO: *** Device Name EVM3730-39155 ***
    InitDHCP():: Calling ProcessDHCP()
    ProcessDHCP()::DHCP_INIT
    DHCP server is not responding !!! Aborting.
    ERROR: EbootInitEtherTransport call failed

    Regards,
    Karthick
  • Hi Karthick,

    I am back again. To download the image from host PC to the target device using Ethernet, bootloader must support ethernet for that board.

    Please check if you have got proper IP, Ping it and test. From your post it looks like you have connected cable from the host PC to the device, so you can't connect to DHCP and rightly the error. 

    You can do the connection in two ways: Static and dynamic. 

    In static you connect the cable to host pc from device and select None or disable in DHCP option in your bootloader. Set your own free IP and make necessary modifications in host PC to make it workin Static IP and then download.

    In dynamic, you should connect the cable from the device to your Ethernet Hub and your host PC also should be connected to the internet. Then enable DHCP, and you should not get this error.

    Good Luck!

    Regards,

    Seetharam

  • Hi Seetharam, Sorry for the delay in getting back.  

    Actually, I was able to boot from SD card earlier.  After I did XLDR and EBOOT to the flash into NAND flash memory via UART using pserial.exe, I just did some experiments on the eboot menu that time I did erased the flash block range from 0-2047.  May be due to this, I am unable to run the WEC7 image from SD card.

    Am I wrong in erasing the flash memory from 0-2047 that could affect the SD card boot...?  Please let know your thoughts.

    Once, the image is up I am able to ping the IP address (right now I don't know) it from my development PC to talk to the target device.

    Please clarify.

    Thank you,

    Karthick

  • Hi,
    Now I it's alright. The root cause behind the issue is that I need to erase the complete XLDR and EBOOT part from the NAND flash memory. Becuase it's trying to boot from NAND flash always and not yielding the SDCard to boot..
    Alas, I successfully erased the whole 0-2047 blocks in the flash memory region and able to launch the WEC7 image from the SDcard.

    Regards,
    Karthick
  • Hi Seetharam, thanks for your great support.

    I am able to successfully flash the WEC7 OS image to the NAND flash memory using the ethernet connectivity.  I used dynamic ip method to automatically retrive the IP address over DHCP to connect the development PC and the target device over ethernet...

    What is the difference between setting  IMGNAND and IMGFLASH...In user guide mentioned that to flash the OS image the IMGNAND environment variable should be set.  But I am seeing IMGFLASH (ie, Write run-time to flash memory) in build options. Is both has different meanings.

    And, I enabled kernel debugger and KITL in build options, and configured under release mode instead of debug.  Is this possible to me to debugg on this mode becuase I enabled both options.

    Further, if I configure under debug mode (including kernel debugger and KITL enabled), I see that the following build errors were generated.  

    errror: Image is too large for current RAM and RAMIMAGE settings

    error MSB3073: The command "romimage ......

     

    How to resolve it.  Please help if you had come across.

    Regards,

    Karthick

  • Hi,

    First of all, IMGNAND is used to build the run time if you are storing in NAND flash. IMGFLASH is also similar to that, they both are not different much. If you check config.bib file in SRC/FILES/ folder, you can understand those two variables. Only addresses are different, like RAM address and RAM size. 

    If you enable Kernel Debugger and KITL, you need to enable KITL in bootloader menu and then launch the image so that the board gets connected to the platform builder. You can debug in this mode also, you can see all the dlls getting loaded one after another, Booting time will be more in this mode. If anytime the OS crashes ,debugger will point the location in this mode. 

    Yeah, the error is when you build in debug mode, the size of the OS image will be more and in config.bib you have configured only 94MB. It will be around 130 MB. You need to increase the size of NKIMAGE in config.bib. If you couldn't let me know or post your config.bib I will change and re post. 

    Regards,

    Seetharam

  • Hi Seetharam,
    1). I checked the config.bib, but there was no reference made to IMGFLASH...However IMGNAND is present and I still not getting the importance of these two. To breif while I downloaded the OS image through ethernet connectivity with the IMGFLASH enabled (Write run-time image to flash memory). Am I right, that with IMGFLASH disabled we can't write the OS image (NK.bin) to NAND flash memory...Also, that with IMGNAND disabled we can't store the OS image to NAND flash memory permanently....

    2). From your post, I am getting an understanding that in Release mode also, we can able to debug if Kernel Debugger and KITL options are enabled. And the actual difference between Debug mode and Release mode is that in release mode additional files that required to debug will be automatically loaded (.dll files) and additional time will take to debug. But In debug mode ( if BSP compiled in that way), the required debug files will be loaded as part of OS image itself and takes large memory to produce the NK.bin.

    3). Sorry I could n't make an attachment of config.bib.. But I am using BSP_WINCE_ARM_A8_02_30_00_Source without any modification right a way. I don't know while I am replying could n't attach any?

    Please clarify.

    Thank you,
    Karthick
  • Hi Seetharam,
    1). I checked the config.bib, but there was no reference made to IMGFLASH...However IMGNAND is present and I still not getting the importance of these two. To breif while I downloaded the OS image through ethernet connectivity with the IMGFLASH enabled (Write run-time image to flash memory). Am I right, that with IMGFLASH disabled we can't write the OS image (NK.bin) to NAND flash memory...Also, that with IMGNAND disabled we can't store the OS image to NAND flash memory permanently....

    2). From your post, I am getting an understanding that in Release mode also, we can able to debug if Kernel Debugger and KITL options are enabled. And the actual difference between Debug mode and Release mode is that in release mode additional files that required to debug will be automatically loaded (.dll files) and additional time will take to debug. But In debug mode ( if BSP compiled in that way), the required debug files will be loaded as part of OS image itself and takes large memory to produce the NK.bin.

    3). Sorry I could n't make an attachment of config.bib.. But I am using BSP_WINCE_ARM_A8_02_30_00_Source without any modification right a way. I don't know while I am replying could n't attach any?

    Please clarify.

    Thank you,
    Karthick
  • Hi,

    Actually according to those IMG variables we can change the image configuration. It changes the RAM address and NK SIZE also. Also ROMOFFSET variable in config.bib. Your understanding is right, it just to build the images for flash memory.

    If KITL and Kernel Debugger is enabled you can debug in any mode, release/debug. In debug mode why the size of the NK is more is , it adds all debug prints stated as DEBUGMSG in the BSP. Release mode does not add these prints. KITL is used to debug and debugger to locate the exact place of crash/hang. You need to increase the NK_SIZE variable in config.bib and RAMSIZE to build and boot debug mode.

    These two variables change in config.bib.

    #define NK_SIZE 03FC0000
    #define RAM_START 80200000

    Regards,
    Seetharam
  • Hi seetharam, thank you very much for your clarifications. It seems I couldn't able to clearly judge on which macros need to be changed....To simplify this, I have created one more discussion on 'Increase the RAM size' which I have attached the config.bib and image_cfg.h files for modifications to be made for debug mode build.
    Please make changes and send it across to me. Thank you.

    Regards,
    Karthick