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.

u-boot-2010.12-psp03.21.00.04.sdk

Other Parts Discussed in Thread: OMAPL138, OMAP-L138, AM1808

Hi,

      Right now i started working with u-boot-2010.12-psp03.21.00.04 i am facing some issues while creating the ais file.

first of all i downloaded the sdk file from ti web. arm-arago-linux-gnueabi compiler using form linux-devkit folder.

my board configured for da850evm_config.

after the compilation i have two files u-boot, u-boot.bin.

i used ti hexgen tool to create ais file for uart boot.

Setting for INI files

BootMode=UART
 
crcCheckType=NO_CRC

[PLLANDCLOCKCONFIG]
PLL0CFG0 = 0x00080001
PLL0CFG1 = 0x00000b05
PERIPHCLKCFG = 0x00000051

[EMIF3DDR]
PLL1CFG0 = 0x08010001
PLL1CFG1 = 0x00000002
DDRPHYC1R = 0x00000043
SDCR = 0x00134632
SDTIMR = 0x24923209
SDTIMR2 = 0x7C14C722
SDRCR = 0x00000249
CLK2XSRC = 0x00000000

[INPUTFILE]
FILENAME=u-boot.bin
LOADADDRESS=0xC1080000
ENTRYPOINTADDRESS=0xC1080000

After the ais file creation i loaded uart.bin file with sft_omapl138.exe  when it executes it is throwing error (I/o reading error).

Please help me resolve the issues.

Regards

