diff options
Diffstat (limited to 'scripts')
-rwxr-xr-x | scripts/poky-qemu (renamed from scripts/runqemu-standalone) | 2 | ||||
-rwxr-xr-x | scripts/poky-qemu-ifup (renamed from scripts/qemu-ifup) | 0 | ||||
-rwxr-xr-x | scripts/poky-qemu-internal (renamed from scripts/runqemu-internal) | 2 | ||||
-rw-r--r-- | scripts/poky-qemu.README | 96 | ||||
-rwxr-xr-x | scripts/runqemu | 4 | ||||
-rw-r--r-- | scripts/runqemu.README | 61 |
6 files changed, 100 insertions, 65 deletions
diff --git a/scripts/runqemu-standalone b/scripts/poky-qemu index 08829e933f..8710e05dd6 100755 --- a/scripts/runqemu-standalone +++ b/scripts/poky-qemu @@ -40,6 +40,6 @@ if [ "x$MACHINE" = "x" ]; then MACHINE=`basename $ZIMAGE | sed -e 's#.*-\([a-z]*\)-*[0-9]*..*#\1#'` fi -INTERNAL_SCRIPT=`which runqemu-internal` +INTERNAL_SCRIPT=`which poky-qemu-internal` source $INTERNAL_SCRIPT diff --git a/scripts/qemu-ifup b/scripts/poky-qemu-ifup index af081fb4d7..af081fb4d7 100755 --- a/scripts/qemu-ifup +++ b/scripts/poky-qemu-ifup diff --git a/scripts/runqemu-internal b/scripts/poky-qemu-internal index 1ad0ef34b8..e13f1b6dbe 100755 --- a/scripts/runqemu-internal +++ b/scripts/poky-qemu-internal @@ -27,7 +27,7 @@ # HDIMAGE - the disk image file to use # -QEMUIFUP=`which qemu-ifup` +QEMUIFUP=`which poky-qemu-ifup` KERNEL_NETWORK_CMD="ip=192.168.7.2::192.168.7.1:255.255.255.0" QEMU_NETWORK_CMD="-net nic,vlan=0 -net tap,vlan=0,ifname=tap0,script=$QEMUIFUP" diff --git a/scripts/poky-qemu.README b/scripts/poky-qemu.README new file mode 100644 index 0000000000..1b4e763a38 --- /dev/null +++ b/scripts/poky-qemu.README @@ -0,0 +1,96 @@ +Poky images with QEMU +===================== + +Poky can generate qemu bootable kernels and images with can be used +on a desktop system. Both arm and x86 images can currently be booted. +There are two scripts, runqemu and poky-qemu, one for use within poky, +the other externally. + +QEMU outside Poky (poky-qemu) +============================= + +The poky-qemu script is run as: + + MACHINE=<machine> poky-qemu <zimage> <filesystem> + +where: + + <zimage> is the path to a kernel (e.g. zimage-qemuarm.bin) + <filesystem> is the path to an ext2 image (e.g. filesystem-qemuarm.ext2) + <machine> is "qemuarm" or "qemux86" + +The MACHINE=<machine> prefix is optional and without it the script will try +to detect the machine name from the name of the <zimage> file. + +If <filesystem> isn't specified, nfs booting will be assumed. + + +QEMU within Poky (runqemu) +========================== + +The runqemu script is run as: + + runqemu <target> <type> <zimage> <filesystem> + +where: + + <target> is "qemuarm" or "qemux86" + <type> is "ext2" or "nfs" + <zimage> is the path to a kernel (zimage-qemuarm.bin) + <filesystem> is the path to an ext2 image (filesystem-qemuarm.ext2) + +It will default to the qemuarm, ext2 and the last kernel and oh-image-sdk +image built by poky. + + +Notes +===== + + - The scripts run qemu using sudo. Change perms on /dev/net/tun to + run as non root + - You can access the host computer at 192.168.7.1 within the image. + - Your qemu system will be accessible as 192.16.7.2. + - The default NFS mount points are /srv/nfs/qemux86 or /srv/nfs/qemuarm + depending on the target type. + - You can set QEMU_MEMORY to control amount of available memory (default 64M). + - You can set SERIAL_LOGFILE to have the serial output from the image logged + to a file. + + +NFS Image Notes +=============== + +As root; + +% apt-get install nfs-kernel-server + +% mkdir /srv/nfs/qemuarm + +Edit via /etc/exports : + +# /etc/exports: the access control list for filesystems which may be exported +# to NFS clients. See exports(5). +/srv/nfs/qemuarm 192.168.7.2(rw,no_root_squash) + +% /etc/init.d/nfs-kernel-server restart + +% modprobe tun + +untar build/tmp/deploy/images/<built image>.rootfs.tar.bz2 into /srv/nfs/qemuarm + +Finally, launch: + +% runqemu <target> nfs + +(Substitute qemux86 for qemuarm when using qemux86) + + +Known Issues +============ + + - There is a bug in the ARM qemu in that means occasionally it will use 100% + cpu. You will need to restart it in this situation. + - There is a problem with the ARM image not auto assigning an IP when using an + ext2 image. To have working TCP/IP connectivity run: + 'ifconfig eth0 192.168.7.2 up' + diff --git a/scripts/runqemu b/scripts/runqemu index 30fd0697c6..7ed080e20a 100755 --- a/scripts/runqemu +++ b/scripts/runqemu @@ -72,7 +72,7 @@ if [ "$MACHINE" = "qemux86" ]; then fi if [ "$TYPE" = "ext2" ]; then if [ "x$HDIMAGE" = "x" ]; then - HDIMAGE=$BUILDDIR/tmp/deploy/images/oh-image-pda-qemux86.ext2 + HDIMAGE=$BUILDDIR/tmp/deploy/images/oh-image-sdk-qemux86.ext2 fi fi CROSSPATH=$BUILDDIR/tmp/cross/i586-poky-linux/bin @@ -92,7 +92,7 @@ else echo "Warning: distccd not present, no distcc support loaded" fi -INTERNAL_SCRIPT=`which runqemu-internal` +INTERNAL_SCRIPT=`which poky-qemu-internal` source $INTERNAL_SCRIPT if [ -x "$DISTCCD" ]; then diff --git a/scripts/runqemu.README b/scripts/runqemu.README deleted file mode 100644 index 2f68b85cb8..0000000000 --- a/scripts/runqemu.README +++ /dev/null @@ -1,61 +0,0 @@ -Using qemu with poky notes -========================== - -Poky can generate qemu bootable kernels and images with can be used -on a desktop system. Both arm and x86 images can currently be booted. -The runqemu script is run as: - - runqemu <target> <type> <zimage> <filesystem> - -where: - - <target> is "qemuarm" or "qemux86" - <type> is "ext2" or "nfs" - <zimage> is the path to a kernel (zimage-qemuarm.bin) - <filesystem> is the path to an ext2 image (filesystem-qemuarm.ext2) - -It will default to the qemuarm, ext2 and the last kernel and oh-image-pda -image built by poky. - -NFS Image Notes -=============== - -As root; - -% apt-get install nfs-kernel-server - -% mkdir /srv/nfs/qemuarm - -Edit via /etc/exports : - -# /etc/exports: the access control list for filesystems which may be exported -# to NFS clients. See exports(5). -/srv/nfs/qemuarm 192.168.7.2(rw,no_root_squash) - -% /etc/init.d/nfs-kernel-server restart - -% modprobe tun - -untar build/tmp/deploy/images/<built image>.rootfs.tar.bz2 into /srv/nfs/qemuarm - -Finally, launch: - -% runqemu <target> nfs - -(Substitute qemux86 for qemuarm when using qemux86) - -Notes -===== - - - The runqemu script runs qemu with sudo. Change perms on /dev/net/tun to - run as non root - - You can set QEMU_MEMORY env var to control amount of available memory - ( defaults to 64M ) - - There is a bug in qemu in that means occasionally it will use 100% cpu. - You will need to restart it in this situation. - -More Info -========= - - - See http://o-hand.com/~richard/qemu.html - |