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.

AM335x U-boot board port

Other Parts Discussed in Thread: AM3352, AM3358

Hello,

We have a new design based on BeagleBone Black, but we use NAND flash, AM3352 running at 800MH and "Turbo" instead of "Nitro" option in VDD_MPU OPPS.

First I am trying to port u-boot following instructions at "processors.wiki.ti.com/.../Sitara_Linux_Training:_Uboot_Board_Port". I have installed TI processor SDK "ti-processor-sdk-linux-am335x-evm-03.01.00.06-Linux-x86-Install.bin" from "http://software-dl.ti.com/processor-sdk-linux/esd/AM335X/latest/index_FDS.html"

  • Hi,

    I cannot understand what your questions are. For your information the U-boot included in the latest Linux SDKs uses device tree files instead of board files, so the wiki you are looking at may be misleading. See this wiki for more information on U-boot: processors.wiki.ti.com/.../Linux_Core_U-Boot_User's_Guide
  • Hi,

    Thank you for your fast response. I am sorry if was not able to make you understand my questions.

    I want to port u-boot so I can run it and startup our board, based on AM3352.

    I have downloaded and compiled u-boot for BeagleBone Black and it runs fine. It works with MLO and u-boot.img copied to SD card and it also runs loading u-boot-spl.bin and u-boot.img over UART using XMODEM protocol.

    Of course this files do not run in our design, so I need to port the sources. Main changes with BeagleBone Black are:

    - AM3352 instead of AM3358

    - NAND Flash instead of eMMC

    - 800MHz instead of 1GH

    - "Turbo" instead of "Nitro" option in VDD_MPU OPPs.

    You are right, now U-boot uses device tree files instead of board files.

    I am sorry, but I can not find how to port this U-Boot version from BeagleBone Black to our board requirements.

    Thanks a lot.

  • Hi,

    You are right, now U-boot uses device tree files instead of board files.

    I guess you're using the sources from the latest TI SDK03.01, right?

    In general you need to:
    - do the appropriate pinmux settings in: board/ti/am335x/mux.c => change this file depending on which peripherals you use
    - add the corresponding ddr settings in board/ti/am335x/board.c => ddr timings & emif configurations should match your hw.

    This should get the MLO and u-boot started.

    Could you please share do you get any debug log on your console?

    Best Regards,
    Yordan
  • Hello Yordan,

    Now I am using a more recent version of U-boot (2016.09-rc2), but I think this should not be any problem.

    We are trying to download the FW over UART0, and first we have made it using BB black to verify the process:
    - Compile U-boot for this board.
    - Load u-boot-spl.bin. After this we have some debug traces on UART0
    - Then download u-boot.img
    - U-boot started over UART0 as expected.
    - We also checked that DDR_CKE and DDR_RESETN are low until spl file is downloaded. After this both go high and we are able to download u-boot.img.

    Then, for our board, I have changed files mux.c and board.c to configure basic things to start our board (DDR, UART0 and NAND), and our SYSBOOT is 0100 0000 0000 0100 (UART0, XIP, MMC0, NAND).
    - Re-compile again the FW
    - u-boot-spl.bin file is loaded fine, but we do not have debug traces on UART0.
    - Then we try to send u-boot.img file, but it is not possible to be downloaded.
    - We checked that DDR_CKE is always low and DDR_RESETN is always high. And remain like this after spl file is downloaded.

    We would appreciate your advice on how to proceed in this situation.
    Best regards and thank you.
    Angel
  • Hello again Yordan,

    We have found the solution for this issue.

    The problem was that RTC32K was being initialized, and in our board we are not using this feature.

    Thanks a lot for your help.
    Angel
  • Hi Angel,

    Thanks for updating the thread with your solution.

    Best Regards,
    Yordan