* [oe-core 1/5] qemu: Add cpio to the list of image filesystem types.
@ 2013-08-29 18:35 Elvis Dowson
2013-08-29 18:35 ` [oe-core 2/5] qemu: Add support for qemuarma9 Elvis Dowson
` (3 more replies)
0 siblings, 4 replies; 6+ messages in thread
From: Elvis Dowson @ 2013-08-29 18:35 UTC (permalink / raw)
To: openembedded-devel; +Cc: bruce.ashfield, Elvis Dowson
Signed-off-by: Elvis Dowson <elvis.dowson@gmail.com>
---
meta/conf/machine/include/qemu.inc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/meta/conf/machine/include/qemu.inc b/meta/conf/machine/include/qemu.inc
index 545f8d1..d5c95ff 100644
--- a/meta/conf/machine/include/qemu.inc
+++ b/meta/conf/machine/include/qemu.inc
@@ -15,7 +15,7 @@ MACHINE_FEATURES = "apm alsa pcmcia bluetooth irda usbgadget screen"
MACHINEOVERRIDES =. "qemuall:"
-IMAGE_FSTYPES += "tar.bz2 ext3"
+IMAGE_FSTYPES += "cpio tar.bz2 ext3"
# Don't include kernels in standard images
RDEPENDS_kernel-base = ""
--
1.7.10.4
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [oe-core 2/5] qemu: Add support for qemuarma9.
2013-08-29 18:35 [oe-core 1/5] qemu: Add cpio to the list of image filesystem types Elvis Dowson
@ 2013-08-29 18:35 ` Elvis Dowson
2013-08-29 18:35 ` [oe-core 3/5] qemu: Add support for qemuarmv7 Elvis Dowson
` (2 subsequent siblings)
3 siblings, 0 replies; 6+ messages in thread
From: Elvis Dowson @ 2013-08-29 18:35 UTC (permalink / raw)
To: openembedded-devel; +Cc: bruce.ashfield, Elvis Dowson
This commit
- adds support for qemuarma9 machine support based on the vexpress-a9
platform.
Signed-off-by: Elvis Dowson <elvis.dowson@gmail.com>
---
meta/conf/machine/qemuarma9.conf | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
create mode 100644 meta/conf/machine/qemuarma9.conf
diff --git a/meta/conf/machine/qemuarma9.conf b/meta/conf/machine/qemuarma9.conf
new file mode 100644
index 0000000..a46e28c
--- /dev/null
+++ b/meta/conf/machine/qemuarma9.conf
@@ -0,0 +1,24 @@
+#@TYPE: Machine
+#@NAME: qemuarma9
+#@DESCRIPTION: Machine configuration for QEMU ARM Cortex-A9.
+
+# Specify the default tune.
+DEFAULTTUNE = "armv7a-neon"
+
+require conf/machine/include/qemu.inc
+require conf/machine/include/tune-cortexa9.inc
+
+# Specify the preferred kernel version.
+PREFERRED_VERSION_linux-yocto ?= "3.8%"
+
+# Specify the kernel devicetree.
+KERNEL_DEVICETREE = "vexpress-v2p-ca9.dtb"
+
+# Specify the machine name used by the kernel.
+KMACHINE_qemuarma9 = "vexpress"
+
+# Specify the kernel image type.
+KERNEL_IMAGETYPE = "uImage"
+
+# Specify the serial console parameters.
+SERIAL_CONSOLE = "115200 ttyAMA0"
--
1.7.10.4
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [oe-core 3/5] qemu: Add support for qemuarmv7.
2013-08-29 18:35 [oe-core 1/5] qemu: Add cpio to the list of image filesystem types Elvis Dowson
2013-08-29 18:35 ` [oe-core 2/5] qemu: Add support for qemuarma9 Elvis Dowson
@ 2013-08-29 18:35 ` Elvis Dowson
2013-08-29 18:35 ` [oe-core 4/5] linux-yocto: Add support for qemuarmv7 and qemuarma9 Elvis Dowson
2013-08-29 18:35 ` [oe-core 5/5] qemu: runqemu: Add support for launching qemuarmv7 and qemuarma9 machine configurations Elvis Dowson
3 siblings, 0 replies; 6+ messages in thread
From: Elvis Dowson @ 2013-08-29 18:35 UTC (permalink / raw)
To: openembedded-devel; +Cc: bruce.ashfield, Elvis Dowson
This commit
- adds support for qemuarmv7 machine support based on the beagleboard
platform.
Signed-off-by: Elvis Dowson <elvis.dowson@gmail.com>
---
meta/conf/machine/qemuarmv7.conf | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
create mode 100644 meta/conf/machine/qemuarmv7.conf
diff --git a/meta/conf/machine/qemuarmv7.conf b/meta/conf/machine/qemuarmv7.conf
new file mode 100644
index 0000000..7f70ddb
--- /dev/null
+++ b/meta/conf/machine/qemuarmv7.conf
@@ -0,0 +1,18 @@
+#@TYPE: Machine
+#@NAME: qemuarmv7
+#@DESCRIPTION: Machine configuration for QEMU ARM Cortex-A8.
+
+# Specify the default tune.
+DEFAULTTUNE = "armv7a-neon"
+
+require conf/machine/include/qemu.inc
+require conf/machine/include/tune-cortexa8.inc
+
+# Specify the preferred kernel version.
+PREFERRED_VERSION_linux-yocto ?= "3.8%"
+
+# Specify the machine name used by the kernel.
+KMACHINE_qemuarmv7 = "beagleboard"
+
+# Specify the serial console parameters.
+SERIAL_CONSOLE = "115200 ttyO2"
--
1.7.10.4
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [oe-core 4/5] linux-yocto: Add support for qemuarmv7 and qemuarma9.
2013-08-29 18:35 [oe-core 1/5] qemu: Add cpio to the list of image filesystem types Elvis Dowson
2013-08-29 18:35 ` [oe-core 2/5] qemu: Add support for qemuarma9 Elvis Dowson
2013-08-29 18:35 ` [oe-core 3/5] qemu: Add support for qemuarmv7 Elvis Dowson
@ 2013-08-29 18:35 ` Elvis Dowson
[not found] ` <521F963F.3070801@windriver.com>
2013-08-29 18:35 ` [oe-core 5/5] qemu: runqemu: Add support for launching qemuarmv7 and qemuarma9 machine configurations Elvis Dowson
3 siblings, 1 reply; 6+ messages in thread
From: Elvis Dowson @ 2013-08-29 18:35 UTC (permalink / raw)
To: openembedded-devel; +Cc: bruce.ashfield, Elvis Dowson
This commit
- adds qemuarmv7 and qemuarma9 to the list of compatible machines.
Signed-off-by: Elvis Dowson <elvis.dowson@gmail.com>
---
meta/recipes-kernel/linux/linux-yocto_3.8.bb | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/meta/recipes-kernel/linux/linux-yocto_3.8.bb b/meta/recipes-kernel/linux/linux-yocto_3.8.bb
index 790e3e3..0bd9913 100644
--- a/meta/recipes-kernel/linux/linux-yocto_3.8.bb
+++ b/meta/recipes-kernel/linux/linux-yocto_3.8.bb
@@ -21,7 +21,7 @@ PV = "${LINUX_VERSION}+git${SRCPV}"
KMETA = "meta"
-COMPATIBLE_MACHINE = "qemuarm|qemux86|qemuppc|qemumips|qemumips64|qemux86-64"
+COMPATIBLE_MACHINE = "qemuarm|qemuarmv7|qemuarma9|qemux86|qemuppc|qemumips|qemumips64|qemux86-64"
# Functionality flags
KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc"
--
1.7.10.4
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [oe-core 5/5] qemu: runqemu: Add support for launching qemuarmv7 and qemuarma9 machine configurations.
2013-08-29 18:35 [oe-core 1/5] qemu: Add cpio to the list of image filesystem types Elvis Dowson
` (2 preceding siblings ...)
2013-08-29 18:35 ` [oe-core 4/5] linux-yocto: Add support for qemuarmv7 and qemuarma9 Elvis Dowson
@ 2013-08-29 18:35 ` Elvis Dowson
3 siblings, 0 replies; 6+ messages in thread
From: Elvis Dowson @ 2013-08-29 18:35 UTC (permalink / raw)
To: openembedded-devel; +Cc: bruce.ashfield, Elvis Dowson
This commit
- adds support for launching qemuarmv7 and qemuarmv9 machine configurations.
Signed-off-by: Elvis Dowson <elvis.dowson@gmail.com>
---
scripts/runqemu | 14 ++++++++---
scripts/runqemu-internal | 58 ++++++++++++++++++++++++++++++++++++++++++----
2 files changed, 65 insertions(+), 7 deletions(-)
diff --git a/scripts/runqemu b/scripts/runqemu
index 04dc3b0..3282893 100755
--- a/scripts/runqemu
+++ b/scripts/runqemu
@@ -39,6 +39,8 @@ usage() {
echo ""
echo "Examples:"
echo " $MYNAME qemuarm"
+ echo " $MYNAME qemuarmv7"
+ echo " $MYNAME qemuarma9"
echo " $MYNAME qemux86-64 core-image-sato ext3"
echo " $MYNAME path/to/bzImage-qemux86.bin path/to/nfsrootdir/ serial"
echo " $MYNAME qemux86 ramfs"
@@ -107,7 +109,7 @@ KVM_ENABLED="no"
while true; do
arg=${1}
case "$arg" in
- "qemux86" | "qemux86-64" | "qemuarm" | "qemumips" | "qemumipsel" | \
+ "qemux86" | "qemux86-64" | "qemuarm" | "qemuarmv7" | "qemuarma9" |"qemumips" | "qemumipsel" | \
"qemumips64" | "qemush4" | "qemuppc" | "qemumicroblaze" | "qemuzynq")
[ -z "$MACHINE" ] && MACHINE=$arg || \
error "conflicting MACHINE types [$MACHINE] and [$arg]"
@@ -224,13 +226,13 @@ fi
if [ -z "$MACHINE" ]; then
if [ "x$FSTYPE" = "xvmdk" ]; then
- MACHINE=`basename $VM | sed 's/.*\(qemux86-64\|qemux86\|qemuarm\|qemumips64\|qemumips\|qemuppc\|qemush4\).*/\1/'`
+ MACHINE=`basename $VM | sed 's/.*\(qemux86-64\|qemux86\|qemuarm\|qemuarmv7\|qemuarma9\|qemumips64\|qemumips\|qemuppc\|qemush4\).*/\1/'`
if [ -z "$MACHINE" ]; then
error "Unable to set MACHINE from vmdk filename [$VM]"
fi
echo "Set MACHINE to [$MACHINE] based on vmdk [$VM]"
else
- MACHINE=`basename $KERNEL | sed 's/.*\(qemux86-64\|qemux86\|qemuarm\|qemumips64\|qemumips\|qemuppc\|qemush4\).*/\1/'`
+ MACHINE=`basename $KERNEL | sed 's/.*\(qemux86-64\|qemux86\|qemuarm\|qemuarmv7\|qemuarma9\|qemumips64\|qemumips\|qemuppc\|qemush4\).*/\1/'`
if [ -z "$MACHINE" ]; then
error "Unable to set MACHINE from kernel filename [$KERNEL]"
fi
@@ -294,6 +296,12 @@ QEMUX86_64_DEFAULT_FSTYPE=ext3
QEMUARM_DEFAULT_KERNEL=zImage-qemuarm.bin
QEMUARM_DEFAULT_FSTYPE=ext3
+QEMUARMV7_DEFAULT_KERNEL=zImage-qemuarmv7.bin
+QEMUARMV7_DEFAULT_FSTYPE=ext3
+
+QEMUARMA9_DEFAULT_KERNEL=uImage
+QEMUARMA9_DEFAULT_FSTYPE=cpio
+
QEMUMIPS_DEFAULT_KERNEL=vmlinux-qemumips.bin
QEMUMIPS_DEFAULT_FSTYPE=ext3
diff --git a/scripts/runqemu-internal b/scripts/runqemu-internal
index 8a6e551..3f35054 100755
--- a/scripts/runqemu-internal
+++ b/scripts/runqemu-internal
@@ -50,6 +50,12 @@ else
"qemuarm")
mem_size=128
;;
+ "qemuarmv7")
+ mem_size=1024
+ ;;
+ "qemuarma9")
+ mem_size=1024
+ ;;
"qemumicroblaze")
mem_size=64
;;
@@ -267,6 +273,8 @@ fi
case "$MACHINE" in
"qemuarm") ;;
+ "qemuarmv7") ;;
+ "qemuarma9") ;;
"qemumicroblaze") ;;
"qemumips") ;;
"qemumipsel") ;;
@@ -325,7 +333,7 @@ if [ "$NFS_SERVER" = "" ]; then
NFS_DIR=$ROOTFS
fi
-if [ "$MACHINE" = "qemuarm" -o "$MACHINE" = "qemuarmv6" -o "$MACHINE" = "qemuarmv7" ]; then
+if [ "$MACHINE" = "qemuarm" -o "$MACHINE" = "qemuarmv6" ]; then
QEMU=qemu-system-arm
MACHINE_SUBTYPE=versatilepb
export QEMU_AUDIO_DRV="none"
@@ -347,8 +355,50 @@ if [ "$MACHINE" = "qemuarm" -o "$MACHINE" = "qemuarmv6" -o "$MACHINE" = "qemuarm
if [ "$MACHINE" = "qemuarmv6" ]; then
QEMUOPTIONS="$QEMUOPTIONS -cpu arm1136"
fi
- if [ "$MACHINE" = "qemuarmv7" ]; then
- QEMUOPTIONS="$QEMUOPTIONS -cpu cortex-a8"
+fi
+
+if [ "$MACHINE" = "qemuarmv7" ]; then
+ QEMU=qemu-system-arm
+ MACHINE_SUBTYPE=beagle
+ export QEMU_AUDIO_DRV="none"
+ QEMU_UI_OPTIONS="$QEMU_UI_OPTIONS"
+ # QEMU_UI_OPTIONS="$QEMU_UI_OPTIONS -force-pointer"
+ if [ "${FSTYPE:0:3}" = "ext" -o "$FSTYPE" = "btrfs" ]; then
+ KERNCMDLINE="root=/dev/sda rw console=ttyO2,115200 console=tty $KERNEL_NETWORK_CMD mem=$QEMU_MEMORY highres=off"
+ QEMUOPTIONS="$QEMU_NETWORK_CMD -M ${MACHINE_SUBTYPE} -cpu cortex-a8 -hda $ROOTFS -no-reboot $QEMU_UI_OPTIONS"
+ fi
+
+ if [ "$FSTYPE" = "nfs" ]; then
+ if [ "$NFS_SERVER" = "192.168.7.1" -a ! -d "$NFS_DIR" ]; then
+ echo "Error: NFS mount point $ROOTFS doesn't exist"
+ cleanup
+ return 1
+ fi
+ KERNCMDLINE="root=/dev/nfs nfsroot=$NFS_SERVER:$NFS_DIR,$UNFS_OPTS rw $KERNEL_NETWORK_CMD mem=$QEMU_MEMORY"
+ QEMUOPTIONS="$QEMU_NETWORK_CMD -M ${MACHINE_SUBTYPE} --no-reboot $QEMU_UI_OPTIONS"
+ fi
+fi
+
+if [ "$MACHINE" = "qemuarma9" ]; then
+ QEMU=qemu-system-arm
+ MACHINE_SUBTYPE=vexpress-a9
+ export QEMU_AUDIO_DRV="none"
+ QEMU_UI_OPTIONS="-show-cursor -usb"
+ # QEMU_UI_OPTIONS="$QEMU_UI_OPTIONS -force-pointer"
+ if [ "${FSTYPE:0:3}" = "ext" -o "${FSTYPE:0:4}" = "cpio" ]; then
+ KERNCMDLINE="earlyprintk root=/dev/ram0 rw console=ttyAMA0,38400n8 rootwait vmalloc=256MB devtmpfs.mount=0 console=tty mem=$QEMU_MEMORY highres=off"
+ QEMUOPTIONS="-M ${MACHINE_SUBTYPE} -cpu cortex-a9 -m 1024 -initrd $ROOTFS"
+ #QEMUOPTIONS="$QEMU_NETWORK_CMD -M ${MACHINE_SUBTYPE} -hda $ROOTFS -no-reboot $QEMU_UI_OPTIONS"
+ fi
+
+ if [ "$FSTYPE" = "nfs" ]; then
+ if [ "$NFS_SERVER" = "192.168.7.1" -a ! -d "$NFS_DIR" ]; then
+ echo "Error: NFS mount point $ROOTFS doesn't exist"
+ cleanup
+ return 1
+ fi
+ KERNCMDLINE="root=/dev/nfs nfsroot=$NFS_SERVER:$NFS_DIR,$UNFS_OPTS rw $KERNEL_NETWORK_CMD mem=$QEMU_MEMORY"
+ QEMUOPTIONS="$QEMU_NETWORK_CMD -M ${MACHINE_SUBTYPE} --no-reboot $QEMU_UI_OPTIONS"
fi
fi
@@ -522,7 +572,7 @@ fi
if [ "x$RAMFS" = "xtrue" ]; then
QEMUOPTIONS="-initrd $ROOTFS -nographic"
- KERNCMDLINE="root=/dev/ram0 debugshell"
+ KERNCMDLINE="earlyprintk root=/dev/ram debugshell"
fi
if [ "x$ISOFS" = "xtrue" ]; then
--
1.7.10.4
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [oe-core 4/5] linux-yocto: Add support for qemuarmv7 and qemuarma9.
[not found] ` <521F963F.3070801@windriver.com>
@ 2013-08-29 18:48 ` Elvis Dowson
0 siblings, 0 replies; 6+ messages in thread
From: Elvis Dowson @ 2013-08-29 18:48 UTC (permalink / raw)
To: Bruce Ashfield; +Cc: openembedded-devel
Hi Bruce,
On Aug 29, 2013, at 10:43 PM, Bruce Ashfield <bruce.ashfield@windriver.com> wrote:
> On 13-08-29 02:35 PM, Elvis Dowson wrote:
>> This commit
>> - adds qemuarmv7 and qemuarma9 to the list of compatible machines.
>>
>> Signed-off-by: Elvis Dowson <elvis.dowson@gmail.com>
>> ---
>> meta/recipes-kernel/linux/linux-yocto_3.8.bb | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/meta/recipes-kernel/linux/linux-yocto_3.8.bb b/meta/recipes-kernel/linux/linux-yocto_3.8.bb
>> index 790e3e3..0bd9913 100644
>> --- a/meta/recipes-kernel/linux/linux-yocto_3.8.bb
>> +++ b/meta/recipes-kernel/linux/linux-yocto_3.8.bb
>> @@ -21,7 +21,7 @@ PV = "${LINUX_VERSION}+git${SRCPV}"
>>
>> KMETA = "meta"
>>
>> -COMPATIBLE_MACHINE = "qemuarm|qemux86|qemuppc|qemumips|qemumips64|qemux86-64"
>> +COMPATIBLE_MACHINE = "qemuarm|qemuarmv7|qemuarma9|qemux86|qemuppc|qemumips|qemumips64|qemux86-64"
>
> We can add compatibility, but the same question needs to be asked
> to Richard when we added qemumips64: does the project have the capacity
> to build and QA the machines by default.
>
> We can always get everything working in layers for the time being and
> then move them into the core, once everything is working well, and
> everyone agrees to add the extra support load.
I recommend that we create a new meta-qemu layer, to support development of
qemu machine configurations for
qemuarmv7 (useful for emulating TI OMAP 3 based platforms)
qemuarma9 (useful for emulating TI OMAP 4 and Freescale i.MX6 platforms)
qemuarmv8 (for AArch64 platforms)
qemumips64
etc
That should just about cover current ARM A8, A9, A15 and MIPS64.
Best regards,
Elvis Dowson
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2013-08-29 18:49 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-08-29 18:35 [oe-core 1/5] qemu: Add cpio to the list of image filesystem types Elvis Dowson
2013-08-29 18:35 ` [oe-core 2/5] qemu: Add support for qemuarma9 Elvis Dowson
2013-08-29 18:35 ` [oe-core 3/5] qemu: Add support for qemuarmv7 Elvis Dowson
2013-08-29 18:35 ` [oe-core 4/5] linux-yocto: Add support for qemuarmv7 and qemuarma9 Elvis Dowson
[not found] ` <521F963F.3070801@windriver.com>
2013-08-29 18:48 ` Elvis Dowson
2013-08-29 18:35 ` [oe-core 5/5] qemu: runqemu: Add support for launching qemuarmv7 and qemuarma9 machine configurations Elvis Dowson
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.