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.

Problem when booting from SD card on L137 EVM using WinCE

Other Parts Discussed in Thread: OMAP-L137

Hi,

recently I was able to build and successfully run the OMAPL137_AM17X_SAMPLE on the OMAP L137 EVM of Spectrum Digital Inc

Today I wanted to run it standalone and copied the RELEASE image nk.nb0 to the preformatted (FAT32) SD-card ( as described in the Quick-Start-Guide ).

After having configured EBOOT to boot from SD-card, it seemed to work perfectly but shortly before beeing ready ( it is at the line " KITL: using sysintr 0x11" ) it paused for about 100 sec. , then continued with the rest but finally did not respond to any Ping from outside.

Any idea what does not work here ?

Output from the serial port:

************************************************************************************************************

Booting with TI UBL
Device OPP (300MHz, 1.2V)01
Microsoft Windows CE Bootloader Common Library Version 1.4 Built Aug 17 2011 21:
18:23
INFO:OALLogSetZones: dpCurSettings.ulZoneMask: 0xb
Microsoft Windows CE EBOOT 1.0 for OMAPL137 OMAPL137/AM17X EVM. Built Aug 17 201
1 at 21:24:59
BSP version 01.10.00, SOC version 01.10.00
   CODE : 0xC3F60000 -> 0xC3FA0000
   DATA : 0xC3FA0000 -> 0xC3FE0000
  STACK : 0xC3FE0000 -> 0xC3FF9800
Enabled OAL Log Zones :  ERROR, WARN, INFO,
Platform Init done
System ready!
Preparing for download...
Predownload...
Valid boot configuration found
fetch_production_data: MAC-1 00:0e:99:03:14:82
fetch_production_data: MAC-2 00:0e:99:03:14:83
INFO: MAC address: 00:0e:99:03:14:82
WARN: Invalid BSP_ARGS data found (using defaults)
WARN: Unable to get hardware entropy

Hit space to enter configuration menu  0
Device ID set to hallo-omap
BLFlashDownload: LogicalLoc  - 0x01C40000
Loading from SD card
+ReadNKFromSDMMC
ReadFileFromSDMMC: reading file 'nk.bin'
SDBootPDD: PDD_SDInitializeHardware: MMCSD
SDBootMDD: SDInitializeHardware: SD card detected
SDBootMDD: SDInitializeHardware: V2.0 card detected
SDBootMDD: SDInitializeHardware: timeOut = 0
SDBootMDD: SDInitializeHardware: timeOut = 1
SDBootMDD: SDInitializeHardware: timeOut = 2
SDBootMDD: SDInitializeHardware: timeOut = 3
SDBootMDD: Card address is aaaa
SDBootMDD: 4-bit data bus selected
InitMasterBootRecord: Partition 0, type 11
InitMasterBootRecord: Partition 0, FAT32, start 0x10e00, length 0x75c07200
InitPartition: Offset 0x10e00, length 0x75c07200
ReadFileFromSDMMC: can't open image file 'nk.bin'
ReadFileFromSDMMC: reading file 'nk.nb0'
SDBootPDD: PDD_SDInitializeHardware: MMCSD
SDBootMDD: SDInitializeHardware: SD card detected
SDBootMDD: SDInitializeHardware: V2.0 card detected
SDBootMDD: SDInitializeHardware: timeOut = 0
SDBootMDD: SDInitializeHardware: timeOut = 1
SDBootMDD: Card address is f551
SDBootMDD: 4-bit data bus selected
InitMasterBootRecord: Partition 0, type 11
InitMasterBootRecord: Partition 0, FAT32, start 0x10e00, length 0x75c07200
InitPartition: Offset 0x10e00, length 0x75c07200
ReadFileFromSDMMC: file size = 33554432 bytes
CheckCEImage: checking image at 0xc0000000

ROMHDR (pTOC = 0xc0da8130) ---------------------
  DLL First           : 0x4001c001
  DLL Last            : 0x408ec094
  Physical First      : 0x80000000
  Physical Last       : 0x80f28940
  Num Modules         :        169
  RAM Start           : 0x80f30000
  RAM Free            : 0x810fe000
  RAM End             : 0x8373f800
  Num Copy Entries    :          4
  Copy Entries Offset : 0x809ef8ac
  Prof Symbol Length  : 0x0017eb2c
  Prof Symbol Offset  : 0x80f7f000
  Num Files           :         68
  Kernel Flags        : 0x00000000
  FileSys RAM Percent : 0x30303030
  Driver Glob Start   : 0x00000000
  Driver Glob Length  : 0x00000000
  CPU                 :     0x01c2
  MiscFlags           :     0x0002
  Extensions          : 0x80001070
  Tracking Mem Start  : 0x00000000
  Tracking Mem Length : 0x00000000