jithin





 

  • Can you paste the entire output of the SFT program? If you are using a USB->Serial adapter, can you try a different one, or updating the drivers?

    Jeff

  • Hi Jeff,

         With this same serial adapter i is to download old uboot ais file.i think it is not a problem with serial adapter.

    step i followed.

    mono ./HexAIS_OMAP-L138.exe -ini AM1808_UART.ini -o u-boot_uart.bin

    mono ./slh_OMAP-L138.exe -waitForDevice -v u-boot_uart.bin




  • So does it work now? Regards, Christian
  • hi Christian,


    Not yet, while writing, a message shows after a  while,in terminal  (I/O read Error )

    still we want to do any changes in uboot code.

    with same setting i try to load in AIS tool (GUI) with entry address as c1080000. and uboot.bin@c1080000

    i found some junk characters are appear in terminal.

  • 1) As Jeff suggested, please paste the entire output of the SFT program.

    2) Which board are you using? Is that a custom board or one of the EVMs? Which one?

    Regards, Christian

  • Hi Christian,

        Below procedure i have done.

    C:\Users\jithin\Desktop\setup-ais> HexAIS_OMAP-L138.exe -ini am1808-evm-uart.ini -o uboot-uart.bin
    -----------------------------------------------------
       TI AIS Hex File Generator for OMAP-L138
       (C) 2011, Texas Instruments, Inc.
       Ver. 1.25
    -----------------------------------------------------


    Begining the AIS file generation.
    AIS file being generated for bootmode: UART.
    Parsing the input file, u-boot.bin.
    AIS file generation was successful.
    Wrote 348508 bytes to file uboot-uart.bin.
    Conversion is complete.

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

    C:\Users\jithin\Desktop\setup-ais> slh_OMAP-L138.exe -p COM10 -waitForDevice -v uboot-uart.bin

    Attempting to connect to device COM10...
    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...
    (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!
    (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)...


  • Hi Jithin,

    I think your UART configuration in PERIPHCLKCFG is wrong.

    I try to understand your PLL settings: I assume your input clock frequency is 24 MHz. PREDIV=1, PLLM=9, POSTDIV=2, so the resulting CPU frequency is 24MHz*9/2 = 108 MHz. Therefore SYSCLK2 (which is used for the UART) is 54 MHz. To get 115200 Baud we therefore need a divider of 54MHz / 16 / 115200 = 30. Try to set PERIPHCLKCFG to 0x0000001e.

    Regards, Christian

  • Christian Riesch said:

    Hi Jithin,

    I think your UART configuration in PERIPHCLKCFG is wrong.

    I try to understand your PLL settings: I assume your input clock frequency is 24 MHz. PREDIV=1, PLLM=9, POSTDIV=2, so the resulting CPU frequency is 24MHz*9/2 = 108 MHz. Therefore SYSCLK2 (which is used for the UART) is 54 MHz. To get 115200 Baud we therefore need a divider of 54MHz / 16 / 115200 = 30. Try to set PERIPHCLKCFG to 0x0000001e.

    Regards, Christian

    Hi Jithin,

    I did a small test and yes, now slh runs without any errors, but u-boot does not respond on the serial console. I guess there are still some issues with PLL and/or DDR configuration. With this .ini file it works for me on the AM1808 experimenter's kit:

    [General]
    BootMode=UART
    crcCheckType=NO_CRC
    [PLLANDCLOCKCONFIG]
    PLL0CFG0 = 0x00180001
    PLL0CFG1 = 0x00000205
    PERIPHCLKCFG = 0x00000051
    [EMIF3DDR]
    PLL1CFG0 = 0x15010001
    PLL1CFG1 = 0x00000002
    DDRPHYC1R = 0x000000C4
    SDCR = 0x0A034622
    SDTIMR = 0x184929C8
    SDTIMR2 = 0xB80FC700
    SDRCR = 0x00000406
    CLK2XSRC = 0x00000000
    [INPUTFILE]
    FILENAME=u-boot.bin
    LOADADDRESS=0xC1080000
    ENTRYPOINTADDRESS=0xC1080000
    

    Regards, Christian

  • Hi Christian,

    Below mention setting already i am using in old uboot which is perfectly working.

    fist time i was working with .ini files and HEX_gen tool  i think i have done some mistakes in the ini file.

    with the below mentioned setting can you please tell how to realise the ini file.

    PLL0

          Pre-Divisor  : 1

          Multiplier      : 25

          Post_Divisor : 2                  CPU :300MHz

          DIV1 : 1                                 SDRAM:25MHz

          DIV3 : 12                               EMAC :50MHz

          DIV7 : 6     

    PLL1

          Multiplier  : 25

          Post-Divisor : 2

          DIV1 : 1                          DDR :300MHz

          DIV2 : 2

          DIV3 : 3

    DDR (DDR2)

       DRPYC1R   :  0x00000043

      SDRC            :  0x00134632

      SDRC2          :  0x00000000

      SDTIMR1       : 0x24923209

      SDTIMR2       : 0x00000249

    Peripheral:

    Module Clock : 150 MHz

    UART Clock : 115200   (115384.62 baud )

    the above setting i am using in AIS tool which is working perfectly in Hawk uBoot and uboot old version.

    Regards

    Jithin

  • RTFM: Using the AM18xx Bootloader (Rev. B)

    Section D.1 explains the value of PLL0CFG0 (arg1) and PLL0CFG1 (arg2), section D.2 explains PLL1CFG0 (arg1) and PLL1CFG1 (arg2). Section D3.3 is PERIPHCLKCFG for booting from UART. Section D.4 explains DDR memory configuration.

    Example for PLL0: for PREDIV=1, PLLM=25, POSTDIV=2 you need PLL0CFG0 = 0x00180001, for DIV1=1, DIV3=12, DIV7=6 you need PLL0CFG1 = 0x00000b05

    UART Clk: 150MHz / 16 / 115200 = 81 -> PERIPHCLKCFG = 0x00000051.

    Regards, Christian

  • Hi Christian

    Did my PLL1 setting is Correct?

  • Your current setting is

    PLL1CFG0 = 0x08010001
    PLL1CFG1 = 0x00000002 
    

    and you would like to have

    PLL1
          Multiplier  : 25
          Post-Divisor : 2
          DIV1 : 1                          DDR :300MHz
          DIV2 : 2
          DIV3 : 3
    

    so the answer is no.

    PLL1CFG0
    bit 31 - 24: PLLM
    bit 23 - 16: POSTDIV
    bit 15 - 8: PLLDIV1
    bit 7-0: PLLDIV2
    
    PLL1CFG1
    bit 7-0: PLLDIV3
    
    For PLLM=25, POSTDIV=2 DIV1=1, DIV2=2 DIV3=3 correct settings would be
    PLL1CFG0 = 0x18010001
    PLL1CFG1 = 0x00000002
    

    Regards, Christian

  • Hi Christian,

         Now my UART Console is working properly.

    thanks.

    Also Please help me to create  nand flash files also.

    NAND width =8

    CS3 Setup : 0x3FFFFFFC

  • Hi Jithin,

    sorry, I'm afraid I can't help you here. I have no experience with NAND as my custom board doesn't have NAND flash.

    But I have one hint for you: In some u-boot versions (and I think 2010.12 is one of them) there was a problem with the LPSC (power) configuration of the UART. This problem was fixed in u-boot 2011.12. So either use u-boot v2011.12 or make sure you have these two lines in your .ini file when booting from flash:

    [PSCCONFIG]
    LPSCCFG=0x010D0003
    

    For more information see http://e2e.ti.com/support/dsp/omap_applications_processors/f/42/t/151906.aspx.

    Regards, Christian

  • Hi Christian

        Thanks for the support.
    will keep in a touch.

    Regards

    Jithin

  • Hi Christian,

                Now i start working with RMII Interface with am1808 in  u-boot-2010.12-psp03.21.00.04.sdk i facing some issue which loading uImage from uboot

    DMESG.

    U-Boot > tftp uImage-evm
    Using DaVinci-EMAC device
    TFTP from server 192.168.0.10; our IP address is 192.168.0.5
    Filename 'uImage-evm'.
    Load address: 0xc0700000
    Loading: T ##T #######T ##T ###T #T #####T #T ###T ####T #T ####T ###T ###########T ######T ######T ##T #####
             #T ###########T ###T #
    Retry count exceeded; starting again
    Using DaVinci-EMAC device
    TFTP from server 192.168.0.10; our IP address is 192.168.0.5
    Filename 'uImage-evm'.
    Load address: 0xc0700000
    Loading: #T #T ###T ##T ##T #####T ##########T ###T ###T #T T ######T ######T #######T #####T ##T ##T ####T #T #
             T #####
    Retry count exceeded; starting again

    I am currently using RMII Interface. clock 50Mhz externally and not using internal clock.

    Below is pin mux setting for rmii signals.

    #ifdef CONFIG_DRIVER_TI_EMAC
    static const struct pinmux_config emac_pins[] = {
    #ifdef CONFIG_DRIVER_TI_EMAC_USE_RMII

           { pinmux(15), 0, 0 },
           { pinmux(15), 8, 1 },
           { pinmux(14), 8, 2 },
           { pinmux(14), 8, 2 },
           { pinmux(14), 8, 3 },
           { pinmux(14), 8, 4 },
           { pinmux(14), 8, 5 },
           { pinmux(14), 8, 6 },
           { pinmux(14), 8, 7 },

    #else
            { pinmux(2), 8, 1 },
            { pinmux(2), 8, 2 },
            { pinmux(2), 8, 3 },
            { pinmux(2), 8, 4 },
            { pinmux(2), 8, 5 },
            { pinmux(2), 8, 6 },
            { pinmux(2), 8, 7 },
            { pinmux(3), 8, 0 },
            { pinmux(3), 8, 1 },
            { pinmux(3), 8, 2 },
            { pinmux(3), 8, 3 },
            { pinmux(3), 8, 4 },
            { pinmux(3), 8, 5 },
            { pinmux(3), 8, 6 },
            { pinmux(3), 8, 7 },

    #endif /* CONFIG_DRIVER_TI_EMAC_USE_RMII */
            { pinmux(4), 8, 0 },
            { pinmux(4), 8, 1 }
    };
    #endif /* CONFIG_DRIVER_TI_EMAC */
                                        
    Please help to solve the problem.

    Regards

    Jithin

     

      

  • Hi Jithin, sorry, can't help you here, I don't use RMII on my board. Christian
  • Whats the PPM on the external clock you are using?

    Jeff

  • Hi jeff,

        +-50 ppm as recommented by ti.

    i am using LAN8710A Chip. in Hawkboard uboot it is working fine. more than 10 times if tftp done it will hangs some times.

    regards

    Jithin

  • What is the part number for the crystal you are using to generate this clock?

    Jeff