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.

uImage default location

Hi

I have a rather basic and stupid question. I am trying to compile the kernel on the SDK 06.00.00. The compilation is successful and the bootloaders, MLO and u-boot are generated. However, I am not able to find the compiled kernel binary, uImage in ti-xxxxxx-sdk/linux-devkit directory (or any in sub-directory inside it).

I want to use create_sdcard.sh script to write the compiled boot loaders,  kernel image and rootfs (from targetNFS/ ) to an SDcard (for the BeagleBone). The pre-built kernel image works just fine.

Just as an attempt, I flashed the following to an SD card using the create_sdcard.sh script:

compiled MLO + compiled u-boot + prebuilt uImage + default rootfs from targetNFS. 

During this write, I got a warning when copying MLO. (I later confirmed that the MLO boot loader was indeed copied to the boot partition).

I didn't expect the board to boot up normally. When I turned on my BeagleBone with this SD card, I could see "CCCCCC...." on the serial port. With the periodic Windows 7 chimes I could tell that the Beablebone was stuck in a reboot loop.

My questions:

1. Where do I find compiled uImage?

2. Can I flash it to the SD card using the create_sdcard.sh script?

3. Which bootloader sends out the CCCCC characters?

Refs: http://processors.wiki.ti.com/index.php/AM335x_U-Boot_User's_Guide

  • 1) In my build environment, it's located in ~/ti-sdk..../board-support/linux-3.../arch/arm/boot

    But it may also be in ~/ti-sdk.../targetNFS/boot

    2) Yes

    3) Not too sure I understand this part, but only bootloader there is uboot.

  • Hi,

    1) After you run "make uImage" and the compilation has finished, the compiled uImage file is located in <SDK_folder>/board-support/<linux_folder>/arch/arm/boot/uImage as Keith said. If you are looking for the prebuilt images, they are located in <SDK_folder>/board-support/prebuilt-images/

    2) Yes, the script will ask you whether you want to use the prebuilt images or provide a path to your compiled binaries.

    3) Actually the "CCCC" characters are printed by the on-chip ROM bootloader. This means that the ROM code is waiting to boot from UART, which means that the SD card boot failed for some reason (perhaps something related to the warning you received when flashing the MLO file to the SD card).

    Best regards,
    Miroslav

  • Thank you Keith and Miraslov.

    Your responses really helped me. I am now able to successfully flash the kernel to my Beaglebone.

    Previously, I was making one mistake over and over again. After the Linux image was flashed to the SD card I saw a message "Syncing..." on the Ubuntu terminal. This led me to believe that all data has been flushed to the SD card. However this is not the case. With that assumption, immediately after the script ended, I would physically remove the SD card without safely ejecting it. This action was causing a corruption on the SD card.

    Later, I started eject it safely from Ubuntu and then physically remove the card from the slot. Now it works great!

    Thanks

    Abhijeet