------------------------------------------------

Image Start .......: 0x00000000
Image Size ........: 0x00000000
Image Launch Addr .: 0x00000000
Image ROMHDR ......: 0x00000000
Boot Device/Type ..: 3 / 6
INFO: Launch Windows Embedded CE by jumping to 0xc0000000...
ADE
Windows CE Kernel for ARM (Thumb Enabled) Built on Nov  3 2010 at 07:30:04
OEMInit: init.c built on Aug 17 2011 at 21:25:30.
BSP version 01.10.00, SOC version 01.10.00
INFO:OALLogSetZones: dpCurSettings.ulZoneMask: 0xf
WARN: Updating local copy of BSP_ARGS
Intr Init done...
Timer Init done...
+OALDumpClocks
Clock Configuration :
  Reference Clock 0 ..  24000000 Hz
    PLL0 ............. 300000000 Hz
    PLL0:SYSCLK1 ..... 300000000 Hz (DSP Subsystem)
    PLL0:SYSCLK2 ..... 150000000 Hz (UART,EDMA,SPI,MMC/SD,eCAP,eQEP,ePWM,LCDC,HP
I,McASP,EMIFB)
    PLL0:SYSCLK3 ..... 100000000 Hz (EMIFA)
    PLL0:SYSCLK4 .....  75000000 Hz (INTC, SYSCFG, PSC, I2C1, USB1.1, EMAC/MDIO,
 GPIO)
    PLL0:SYSCLK5 .....  50000000 Hz (EMIFB I/O clock)
    PLL0:SYSCLK6 ..... 300000000 Hz (ARM Subsystem)
    PLL0:SYSCLK7 .....  50000000 Hz (EMAC)
    PLL0:AUXCLK ......  24000000 Hz (I2C0, Timers, McASP serial clock, RTC, USB2
.0)
-OALDumpClocks
WARN: Updating local copy of BSP_ARGS
OEMKitlStartup(mac = 00:0e:99:03:14:82)
DeviceId................. hallo-omap
pArgs->flags............. 0xD
pArgs->devLoc.IfcType.... 0
pArgs->devLoc.LogicalLoc. 0x1E23000
pArgs->devLoc.PhysicalLoc 0x0
pArgs->devLoc.Pin........ 0
pArgs->ip4address........ 0
pDevice->Name............  s
pDevice->ifcType......... 0
pDevice->id.............. 0x1E23000
pDevice->resource........ 0
pDevice->type............ 2
pDevice->pDriver......... 0x80F39000
MAC addr is 0:e:99:3:14:82.
OMAPEmacInit: f_pEmacRxDesc = 0xb0620000
OMAPEmacInit: f_pEmacTxDesc = 0xb0621000
OMAPEmacInit: waiting for active phy...
OMAPEmacInit: f_pMdioRegs->m_Alive = 0xe
KITL: *** Device Name hallo-omap ***
KITL: using sysintr 0x11                                                                      <------- HERE IT PAUSED FOR 100 sec. !!!!
VBridge:: built on [Sep  6 2006] time [19:28:11]
VBridgeInit()...TX = [16384] bytes -- Rx = [16384] bytes
Tx buffer [0xA0F6FCA0] to [0xA0F73CA0].
Rx buffer [0xA0F73CC0] to [0xA0F77CC0].
VBridge:: NK add MAC: [0-E-99-3-14-82]
ERROR: OALKitlInit: KitlInit failed
-OEMInit
  PINMUX8 =0x21122111
  PINMUX9 =0x00008412
  PINMUX10=0x22222220
  PINMUX11=0x00000022
  PINMUX12=0x00000000
  PINMUX13=0x22111100
  PINMUX14=0x44222222
  PINMUX15=0x22444444
  PINMUX16=0x22222222
  PINMUX17=0x80822282
  PINMUX18=0x08000008
  PINMUX19=0x00000000
  CFGCHIP1=0x00000000
  CFGCHIP2=0x00008a82
