Dear Tom, Tiger, > > hi Tom, > >> On Thu, May 22, 2014 at 10:26:17PM +0800, feng...@phytium.com.cn wrote: >>> >>> >>>> Hi , >>>> I have added mmc driver into the vexpress64 board file for uboot and tested >>>> it on FVP base model. I tried booting a kernel on that but it is aborting >>>> with the following message: >>>> Final value for argc=3 >>>> Loading Kernel Image ... OK >>>> kernel loaded at 0x00080000, end = 0x00827024 >>>> using: FDT >>>> reserving fdt memory region: addr=80000000 size=10000 >>>> ## initrd_high = 0xffffffffffffffff, copy_to_ram = 1 >>>> ramdisk load start = 0x00000000, ramdisk load end = 0x00000000 >>>> ## device tree at 0000000090008000 ... 000000009000a850 (len=22609 >>>> [0x5851]) >>>> Loading Device Tree to 000000009fffa000, end 000000009ffff850 ... OK >>>> Initial value for argc=3 >>>> Final value for argc=3 >>>> ## Transferring control to Linux (at address 80000)... >>>> Starting kernel ... >>>> >>>> "Synchronous Abort" handler, esr 0x02000000 >>>> ELR: 80000 >>>> LR: fff90fc8 >>>> x0 : 000000009fffa000 x1 : 000000001c090000 >>>> x2 : 000000001c090000 x3 : 0000000000000020 >>>> x4 : 00000000fff6b834 x5 : 0000000000000000 >>>> x6 : 00000000fff6bb40 x7 : 00000000ffffffd0 >>>> x8 : 000000000000000f x9 : 000000007ff8e000 >>>> x10: 00000000fffb7188 x11: 0000000000000000 >>>> x12: 0000000000006000 x13: 0000000000000004 >>>> x14: 0000000000000003 x15: 00000000fffc7c20 >>>> x16: 0000000000000000 x17: 0000000000000000 >>>> x18: 00000000fff6beb8 x19: 0000000000080000 >>>> x20: 00000000fffc7a70 x21: 0000000000000000 >>>> x22: 0000000000000000 x23: 00000000fff6d8d8 >>>> x24: 0000000000000000 x25: 00000000fffc2630 >>>> x26: 0000000000000000 x27: 0000000080008000 >>>> x28: 0000000000000000 x29: 00000000fff6bb40 >>>> >>>> Can anyone please provide the procedure on how to boot the kernel with >>>> u-boot on armv8 models ? >>> I always use mkimage converting kernel to uImage and booting it. It works >>> fine. >>> Wish this help you. >> >> Which version of the model are you using and which kernel tree? Thanks! >> > The model is the most recent FVP from linaro website and the kernel is a very > old one. > But mkimage has nothing to do with the kernel. uImage produced > by mkimage is correctly loaded by u-boot for aarch64. > I will make a test with the most recently kernel and give you feedback. > I have made a kernel booting test.
u-boot: cloned from git tree. Foundation Model: FM000-KT-00035-r0p8-52rel06.tar, downloaded from arm website. Linux kernel: linux-3.14.4.tar.xz, stable version from kernel.org steps: 1. compile u-boot, replace CONFIG_GICV3 with CONFIG_GICV2 in vexpress_aemv8a.h due to GICv3 support has not been upstream to kernel mainline. 2. compile linux kernel, use arch/arm64/boot/configs/defconfig as the default configuration. then, mkimage -A arm64 -O linux -C none -T kernel -a 0x80080000 -e 0x80080000 -n 3.14.4 -d Image uImage 3. use linux/arch/arm64/boot/dts/foundation-v8.dts as the device tree, because CONFIG_SYS_TEXT_BASE is 0x80000000 I reconfigure 'cpu-release-addr' as 0x8007fff0. then, dtc foundation-v8.dts -O dtb -o u-boot.dtb 4. run foundation model: Foundation_v8 --image=u-boot.elf --data=uImage@0x90000000 --data=u-boot.dtb@0xa0000000 --cores=4 5. In u-boot command line, type the following command to boot os, bootm 0x90000000 - 0xa0000000 I did not test the rootfs yet. Best regards, David _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot