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.

AM3358: UNIFLASH and SPL

Part Number: AM3358
Other Parts Discussed in Thread: UNIFLASH

Hi,

First of all, I am very disturbed about TI forum site. Almost every link is dead. I wasn't expect that from TI. I get sick of see "GONE" tag when i click the links. All road reaching to deadends.

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

Secondly, I am design a custom board which based on Beagle Bone Black, which will not contain physical ethernet port (but for now forget about custom board)
My first step is creating a custom U-boot. I had pruned the AM335x board.c *.h etc. And purify from board detected functions.  (By the way, I am using YOCTO)

I believe I have shaped U-boot but not totally. But from defconfig file these two line disturb me so much (see below). I can't remove and replace with needed other configs. It looks unchangeable.
I can understand we are related from a OMAP2PLUS + AM33XX processor. But why we still related with board config. And as i konw device tree is not totally needed for u-boot. It will be important while calling Kernel+dtb. I just want to start U-boot, nothing more at first step. So what is minimal defconfig i need to start kernel.

CONFIG_ARM=y
CONFIG_ARCH_CPU_INIT=y
CONFIG_ARCH_OMAP2PLUS=y
CONFIG_AM33XX=y
CONFIG_TARGET_MY_BOARD=y
#######################
CONFIG_OF_CONTROL=y
CONFIG_DEFAULT_DEVICE_TREE="am335x-evm"
#######################
# CONFIG_NET=n
CONFIG_SYS_CONSOLE_INFO_QUIET=y
CONFIG_SYS_PROMPT="MY_BOARD> "
#######################
CONFIG_CMD_EXT4=y
CONFIG_CMD_FAT=y
CONFIG_CMD_FS_GENERIC=y
#######################
CONFIG_GPIO=y
CONFIG_CMD_GPIO=y
CONFIG_DM_GPIO=y
CONFIG_READ=y
CONFIG_DM_READ=y
#######################
CONFIG_I2C=y
CONFIG_CMD_I2C=y
CONFIG_DM_I2C=y
#######################
CONFIG_SPI=y
CONFIG_CMD_SPI=y
CONFIG_DM_SPI=y
#######################
CONFIG_CMD_MMC=y
CONFIG_DM_MMC=y
CONFIG_DFU_MMC=y
CONFIG_MMC_OMAP_HS=y
#############################
CONFIG_SPL=y
CONFIG_CMD_SPL=y
CONFIG_SPL_WDT=n
CONFIG_SPL_LOAD_FIT=y
CONFIG_SPL_FIT_IMAGE_TINY=y
CONFIG_SPL_MTD_SUPPORT=y
CONFIG_SPL_NAND_SUPPORT=n

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

My second question is about SPL and MLO. I believe i miss something. After i "make" the u-boot. I can start BBB with my-uboot.img + MLO file which in SD card. But at my final custom i am planing to remove SD card also.

So I focused on UNIFLASH + SPL, So as file I will use u-boot-spl.bin, u-boot.img. Every thing is so confusing.

At first step: I have RNDIS gadget.

When i tried to CCS UNIFHASH.

(additonal parameters for SPL USB over Ethernet

CONFIG_SPL_ETH_SUPPORT=y
CONFIG_SPL_NET_SUPPORT=y
CONFIG_SPL_USB_GADGET=y
CONFIG_SPL_USB_ETHER=y

)

And RNDIS has disappearing, an Unkown device has appearing.

So Quesition is that: What is missing What i am doing wrong :D. What is minimal defconfig for SPL and Uniflash process?

What step should i follow? I want a reminder. I will not have an extra Ethernet and SD card at final custom board. I just want to write my uboot, and SPL to emmc(or nand) via UNIFLASH. (My be write kernel and dtb at the second step)

I need clear instructions. (I have read documents, I have tried to follow forum topics until dead links.) I need help please.

Best Reagard

  • Hi Gokhan,

    Sorry for your frustration. I will try my best to help you resolving the USB-Ethernet booting issue.

    I can understand we are related from a OMAP2PLUS + AM33XX processor. But why we still related with board config. And as i konw device tree is not totally needed for u-boot. It will be important while calling Kernel+dtb. I just want to start U-boot, nothing more at first step. So what is minimal defconfig i need to start kernel.

    I personally didn't try this, but U-Boot provides a minimal defconfig - am335x-evm-mini.dts. Here is its commit log:

    commit 971a6ef0d53e00d394693c3ca15c9aa125ac7ac5
    Author: Andreas Dannenberg <dannenberg@ti.com>
    Date:   Mon Sep 6 15:44:50 2021 +0200
    
        board: ti: Add support for the AM335x GP EVM mini board
        
        This is not really a new board but rather a minimal bootloader solution
        for the AM335x GP EVM. In terms of interfaces, it only supports booting
        from MMC0 or UART0 and only activates a minimal set of drivers that are
        that are necessary to run the device such as DDR, I2C, and PMIC.
        
        The goal is to provide a bare minimum starting point to boot Linux for
        basing custom board-ports on. The limited complexity of this solution
        should make it easier to achieve a successful boot to U-Boot prompt vs.
        trying to pair down the full-featured multi-platform AM335x U-Boot
        available through am335x_evm_defconfig.
        
        Signed-off-by: Andreas Dannenberg <dannenberg@ti.com>
        [Amjad: fix checkpatch and compile warnings]
        Signed-off-by: Amjad Ouled-Ameur <aouledameur@baylibre.com>

    (additonal parameters for SPL USB over Ethernet

    CONFIG_SPL_ETH_SUPPORT=y
    CONFIG_SPL_NET_SUPPORT=y
    CONFIG_SPL_USB_GADGET=y
    CONFIG_SPL_USB_ETHER=y

    )

    Please attach your U-Boot .config. I'd like to check if you have all MUSB related Kconfig options enabled. The following document explains the menuconfig process for AM335x USB-Ethernet boot.

    https://software-dl.ti.com/processor-sdk-linux/esd/AM335X/08_02_00_24/exports/docs/linux/How_to_Guides/Host/Program_the_eMMC_on_Beaglebone_Black.html

  • Hi Bin,

    I think "am335x_evm_defconfig" doesn't provide the minimal solution.
    I want minimal solution just because get rid of other unused peripherial's possible mistakes etc. For example I will not use ETH port. I don't want to see any residue code about it. Anyway.

    I have work with other brands (about board bringup process). While I am working with UNIFLASH, I got confused. UNIFLASH can reach and triger board via RNDIS, It means it is writing ****.bin but cannot jump to u-boot.img.

    This  screen shoot enough?

    PS: (CONFIG_SPL_DM_USB_GADGET
    some thing changed with this parameter but still I feel far away from solution)

    Best Regards

  • SPL is so closed system doesn't like u-boot. Doesn't let me to change MAC address.

    I use the config below
    (CONFIG_USBNET_DEVADDR="aa:bb:cc:dd:ee:01" )

    It still said: MAC 81f01134M

    I believe i made a progress but sill i need help. Will any body help ?

  • Hi Gokhan,

    The latest log shows the USB stack is initialized but the host fails in responding the BOOTP request. I am not sure if it is because of the MAC address error. I am routing your query to our U-Boot Ethernet expert for comments.

  • Thanks Bin.

    By the way i realize that there is an other error about RNDIS driver (there is no Microsoft Corporation and RNDIS). I use win10 and can't update. I have already read the forum. I will double check the topics. May be i am missing some something.

  • Another Progress:

  • Hi Everyone,

    As i understand, TI doesn't aim to support their service and products.
    At least i handled my problem.

    I have so many question, but i believe this is not the correct place to ask :). Thanks.