Tool/software: Linux
Hi TI-Team,
I'm searching for some hints to solve the following problem during my sdk update:
First of all some facts of my project:
- Custom Board with processor AM3359
- SDK-File: ti-processor-sdk-linux-rt-am335x-evm-04.00.00.04-Linux-x86-Install
- Boot via SD-CARD, Using the create-sdcard.sh to build a 2 partition sd card (boot and rootfs)
- Base of our configuration is the AM335x-EVM configuration
After a successfull build process, i copied the MLO and the u-boot.bin file to the boot partition
DTB-File (custom_board.dtb) and zImage-File are in the boot-folder of the rootFS as in the SDK-Versions before.
When I boot the system I got the following error message
"
U-Boot SPL 2017.01-00319-geae4602-dirty (Sep 25 2017 - 15:56:34)
Trying to boot from MMC1
reading u-boot.img
reading u-boot.img
reading u-boot.img
No matching DT out of these options:
custom_board
Failed to mount ext2 filesystem...
spl_load_image_ext: ext4fs mount err - 0
"
My changes in detail:
arch/arm/Kconfig: Added...
"source "board/custom_board/Kconfig"
and added a board folder with the specific board files, based on board/ti/am335x
arch/arm/dts/Makefile: Added to block...
"
dtb-$(CONFIG_AM33XX) += am335x-boneblack.dtb am335x-bone.dtb \
am335x-draco.dtb \
am335x-evm.dtb \
am335x-evmsk.dtb \
am335x-bonegreen.dtb \
am335x-icev2.dtb \
am335x-pxm50.dtb \
am335x-rut.dtb \
custom_board.dtb
"
arch/arm/dts/custom_board.dts: Added file and adjust it.
The dts file we use works fine with a previous version. But there we only use the device tree file for the kernel, not for uboot
arch/arm/mach-ompa2/am33xx/Kconfig: Added...
"
config TARGET_CUSTOM_BOARD
bool "Support custom_board"
select DM
select DM_SERIAL
select DM_GPIO
"
configs/custom_board_defoncfig: Modified config, i.a. (I copied only the Entries with Device Tree reference)
CONFIG_ARM=y
CONFIG_AM33XX=y
CONFIG_TARGET_CUSTOM_BOARD=y
CONFIG_DEFAULT_DEVICE_TREE="custom_board"
CONFIG_FIT=y
CONFIG_SPL_LOAD_FIT=y
CONFIG_OF_LIST="custom_board"
CONFIG_SPL_OF_LIBFDT=y
CONFIG_OF_LIBFDT=y
...And a lot of changes in include/configs/custom_board.h (Based on config am335x_evm.h)
But here I'm not sure, which lines are necessary for the Device Tree.
As I wrote above the build process is successfull and I found this in the log output:
DTC arch/arm/dts/am335x-boneblack.dtb
DTC arch/arm/dts/am335x-bone.dtb
DTC arch/arm/dts/am335x-draco.dtb
DTC arch/arm/dts/am335x-evm.dtb
DTC arch/arm/dts/am335x-evmsk.dtb
DTC arch/arm/dts/am335x-bonegreen.dtb
DTC arch/arm/dts/am335x-icev2.dtb
DTC arch/arm/dts/am335x-pxm50.dtb
DTC arch/arm/dts/am335x-rut.dtb
DTC arch/arm/dts/custom_board.dtb
SHIPPED dts/dt.dtb
MKIMAGE u-boot.img
CAT u-boot-dtb.bin
COPY u-boot.dtb
MKIMAGE u-boot-dtb.img
COPY u-boot.bin
My Questions :
Is there anything I forgot to adjust or to add?
Regarding to your Linux Core U-Boot User's Guide I assume the dtb file is in the u-boot.img???
Like it is descripted in your guide I copied the MLO file and u-boot.img to boot parition and the custom_board.dtb and zImage in folder /boot at the rootfs partition. Is this correct?
Best Regards
Markus