On Wed, Feb 17, 2016 at 07:40:56PM +0100, Andrew Jones wrote: > Now that we have all the pieces, pull them together into a > run script (adapted from arm's). To run a test do './powerpc-run > powerpc/test.elf'. To run all tests in unittests.cfg do > './run_tests.sh' > > (We can now run simple unit tests, but they don't quit on their > own yet. Use ^C to quit them.) > > Signed-off-by: Andrew Jones <drjones@xxxxxxxxxx> > Reviewed-by: Thomas Huth <thuth@xxxxxxxxxx> > Tested-by: Laurent Vivier <lvivier@xxxxxxxxxx> Reviewed-by: David Gibson <david@xxxxxxxxxxxxxxxxxxxxx> > --- > powerpc/run | 52 +++++++++++++++++++++++++++++++++++++++++++++++++++ > powerpc/unittests.cfg | 30 +++++++++++++++++++++++++++++ > 2 files changed, 82 insertions(+) > create mode 100755 powerpc/run > create mode 100644 powerpc/unittests.cfg > > diff --git a/powerpc/run b/powerpc/run > new file mode 100755 > index 0000000000000..47aecb7600832 > --- /dev/null > +++ b/powerpc/run > @@ -0,0 +1,52 @@ > +#!/bin/bash > + > +if [ -z "$STANDALONE" ]; then > + if [ ! -f config.mak ]; then > + echo "run ./configure && make first. See ./configure -h" > + exit 2 > + fi > + source config.mak > +fi > + > +if [ -c /dev/kvm ]; then > + if [ "$HOST" = "ppc64" ] && [ "$ARCH" = "ppc64" ]; then > + kvm_available=yes > + fi > +fi > + > +if [ "$ACCEL" = "kvm" ] && [ "$kvm_available" != "yes" ]; then > + echo "skip $TESTNAME (kvm only)" > + exit 2 > +fi > + > +if [ -z "$ACCEL" ]; then > + if [ "$kvm_available" = "yes" ]; then > + ACCEL="kvm" > + else > + ACCEL="tcg" > + fi > +fi > + > +qemu="${QEMU:-qemu-system-$ARCH_NAME}" > +qpath=$(which $qemu 2>/dev/null) > + > +if [ -z "$qpath" ]; then > + echo $qemu not found. > + exit 2 > +fi > + > +if ! $qemu -machine '?' 2>&1 | grep 'pseries' > /dev/null; then > + echo "$qpath doesn't support pSeries ('-machine pseries'). Exiting." > + exit 2 > +fi > + > +M='-machine pseries' > +M+=",accel=$ACCEL" > +command="$qemu $M -bios powerpc/boot_rom.bin" > +command+=" -display none -serial stdio -kernel" > +echo $command "$@" > + > +$command "$@" > +ret=$? > +echo Return value from qemu: $ret > +exit $ret > diff --git a/powerpc/unittests.cfg b/powerpc/unittests.cfg > new file mode 100644 > index 0000000000000..60f9be80e8abf > --- /dev/null > +++ b/powerpc/unittests.cfg > @@ -0,0 +1,30 @@ > +############################################################################## > +# unittest configuration > +# > +# [unittest_name] > +# file = <name>.flat # Name of the flat file to be used. > +# smp = <num> # Number of processors the VM will use > +# # during this test. Use $MAX_SMP to use > +# # the maximum the host supports. Defaults > +# # to one. > +# extra_params = -append <params...> # Additional parameters used. > +# arch = ppc64 # Select one if the test case is > +# # specific to only one. > +# groups = <group_name1> <group_name2> ... # Used to identify test cases > +# # with run_tests -g ... > +# accel = kvm|tcg # Optionally specify if test must run with > +# # kvm or tcg. If not specified, then kvm will > +# # be used when available. > +# timeout = <duration> # Optionally specify a timeout. > +############################################################################## > + > +# > +# Test that the configured number of processors (smp = <num>), and > +# that the configured amount of memory (-m <MB>) are correctly setup > +# by the framework. > +# > +[selftest-setup] > +file = selftest.elf > +smp = 2 > +extra_params = -m 256 -append 'setup smp=2 mem=256' > +groups = selftest -- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson
Attachment:
signature.asc
Description: PGP signature