
Stefano, Loïc,
On 24/06/2011 17:37, Loïc Minier wrote:
On Fri, Jun 24, 2011, Stefano Babic wrote:
Versatile board is used as example to run u-boot under qemu. The patch fixes relocation for all versatile boards and adds a versatileqemu target to be used under qemu.
Thanks a lot!
Patch tested only under qemu, not on real boards. Tested with QEMU emulator version 0.14.50.
I've built u-boot tip with your patch with: make CROSS_COMPILE=arm-linux-gnueabi- O=$PWD/obj-versatileqemu \ versatileqemu_config make CROSS_COMPILE=arm-linux-gnueabi- O=$PWD/obj-versatileqemu -j3 using the Ubuntu (Linaro-based, 4.6.0-14ubuntu1cross1.52) armel cross-compiler but couldn't get this to start with my incantations of: qemu-system-arm -M versatilepb -kernel obj-versatileqemu/u-boot \ -m 128 -serial stdio and other combinations I've tried
However, inspired by your changes I added these changes: --- a/boards.cfg +++ b/boards.cfg @@ -138,6 +138,7 @@ omap5912osk arm arm926ejs - ti edminiv2 arm arm926ejs - LaCie orion5x dkb arm arm926ejs - Marvell pantheon ca9x4_ct_vxp arm armv7 vexpress armltd +qemuvexpressa9 arm armv7 vexpress armltd - ca9x4_ct_vxp:ARCH_QEMU_VEXPRESS efikamx arm armv7 efikamx - mx5 mx51evk:IMX_CONFIG=board/efikamx/imximage.cfg mx51evk arm armv7 mx51evk freescale mx5 mx51evk:IMX_CONFIG=board/freescale/mx51evk/imximage.cfg mx53evk arm armv7 mx53evk freescale mx5 mx53evk:IMX_CONFIG=board/freescale/mx53evk/imximage.cfg --- a/include/configs/ca9x4_ct_vxp.h +++ b/include/configs/ca9x4_ct_vxp.h @@ -148,6 +148,12 @@ "cp ${initrdaddr} ${initrd} ${maxinitrd}; " \ "bootm ${kerneladdr} ${initrd}\0"
+#ifdef CONFIG_ARCH_QEMU_VEXPRESS +#define CONFIG_ENV_SIZE 8192 +#define CONFIG_SYS_NO_FLASH +#define CONFIG_ENV_IS_NOWHERE +#define CONFIG_SYS_MONITOR_LEN 0x80000 +#else /* FLASH and environment organization */ #define PHYS_FLASH_SIZE 0x04000000 /* 64MB */ #define CONFIG_SYS_FLASH_CFI 1 @@ -187,6 +193,7 @@ #define CONFIG_SYS_FLASH_EMPTY_INFO /* flinfo indicates empty blocks */ #define CONFIG_SYS_FLASH_BANKS_LIST { CONFIG_SYS_FLASH_BASE0, \ CONFIG_SYS_FLASH_BASE1 } +#endif
/* Monitor Command Prompt */ #define CONFIG_SYS_CBSIZE 512 /* Console I/O Buffer Size */
and built with: make CROSS_COMPILE=arm-linux-gnueabi- O=$PWD/obj-qemuvexpressa9 \ qemuvexpressa9_config make CROSS_COMPILE=arm-linux-gnueabi- O=$PWD/obj-qemuvexpressa9 -j3 \ $PWD/obj-qemuvexpressa9/u-boot and this started fine with: qemu-system-arm -M vexpress-a9 -kernel obj-qemuvexpressa9/u-boot \ -m 1024 -serial stdio
I wonder whether it would make sense to use the same ifdef for versatile and vexpress boards (QEMU_NO_FLASH?) and prefix the board names with qemu; e.g. qemu_versatile_foo?
Could you share your recipe for getting the versatileqemu config to start? I'm using Ubuntu's qemu (Linaro-based, 0.14.50-2011.06-0-0ubuntu1).
Does this mean Stefano's patch will see a V2, or should I try and apply it as-is?
Amicalement,