I try some set up config to load u-boot for a new board. My configuration is based on U-boot for Beagle Bone Black. I also follow some changes for new board on https://github.com/PacktPublishing/Mastering-Embedded-Linux-Programming-Second-Edition/blob/master/Chapter03/0001-BSP-for-Nova.patch.
I clone a new u-boot and stand at master branch, after I made config file for new board, I ran make
. It has 2 issues:
SYS_TEXT_BASE
:scripts/kconfig/conf --syncconfig Kconfig
outputs
.config:22:warning: symbol value '' invalid for SYS_TEXT_BASE
*
* Restart config...
*
*
* Boot images
*
Enable support for Android Boot Images (ANDROID_BOOT_IMAGE) [Y/n/?] y
Support Flattened Image Tree (FIT) [N/y/?] n
Enable support for the legacy image format (IMAGE_FORMAT_LEGACY)
[Y/n/?] y
Set up board-specific details in device tree before boot
(OF_BOARD_SETUP) [N/y/?] n
Set up system-specific details in device tree before boot
(OF_SYSTEM_SETUP) [N/y/?] n
Update the device-tree stdout alias from U-Boot (OF_STDOUT_VIA_ALIAS)
[N/y/?] n
Extra Options (DEPRECATED) (SYS_EXTRA_OPTIONS) []
Text Base (SYS_TEXT_BASE) [] (NEW)
Then I search for a SYS_TEXT_BASE
and entered a random text base: 0xfff10000
. But I think it's not for Beagle Bone.
__LINUX_ARM_ARCH__
:In file included from ./arch/arm/include/asm/system.h:6:0,
from ./arch/arm/include/asm/cache.h:11,
from include/net.h:15,
from include/common.h:517,
from lib/asm-offsets.c:14:
./arch/arm/include/asm/barriers.h:32:24: error: operator '>=' has no
left operand #if __LINUX_ARM_ARCH__ >= 7
^~
./arch/arm/include/asm/barriers.h:36:26: error: operator '==' has no
left operand #elif __LINUX_ARM_ARCH__ == 6
^~
Kbuild:43: recipe for target 'lib/asm-offsets.s' failed
make[1]: *** [lib/asm-offsets.s] Error 1
Makefile:1575: recipe for target 'prepare0' failed
make: *** [prepare0] Error 2
This was caused by a Kconfig option being renamed on master (CPU_V7
to CPU_V7A
). I changed in Kconfig CPU_V7A
to CPU_V7
, but it still has the same issue.
How can I resolve these issues?
The text base of the Beaglebone Black Board is CONFIG_SYS_TEXT_BASE=0x80100000
. It is specified in configs/omap3_beagle_defconfig
.
The symbol __LINUX_ARM_ARCH__
is defined in arch/arm/Makefile
based on CONFIG_SYS_ARM_ARCH
which is defined in .config
. So something must be wrong with your .config
file.