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.

OMAP L138 Serial flash loading utility (slh_OMAP-L138.exe)

Other Parts Discussed in Thread: OMAP-L138

Hi,

I am trying to use serial flash loading utility to load a ais u-boot to a custom board that is based on a OMAP L138 logic evm board.

Using the OMAP L138 evm as first try, I wasn't able to load the u-boot.

I have all the images that came with DaVinci-PSP-SDK-03.22.00.02 [1] with:

slh_OMAP-L138.exe -waitForDevice -v u-boot-spi.ais

and don't print any message of error but when opening the serial port don't receive any output.

From texas wiki [2] page it says that to  load to RAM it needs the version 2.xx but OMAP-L138_FlashAndBootUtils_2_40 brings the ./slh_OMAP-L138.exe wit version 1.65.

The guys with hawkboard [3] used this method to save the images to spi [2] so it should work ...

Any hint about this ?

[1] - ./DaVinci-PSP-SDK-03.22.00.02/images/u-boot/omapl1x8/u-boot-*.ais
[2] ̣- http://processors.wiki.ti.com/index.php/Serial_Boot_and_Flash_Loading_Utility
[3] - https://groups.google.com/forum/?fromgroups=#!topic/hawkboard/55-fy2KaJiU/discussion

  • Hi Anibal,

    I'll look into this issue for you. Could you provide the follow information?

    1. Terminal output after you run the utility

    2. Your boot pin configuration

    3. Confirmation that this is the EVM you are using: http://www.ti.com/tool/tmdsevml138

     

    Thanks,

    Clinton

  • Hi Clinton,

    1. The output:

    ./slh_OMAP-L138.exe -waitForDevice -v /home/anibal/projectos/map8100/DaVinci-PSP-SDK-03.22.00.02/images/u-boot/omapl1x8/u-boot-spi.ais 

    -----------------------------------------------------
       TI Serial Loader Host Program for OMAP-L138
       (C) 2012, Texas Instruments, Inc.
       Ver. 1.65
    -----------------------------------------------------


    Platform is Unix/Linux.
    Attempting to connect to device /dev/ttyS0...
    Press any key to end this program at any time.

    Entering AIS Parser

    Waiting for the OMAP-L138...
    (AIS Parse): Read magic word 0x41504954.
    (AIS Parse): Waiting for BOOTME... (power on or reset target now)
    (AIS Parse): BOOTME received!
    (AIS Parse): Performing Start-Word Sync...
    (AIS Parse): Performing Ping Opcode Sync...
    (AIS Parse): Processing command 0: 0x58535901.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Loading section...
    (AIS Parse): Loaded 15236-Byte section to address 0x80000000.
    (AIS Parse): Processing command 1: 0x58535906.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Performing jump and close...
    (AIS Parse): AIS complete. Jump to address 0x80000000.
    (AIS Parse): Waiting for DONE...
    (AIS Parse): Boot completed successfully.

    Operation completed successfully.

    I tried to run a microcom to connect to serial port but don't receive any output, even if I press enter or other key.

    $ microcom -s 115200
    connected to /dev/ttyS0
    Escape character: Ctrl-\
    Type the escape character followed by c to get to the menu or q to quit

    2. Boot pin configurations

    I have S7 connector with switch 7 & 8 to on, everything else to off, to boot with serial port

    3. EVM that I am using

    Yes, is http://www.ti.com/tool/tmdsevml138#1 with OMAP processor and only with baseboard.

    Thanks for the help.

    Regards,
    Aníbal

  • Anibal,

    You are using a prebuilt uboot image that is built for SPI flash boot (uboot-spi.ais) and trying to boot using UART.

    SLH is the tool for UART boot utility while SFH is the serial flash utility that used to write the boot image to the Flash. Just to clarify, is the objective to boot over UART or over SPI Flash? UART is usually just a debug boot mode as user will have to use the slh tool every time they power up the board so generally the uboot would come from the Flash memory.

    To write the image to Flash, follow the steps described here and use the -flash_noubl option

    http://processors.wiki.ti.com/index.php/Running_PSP_Components_on_OMAP-L138#Booting_U-Boot

    Regards,

    Rahul

  • Rahul,

    There isn't any prebuilt image to use with uart, so I tried the spi and the others. None work, at least they should show some output, I think ...

    I want to boot over uart.

    First I want to try on EVM how I can boot from uart. After I have a custom board were I want to boot from uart to validate the nand flash.

    You are able to test if you can boot over UART ?

    Thanks.

    Regards,
    Aníbal

  • Hi Anibal,

    Can you please try to run the UART boot sample image provided on this wiki and verify that the LED blink example boots on your evm .

    http://processors.wiki.ti.com/index.php/Boot_Images_for_OMAP-L138

    There is no pre-built uboot image provided for UART boot. You can build a Uboot image for your EVM for UART boot mode using the AISGen tool provided on that wiki.

    Please try this out and let us know if you still have issues.

    Regards,

    Rahul

  • Hi Rahul,

    I was able to run the test for the leds, but can't start u-boot ...

    Using u-boot.bin that came with DaVinci-PSP-SDK-03.21.00.04 and with AIS configuration:

    DeviceType: d800k002 ARM
    Boot Mode: UART2
    Specific Entry Point: 0x80000000

    Configure DDR & PPL1
    PPL1: 25,2,1,2,3
    DDR: 0x000000C4, 0x0A034622, 0x1C912A08, 0x3811C700, 0x00000494, 0x00000000

    Output of ./slh_OMAP-L138.exe -v -waitForDevice ~/u-boot_evm.ais

    -----------------------------------------------------
       TI Serial Loader Host Program for OMAP-L138
       (C) 2012, Texas Instruments, Inc.
       Ver. 1.65
    -----------------------------------------------------


    Platform is Unix/Linux.
    Attempting to connect to device /dev/ttyS0...
    Press any key to end this program at any time.

    Entering AIS Parser

    Waiting for the OMAP-L138...
    (AIS Parse): Read magic word 0x41504954.
    (AIS Parse): Waiting for BOOTME... (power on or reset target now)
    (AIS Parse): BOOTME received!
    (AIS Parse): Performing Start-Word Sync...
    (AIS Parse): Performing Ping Opcode Sync...
    (AIS Parse): Processing command 0: 0x5853590D.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Executing function...
    (AIS Parse): Processing command 1: 0x58535901.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Loading section...
    (AIS Parse): Loaded 552-Byte section to address 0x80000000.
    (AIS Parse): Processing command 2: 0x58535907.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Loading boot table...
    (AIS Parse): Processing command 3: 0x58535907.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Loading boot table...
    (AIS Parse): Processing command 4: 0x58535907.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Loading boot table...
    (AIS Parse): Processing command 5: 0x58535907.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Loading boot table...
    (AIS Parse): Processing command 6: 0x58535907.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Loading boot table...
    (AIS Parse): Processing command 7: 0x58535907.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Loading boot table...
    (AIS Parse): Processing command 8: 0x58535905.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Performing jump...
    (AIS Parse): Jump to address 0x80000000.
    (AIS Parse): Processing command 9: 0x58535901.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Loading section...
    (AIS Parse): Loaded 184140-Byte section to address 0x80000000.
    (AIS Parse): Processing command 10: 0x58535906.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Performing jump and close...
    (AIS Parse): AIS complete. Jump to address 0x80000000.
    (AIS Parse): Waiting for DONE...
    (AIS Parse): Boot completed successfully.

    Operation completed successfully.

    I open a terminal to serial port, press enter sometimes but don't receive any output ...

    The u-boot image need any special configuration ?

    Thanks.

    Regards,
    Aníbal

  • Does the revision of the ROM match to what you have on the device? Please run this debug.GEL file on the device and let us know what you see after you try to boot over UART. This should provide both the ROM version on your devices as well as some pointer to why the device failed to boot.

    http://processors.wiki.ti.com/index.php/OMAP-L1x_Debug_Gel_Files

    Regards,

    Rahul

    Note: Remove all other GEL files before connecting to the device.

  • ---------------------------------------------
    |             Device Information            |
    ---------------------------------------------
    DEV_INFO_00 = 0x0B7D102F
    DEV_INFO_01 = 0x00000000
    DEV_INFO_02 = 0x0000000C
    DEV_INFO_03 = 0x00000030
    DEV_INFO_04 = 0x00000000
    DEV_INFO_05 = 0x000003E0
    DEV_INFO_06 = 0x00000000
    DEV_INFO_07-DEV_INFO_08-DEV_INFO_09-DEV_INFO_10-DEV_INFO_11-DEV_INFO_12 = 0-0-6232409-2-45-5
    DEV_INFO_13,DEV_INFO_14,DEV_INFO_15,DEV_INFO_16 = 0,0,0,3930
    -----
    DEV_INFO_17 = 0x00030003
    DEV_INFO_18 = 0x00000000
    DEV_INFO_19 = 00000
    -----
    DEV_INFO_20 = 0x30303864
    DEV_INFO_21 = 0x3230306B
    DEV_INFO_22 = 0x30303864
    DEV_INFO_23 = 0x3230306B
    -----
    DEV_INFO_24 = 0x0200502D
    DEV_INFO_25 = 0x005F1959
    DEV_INFO_06 = 0x00000000
    DEV_INFO_26 = 0x1EB40000


    ---------------------------------------------
    |               BOOTROM Info                |
    ---------------------------------------------
    ROM ID: d800k002
    Silicon Revision 1.0
    Boot pins: 12
    Boot Mode: SPI1 Flash

    ROM Status Code: 0x00000000
    Description: No error

    Program Counter (PC) = 0xC1084E08

  • Thanks for the GEL file dump. Couple of things that I notice is that your boot pins are not set for UART2 boot mode and your device already is out of the user memory space after the ROM bootloader has exited.

    For UART2 boot you need to have the switch S7 settings as indicated here:

    Pin# 1 2 3 4 5 6 7 8
    Position OFF OFF OFF OFF OFF OFF ON ON

    Regards,

    Rahul

  • I think I made a mistake ... on my previous log I don't have run the gel after the load the serial loader.

    All the output, the load of the u-boot:

    (AIS Parse): Processing command 4: 0x58535907.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Loading boot table...
    (AIS Parse): Processing command 5: 0x58535907.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Loading boot table...
    (AIS Parse): Processing command 6: 0x58535907.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Loading boot table...
    (AIS Parse): Processing command 7: 0x58535907.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Loading boot table...
    (AIS Parse): Processing command 8: 0x58535905.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Performing jump...
    (AIS Parse): Jump to address 0x80000000.
    (AIS Parse): Processing command 9: 0x58535901.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Loading section...
    (AIS Parse): Loaded 184140-Byte section to address 0x80000000.
    (AIS Parse): Processing command 10: 0x58535906.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Performing jump and close...
    (AIS Parse): AIS complete. Jump to address 0x80000000.
    (AIS Parse): Waiting for DONE...
    (AIS Parse): Boot completed successfully.

    Operation completed successfully.

    And the output from gel:

    ---------------------------------------------
    | Device Information |
    ---------------------------------------------
    DEV_INFO_00 = 0x0B7D102F
    DEV_INFO_01 = 0x00000000
    DEV_INFO_02 = 0x00000014
    DEV_INFO_03 = 0x00000030
    DEV_INFO_04 = 0x00000000
    DEV_INFO_05 = 0x000003E0
    DEV_INFO_06 = 0x00000000
    DEV_INFO_07-DEV_INFO_08-DEV_INFO_09-DEV_INFO_10-DEV_INFO_11-DEV_INFO_12 = 0-0-6232409-2-45-5
    DEV_INFO_13,DEV_INFO_14,DEV_INFO_15,DEV_INFO_16 = 0,0,0,3930
    -----
    DEV_INFO_17 = 0x00030003
    DEV_INFO_18 = 0x00000000
    DEV_INFO_19 = 00000
    -----
    DEV_INFO_20 = 0x00000000
    DEV_INFO_21 = 0x00000000
    DEV_INFO_22 = 0x30303864
    DEV_INFO_23 = 0x3230306B
    -----
    DEV_INFO_24 = 0x0200502D
    DEV_INFO_25 = 0x005F1959
    DEV_INFO_06 = 0x00000000
    DEV_INFO_26 = 0x1EB40000


    ---------------------------------------------
    | BOOTROM Info |
    ---------------------------------------------
    ROM ID: d800k002
    Silicon Revision 1.0
    Boot pins: 20
    Boot Mode: UART2, 24 MHz or 12 MHz input clock

    ROM Status Code: 0x00000000
    Description: No error

    Program Counter (PC) = 0x80012934

    ---------------------------------------------
    | Clock Information |
    ---------------------------------------------

    PLLs configured to utilize crystal.
    ASYNC3 = PLL0_SYSCLK2

    NOTE: All clock frequencies in following PLL sections are based
    off OSCIN = 24 MHz. If that value does not match your hardware
    you should change the #define in the top of the gel file, save it,
    and then reload.

    ---------------------------------------------
    | PLL0 Information |
    ---------------------------------------------

    PLL0_PREDIV = 24 MHz
    PLL0_PLLOUT = 480 MHz
    PLL0_PLLOUT_POSTDIV = 240 MHz
    PLL0_PLLEN = 24 MHz
    PLL0_SYSCLK1 = 24 MHz
    PLL0_SYSCLK2 = 12 MHz
    PLL0_SYSCLK3 = 8 MHz
    PLL0_SYSCLK4 = 6 MHz
    PLL0_SYSCLK5 = 8 MHz
    PLL0_SYSCLK6 = 24 MHz
    PLL0_SYSCLK7 = 4 MHz

    ---------------------------------------------
    | PLL1 Information |
    ---------------------------------------------

    PLL1_PLLOUT = 600 MHz
    PLL1_PLLOUT_POSTDIV = 300 MHz
    PLL1_PLLEN = 300 MHz
    PLL1_SYSCLK1 = 300 MHz
    PLL1_SYSCLK2 = 150 MHz
    PLL1_SYSCLK3 = 100 MHz

    ---------------------------------------------
    | PSC0 Information |
    ---------------------------------------------

    State Decoder:
    0 = SwRstDisable (reset asserted, clock off)
    1 = SyncReset (reset assered, clock on)
    2 = Disable (reset de-asserted, clock off)
    3 = Enable (reset de-asserted, clock on)
    >3 = Transition in progress

    Module 0: EDMA3CC (0) STATE = 0
    Module 1: EDMA3 TC0 STATE = 0
    Module 2: EDMA3 TC1 STATE = 0
    Module 3: EMIFA (BR7) STATE = 0
    Module 4: SPI 0 STATE = 0
    Module 5: MMC/SD 0 STATE = 0
    Module 6: AINTC STATE = 3
    Module 7: ARM RAM/ROM STATE = 3
    Module 9: UART 0 STATE = 0
    Module 10: SCR 0 (BR0/1/2/8) STATE = 3
    Module 11: SCR 1 (BR4) STATE = 3
    Module 12: SCR 2 (BR3/5/6) STATE = 3
    Module 13: PRUSS STATE = 0
    Module 14: ARM STATE = 3
    Module 15: DSP STATE = 0

    ---------------------------------------------
    | PSC1 Information |
    ---------------------------------------------

    State Decoder:
    0 = SwRstDisable (reset asserted, clock off)
    1 = SyncReset (reset assered, clock on)
    2 = Disable (reset de-asserted, clock off)
    3 = Enable (reset de-asserted, clock on)
    >3 = Transition in progress

    Module 0: EDMA3CC (1) STATE = 0
    Module 1: USB0 (2.0) STATE = 0
    Module 2: USB1 (1.1) STATE = 0
    Module 3: GPIO STATE = 0
    Module 4: UHPI STATE = 0
    Module 5: EMAC STATE = 0
    Module 6: DDR2 and SCR F3 STATE = 3
    Module 7: MCASP0 + FIFO STATE = 0
    Module 8: SATA STATE = 0
    Module 9: VPIF STATE = 0
    Module 10: SPI 1 STATE = 0
    Module 11: I2C 1 STATE = 0
    Module 12: UART 1 STATE = 0
    Module 13: UART 2 STATE = 3
    Module 14: MCBSP0 + FIFO STATE = 0
    Module 15: MCBSP1 + FIFO STATE = 0
    Module 16: LCDC STATE = 0
    Module 17: eHRPWM (all) STATE = 0
    Module 18: MMC/SD 1 STATE = 0
    Module 19: UPP STATE = 0
    Module 20: eCAP (all) STATE = 0
    Module 21: EDMA3 TC2 STATE = 0
    Module 24: SCR-F0 Br-F0 STATE = 3
    Module 25: SCR-F1 Br-F1 STATE = 3
    Module 26: SCR-F2 Br-F2 STATE = 3
    Module 27: SCR-F6 Br-F3 STATE = 3
    Module 28: SCR-F7 Br-F4 STATE = 3
    Module 29: SCR-F8 Br-F5 STATE = 3
    Module 30: Br-F7 (DDR Contr) STATE = 3
    Module 31: L3 RAM, SCR-F4, Br-F6 STATE = 3

    I am using the u-boot.bin from the package DaVinci-PSP-SDK-03.21.00.04.

    I don't need to do any modification to it ? Normally I use it with UBL :-/

  • The boot log indicates that the uboot image was loaded in memory correctly(ROM bootloader exitted without any error code) and the device Program counter is also in u-boot memory space.

    Did you not create a boot image for the UART2 boot using the uboot application file as indicated in my earlier post. Also you need to do it using the uboot from the PSP 3.22 and not from PSP 3.21. The booting design doesn`t require UBL in PSP 3.22 while in PSP 3.21 requires the UBL. The procedure to create the boot image from the uboot is similar to one described here:

    http://processors.wiki.ti.com/index.php/How_to_boot_OMAP-L138_LCDK_from_SD_card#Generate_AIS_version_of_U-Boot_using_AISGen

    Only difference is that you need to configure it for the EVM and select the boot mode as UART2.

    Regards,

    Rahul

  • I have made the following steps:

    export PATH=$PATH:/opt/arm-2009q1/bin/
    make distclean CROSS_COMPILE=arm-none-linux-gnueabi-
    make da850evm CROSS_COMPILE=arm-none-linux-gnueabi-
    mono slh_OMAP-L138.exe -v -waitForDevice ~/u-boot_evm.ais

    The .wais was generated with the following configuration:

    Boot Mode=UART2
    Boot Speed=115200
    Flash Width=0
    Flash Timing=3ffffffc
    Configure Peripheral=True
    Configure PLL0=False
    Configure SDRAM=False
    Configure PLL1=True
    Configure DDR2=True
    Configure LPSC=False
    Configure Pinmux=False
    Enable CRC=False
    Specify Entrypoint=True
    Enable Sequential Read=False
    Use 4.5 Clock Divider=False
    Use DDR2 Direct Clock=False
    Use mDDR=True
    ROM ID=0
    Device Type=0
    Input Clock Speed=24
    Clock Type=0
    PLL0 Pre Divider=1
    PLL0 Multiplier=20
    PLL0 Post Divider=2
    PLL0 Div1=1
    PLL0 Div3=3
    PLL0 Div7=6
    PLL1 Multiplier=25
    PLL1 Post Divider=2
    PLL1 Div1=1
    PLL1 Div2=2
    PLL1 Div3=3
    Entrypoint=80000000
    SDRAM SDBCR=0
    SDRAM SDTMR=0
    SDRAM SDRSRPDEXIT=0
    SDRAM SDRCR=0
    DDR2 PHY=c4
    DDR2 SDCR=a034622
    DDR2 SDCR2=1c912a08
    DDR2 SDTIMR=3811c700
    DDR2 SDTIMR2=494
    DDR2 SDRCR=0
    LPSC0 Enable=
    LPSC0 Disable=
    LPSC0 SyncRst=
    LPSC1 Enable=
    LPSC1 Disable=
    LPSC1 SyncRst=
    Pinmux=
    App File String=/home/user/u-boot.bin@0x80000000
    AIS File Name=/home/user/u-boot_evm.ais

    and the log from using the serial loader:

    mono slh_OMAP-L138.exe -v -waitForDevice ~/u-boot_evm.ais

    -----------------------------------------------------
       TI Serial Loader Host Program for OMAP-L138
       (C) 2012, Texas Instruments, Inc.
       Ver. 1.65
    -----------------------------------------------------


    Platform is Unix/Linux.
    Attempting to connect to device /dev/ttyS0...
    Press any key to end this program at any time.

    Entering AIS Parser

    Waiting for the OMAP-L138...
    (AIS Parse): Read magic word 0x41504954.
    (AIS Parse): Waiting for BOOTME... (power on or reset target now)
    (AIS Parse): BOOTME received!
    (AIS Parse): Performing Start-Word Sync...
    (AIS Parse): Performing Ping Opcode Sync...
    (AIS Parse): Processing command 0: 0x5853590D.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Executing function...
    (AIS Parse): Processing command 1: 0x58535901.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Loading section...
    (AIS Parse): Loaded 552-Byte section to address 0x80000000.
    (AIS Parse): Processing command 2: 0x58535907.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Loading boot table...
    (AIS Parse): Processing command 3: 0x58535907.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Loading boot table...
    (AIS Parse): Processing command 4: 0x58535907.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Loading boot table...
    (AIS Parse): Processing command 5: 0x58535907.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Loading boot table...
    (AIS Parse): Processing command 6: 0x58535907.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Loading boot table...
    (AIS Parse): Processing command 7: 0x58535907.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Loading boot table...
    (AIS Parse): Processing command 8: 0x58535905.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Performing jump...
    (AIS Parse): Jump to address 0x80000000.
    (AIS Parse): Processing command 9: 0x5853590D.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Executing function...
    (AIS Parse): Processing command 10: 0x58535901.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Loading section...
    (AIS Parse): Loaded 184140-Byte section to address 0x80000000.
    (AIS Parse): Processing command 11: 0x58535906.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Performing jump and close...
    (AIS Parse): AIS complete. Jump to address 0x80000000.
    (AIS Parse): Waiting for DONE...
    (AIS Parse): Boot completed successfully.

    Operation completed successfully.

    Currently I don't have an arm JTAG so I can't run on the GEL to see the output, and the JTAG on the evm is connected to dsp that is a reset state ...

    Do have any image of u-boot that can be loaded and run over uart that I can test ?

    Can you edit your post from 01 March, 10:09 AM to the link point to the correct page ? Don't know how but the link is pointing to void.

    Thanks.

    Regards,

    Aníbal

  • Hi Anibal,

    I have updated the link in my earlier post.

    Please use the following configuration file to create the uart boot image with uboot binary. In the AISGen tool go to File->Load configurations and pick this configuration file from your host machine. The configuration file initializes the mDDR and PLL and PSC that are required for uboot and sets the boot mode to UART2.

    1616.Uboot_uart_boot.cfg

    Once you load the configuration replace the application file to select the bin file built from the PSP 3.22 package.

    I have not tried this out myself so I don`t have an pre-built image that I can provide to you. Do let us know if you were able to boot into uboot using the configuration file.

    Regards,

    Rahul

  • Hi Rahul,

    I made a mistake that don't know the impact on the tests that we made ....

    My evaluation board is a TMDXL138LOGICEXP-B not the mentioned on top of the topic, they are very similar but don't know the implications on the tests we have made ...

    On your configuration I have changed the device type to d800k002 and entry point to 0x80000000.

    The tabs psc and pinmux were disabled even with parameters on the configuration file, with previous modifications I made the following tests:

    - without enabling any tab
    - enabling psc tab
    - enabling psc tab and pinmux

    The result was always the same:

     mono slh_OMAP-L138.exe -v -waitForDevice ~/u-boot_evm.ais

    -----------------------------------------------------
       TI Serial Loader Host Program for OMAP-L138
       (C) 2012, Texas Instruments, Inc.
       Ver. 1.65
    -----------------------------------------------------


    Platform is Unix/Linux.
    Attempting to connect to device /dev/ttyS0...
    Press any key to end this program at any time.

    Entering AIS Parser

    Waiting for the OMAP-L138...
    (AIS Parse): Read magic word 0x41504954.
    (AIS Parse): Waiting for BOOTME... (power on or reset target now)
    (AIS Parse): BOOTME received!
    (AIS Parse): Performing Start-Word Sync...
    (AIS Parse): Performing Ping Opcode Sync...
    (AIS Parse): Processing command 0: 0x5853590D.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Executing function...
    (AIS Parse): Processing command 1: 0x5853590D.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Executing function...
    (AIS Parse): Processing command 2: 0x58535903.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): CRC enabled.
    (AIS Parse): Processing command 3: 0x58535901.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Loading section...
    (AIS Parse): Loaded 190024-Byte section to address 0x80000000.
    (AIS Parse): Processing command 4: 0x58535902.
    (AIS Parse): Performing Opcode Sync...
    (AIS Parse): Requesting CRC...
    (AIS Parse): CRC failed!  Sending STARTOVER...
    (AIS Parse): 4294777248-Byte seek applied.
    (AIS Parse): Processing command 5: 0x58535901.
    (AIS Parse): Performing Opcode Sync...
    (Serial Port): Read error! (The operation has timed-out.)
    (AIS Parse): I/O Error in read!
    (Serial Port): Read error! (The operation has timed-out.)
    (AIS Parse): I/O Error in read!
    (Serial Port): Read error! (The operation has timed-out.)
    (AIS Parse): I/O Error in read!
    (Serial Port): Read error! (The operation has timed-out.)
    (AIS Parse): I/O Error in read!
    (Serial Port): Read error! (The operation has timed-out.)
    (AIS Parse): I/O Error in read!
    (Serial Port): Read error! (The operation has timed-out.)
    (AIS Parse): I/O Error in read!
    (Serial Port): Read error! (The operation has timed-out.)
    (AIS Parse): I/O Error in read!
    (AIS Parse): Opcode Sync failed after 11 consecutive I/O failures.
    (AIS Parse): Boot aborted.
    Booting AIS image failed. Trying again (you may need to reset the target)...

    Waiting for the OMAP-L138...
    (AIS Parse): Read magic word 0x41504954.
    (AIS Parse): Waiting for BOOTME... (power on or reset target now)

    The hawkboard was a special configuration on u-boot to support this method but from the configurations files only appear to change the entry point:

    #if defined(CONFIG_UART_U_BOOT)
    #define CONFIG_SYS_TEXT_BASE        0xc1080000
    #elif !defined(CONFIG_SPL_BUILD)
    #define CONFIG_SYS_TEXT_BASE        0xc1180000
    #endif

    My u-boot.bin have 716K but after run ais generator it have 188k, is this normal ?

    On [1] it mentions a option to load to the ddr but on omap tools that option don't exist. The omap loads it directly to ddr ?

    Thanks.

    Regards,
    Aníbal

    [1] - http://processors.wiki.ti.com/index.php/Serial_Boot_and_Flash_Loading_Utility

  • Hi Rahul,

    Any update on this ? Any clue that I can follow ?

    Thanks.

    Regards,
    Aníbal