OEMGetExtensionDRAM: Added 0x83E00000 -> 0x84000000
WARN: Updating local copy of BSP_ARGS
OEM: Cleaning system hive
OEM: Cleaning user profiles
WARN: Updating local copy of BSP_ARGS
OEM: Not cleaning system hive
VBridge:: VB_INITIALIZED returns [1]
VBridge:: RESET_BUFFER received.

**************************************************************************

System is not reachable over Ping !

Best regards,

Franz

 

  • Franz,

    Could you disable kitl from the network settings in eboot? You would probably be all set then.

    Aparna

  • Aparna,

    thank you very much for your hint.

    Unfortunately it did not solve my problem.

    I've changed the network settings and disabled KITL inside Eboot and stored the settings using menu item 6) Save:

    ******************************************************************************************************

     Selection: 2
     Disable KITL (actually enabled) [y/-]: y
     KITL disabled

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

     Network Settings
    --------------------------------------------------------------------------------

     [1] Show Current Settings
     [2] Enable/disable KITL
     [3] KITL interrupt/poll mode
     [4] Enable/disable DHCP
     [5] Set IP address
     [6] Set IP mask
     [7] Set default router
     [8] Enable/disable VMINI
     [0] Exit and Continue

     Selection: 1

     Network:
      KITL state .............. disabled
      KITL mode ............... interrupt
      DHCP .................... enabled
      MAC address ............. 00:0e:99:03:14:82
      IP address .............. 0.0.0.0
      IP mask ................. 0.0.0.0
      IP router ............... 0.0.0.0
      VMINI ................... enabled

    ************************************************************************

    Then I pressed the HW-RESET button, but faced the same problem again as described in my initial post.

    So, what should I do next ? Do you have any other idea ?

    With kind regards,

    Franz

     

  • Franz,

    While I am not very sure what the issue could be, here are two items to try

    1) try to exit and continue without hardware booting. Whatever changes you make in eboot will hold good till a power reset on the board. I am surprised that you are seeing the kitl failure even after disabling kitl in eboot. Maybe an issue with save settings.

    2) build a non-kitl build to rule out this failure altogether.

    Aparna

     

  • Aparna,

    thanks for very quick response !

    To Point 1) did not solve the problem

    To Point 2) can you please tell me where I can remove the kitl from the OS build ?I went through all items in the catalog item view but could not find a checkbox to disable building the kitl feature.

    What I've done in the meantime is : In the debug output there is written the string : "OEMKitlStartup(mac = 00:00:00:00:00:00)"

    I've tried to find the source code where this string is generated and found it in function 'OEMKitlStartup()' in the file kitl.c , located in the SRC folder of the BSP:

    *********************************************************************

    BOOL OEMKitlStartup()
    {
        BOOL rc = FALSE;
        OAL_KITL_ARGS *pKITLArgs, KITLArgs;
        CHAR *pszDeviceId;
        UINT16 *mac = NULL;

        KITL_RETAILMSG(ZONE_KITL_OAL, ("+OEMKitlStartup\r\n"));

        OALArgsInit((BSP_ARGS *)OALPAtoCA(IMAGE_SHARE_ARGS_PA));

        // Look for bootargs left by the bootloader or left over from an earlier boot.
        //
        pKITLArgs = (OAL_KITL_ARGS*)OALArgsQuery(OAL_ARGS_QUERY_KITL);

        // Print out the Mac address
        mac = pKITLArgs->mac;
        OALMSGS(TRUE, (
            L"OEMKitlStartup(mac = %02x:%02x:%02x:%02x:%02x:%02x)\r\n",
            mac[0]&0xFF, mac[0]>>8, mac[1]&0xFF, mac[1]>>8, mac[2]&0xFF, mac[2]>>8
        ));
    ********************************************************************

    So, this is an indication that above function has been called during startup procedure, but I think this is after Eboot has transferred control to the WinCE system and therefore Eboot is out of the game and cannot be made responsible for the misbehavior. Or is there something I'm not aware off ?

    What is your opinion ?

    Thanks for your help,

    Franz

     

  • For 1) You can disable kitl from platform builder->project->properties->build option

    Regarding 2), it does look like the bootloader settings are being used based on following entry in the same kitl.c file

        // Look for bootargs left by the bootloader or left over from an earlier boot.
        //
        pKITLArgs = (OAL_KITL_ARGS*)OALArgsQuery(OAL_ARGS_QUERY_KITL);

    At the same time, they are being set to kitl enabled by default if such entries are not found

    if (pKITLArgs == NULL) {
            KITL_RETAILMSG(ZONE_WARNING, ("WARN: Boot arguments not found, use defaults\r\n"));
            memset(&KITLArgs, 0, sizeof(OAL_KITL_ARGS));
            // By default, enable: KITL, DHCP, and VMINI...
            KITLArgs.flags = (OAL_KITL_FLAGS_ENABLED | OAL_KITL_FLAGS_DHCP | OAL_KITL_FLAGS_VMINI);

    I would suggest you try out option 1.

    Have you made any changes to the BSP? I did see the device name to be something other than "OMAPL137-xxx" in your earlier log. If that is due to some changes you have made, you might want to revert them to see if this behaviour is still there. Just a thought.

    regards,

    Aparna

  • Hi Aparna,

    after having disabled KITL via the platformbuilder build properties the problem has been solved !

    Thank you very much for your instant help !

    Franz

    PS:

    I'd like to summarize the 3 major problems I faced during the process of building and running WinCE 6 on the OMAP L137 EVM ( Rev H board from Sprectrum Digital ):

     1 ) Compiling the  OMAPL137_AM17X_SAMPLE was not possible because after installation of the BSP a folder was missing ! Only after creating an empty directory "bin" in C:\WINCE600\PLATFORM\OMAPL137_AM17X\SRC\DRIVERS\PRU\firmware the image nk.bin was created.

     2) Flashing the bootloaders ( for ARM,  for DSP and the EBOOT ) was not successfull using CCS. I could only flash them using the 'sfh_omap-l137.exe' tool . The baud rate has to be 115200 and not 230400 baud as described in the quick start guide. ( I'm using a EVM,Rev H  from Spectrum Digital populated with a Rev. 2 OMAP processor ). It is still unclear why CCS fails.

     3) When running the EVM standalone ( booting from SD-card ) then it is not reachable. Only after having disabled KITL in the build properties ( and not as described in the Eboot )  the EVM is reachable over Ping.

    Maybe you can initiate an update of the documentation in the quickstart guide to help other newcomers during launching their OMAP board.

    Now I'm happy because after having installed ~20 GB on my harddrive and after about 45 work hours ( many of them used for troubleshooting ) I can finally start with my real development.

     

     

  • Franz,

    Many thanks for your feedback and we appreciate you having taken the time to consolidate your observations. We will update the documentation and look into the issues that you have summarized.

    Glad that you can make progress now.

    regards,

    Aparna

  • Franz,

    Regarding the baud rate setting when you use the serial flash tool sfh_omap-l137.exe, it might be because you are using a newer rev 2.0 processor.  Our BSP is tested on a rev 1.1 processor which requires 230400 baud rate.

    Just to confirm, what is printed on the processor chip?

    It should be similar to XOMAP137...

    Regards,

    WM

  • Hi WMK,

    I just took a look onto the OMAP chip, but there isn't an X before the OMAP137 name. For your convenience I made a photo :

    Your team has tested the BSP with OMAP Rev1 , but you currently deliver your BSP sample OS configured for Rev2:

    Therfore it is essential for users to know which version of OMAP they are using because of the necessary baudrate for the sfh_omap_l137 tool:

    Rev1: 230400 baud

    Rev2: 115200 baud

    But that is the correct value for the EVM of Spectrum because it has the label Rev H

    ...and since Ref G they populate their EVM with Rev2 OMAPs  as can be seen on their website:

    http://support.spectrumdigital.com/boards/evmomapl137/revg/   ( I guess PG 2.0 PROCESSOR should express this !?.)

    By the way : At spectrum digital they should update their site and provide informations about the already sold Rev H boards !

     

    Best regards,

    Franz.

     

  • Franz,

    Thanks.  That clears the confusion.  The 'B' in ...L137B... is the indication of a rev 2.  You should see the mentioning of using 115200 in the online version of the user guides now.

    Regards

    WM

  • Hi

    hi

    This error message is coming while running online setup of win CE 6.0.

    I followed all steps as per Microsoft website, even acquired key also.

    kindly help on this issue.

    hemant