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.

L138 u-boot upgrade

Other Parts Discussed in Thread: OMAP-L138, OMAPL138

Hi Community,

I'm working on a proprietary board based on L138 processor and on Linux OS.

In order to perform first time software download (u-boot, kernel etc...) and sw upgrade of the boards I'm building a system booting from SD card and at u-boot level or kernel level launch a lot of scripts performing software download.

At the moment  kernel, root-FS and application file system are successfully downloaded the problem is u-boot and bootloader.   I can download them but board doesn't start. Only downloading with sfh_OMAP-L138.exe  using the following command: sfh_OMAP-L138.exe -flash -targetType OMAPL138 -flashType NAND -p com1 arm-nand-ais.bin u-boot-uart1-03.bin my board boot correctly.

Using sfh_OMAP-L138.exe i can see it place the two binary in the command line at their location that is 0x20000 the ais and 0x40000 the u-boot furthermore i can see few byte at 0xc0000

 Now which is the right way from u-boot prompt or kernel prompt to place u-boot in NAND flash ? Where and how i have to put UBL, AIS and u-boot ?

Hope someone can help

Thanks

Regards

Luca

  • Hi Luca,

    If you want to update u-boot to new, you can do it from u-boot or kernel but we need to change some ECC layout sections of code in u-boot and kernel.

    Please refer to the following E2E post.

    http://e2e.ti.com/support/embedded/linux/f/354/t/356607.aspx?pi196120=2

  • Hi Titus,

    thanks for your answer.

    Looking at the suggested thread I think that my case is slightly different. I have just to load new board or upgrade the existent.

    Booting from MMC (generated with mksd..) I want to load binaries on the board. I can't understand relation between AIS, UBL, U-BOOT.bin and I can't found on the docs. Using an u-boot modified with AISGen can i avoid UBL ? In this case where in the NAND I have to load AIS+u-boot binary ?
     Instead, using UBL, u-boot needs to be processed with AISGen ? Where flash UBL and where u-boot.

    Why serial flasher tool put some bytes at address 0xC0000?

    How generate UBL ? And, if u-boot changes UBL changes too?

    Please help, I'm new on this platform.

    Ciao

    Luca

  • Hi Luca,

    ROM code expects AIS code to boot from any flash (except NOR).

    The old trend boot method is follows 

    UBL.ais -> u-boot.bin -> kernel -> filesystem

    But the new method is

    u-boot.ais -> kernel -> filesystem

    Using an u-boot modified with AISGen can i avoid UBL ? In this case where in the NAND


    Yes.

    Which method do you prefer ?

  • Hi Luca,

    Luca said:
     Now which is the right way from u-boot prompt or kernel prompt to place u-boot in NAND flash ? Where and how i have to put UBL, AIS and u-boot ?

    To place the u-boot in NAND flash, you do not need to be in u-boot/kernel prompt. As you already know about the sfh utility method, you can again flash the UBL and the u-boot using sfh.

    The other methods of upgrading the UBL / u-boot are using SPI writer and NAND writer or NOR writer programs. The u-boot prompt and kernel prompts are not needed for any of these methods too.

    1. SPI flash writer : http://processors.wiki.ti.com/index.php/GSG:_Building_Software_Components_for_OMAP-L1#Rebuilding_the_SPI_Flash_writer

    2. NAND flash Writer : http://processors.wiki.ti.com/index.php/GSG:_Building_Software_Components_for_OMAP-L1#Rebuilding_the_NAND_Flash_writer

    3. NOR flash writer : http://processors.wiki.ti.com/index.php/GSG:_Building_Software_Components_for_OMAP-L1#Rebuilding_NOR_Flash_writer

    Luca said:
     Booting from MMC (generated with mksd..) I want to load binaries on the board. I can't understand relation between AIS, UBL, U-BOOT.bin and I can't found on the docs. Using an u-boot modified with AISGen can i avoid UBL ? In this case where in the NAND I have to load AIS+u-boot binary ?
    Instead, using UBL, u-boot needs to be processed with AISGen ? Where flash UBL and where u-boot.

     

    AIS : It is a format in which the RBL understands UBL ( UBL - user bootloader / secondary boot loader ) and UBL understands the u-boot image which are stored in. using AIS gen tool you can convert the UBL and u-boot binaries into AIS format and then flash it into memories such as SPI/NAND.

    UBL: It is nothing but a user bootloader which runs after RBL. The purpose of the UBL is to initialize the PLLs, mDDR, and other hardware. Once done, it copies the U-Boot into RAM and starts it.

    And also please visit http://www.ti.com/lit/an/sprab41e/sprab41e.pdf

     

    Regards,

    Shankari

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

    Please click the Verify Answer button on this post if it answers your question.
    --------------------------------------------------------------------------------------------------------

  • Hi Shankari,

    u-boot upgrade from kernel/u-boot prompt is one of our requirement.

    as I say in one of my previous posts we are developing several scripts allowing first sw download on new board or upgrade the existent one. To do that our board boots from mmc and the upgrading scripts starts automatically. At the moment we are unable To manage u-boot and related binaries. Using the same u-boot for AISGen and configuring it with the respective settings in order To produce bootable binary for mmc an for NAND the first one boots correctly but not the second. So starting from a blank nand flash how we can program our boards with ais+uboot avoiding ubl and the suggested writer tools?

    Thanks

    Regards

    Luca

  • Hi Luca,

    Luca said:
    So starting from a blank nand flash how we can program our boards with ais+uboot avoiding ubl and the suggested writer tools

    Using serial flasher utility, issue the below command to flash the ais formatted u-boot into NAND memory of OMAPL138

    >sfh_OMAP-L138.exe -flash_noubl boot.ais -targetType OMAPL138_LCDK -flashType NAND -p COMx

    where x is the COM port number.

     

    Regards,

    Shankari

     

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

    Please click the Verify Answer button on this post if it answers your question.
    --------------------------------------------------------------------------------------------------------

  • Hi Shankari,
    as i mentioned previously, we can't use a serial connection.

    It's only possible to use the u-boot commands and the mmc for binaries files storage.

    So can you suggest us in which way we can produce and install the binaries (UBL,u-boot,AIS) in order to make our boars bootable from NAND?


    Thank you in advance


    Best regards

    Luca