18849e9cbSAndrew Jones############################################################################## 28849e9cbSAndrew Jones# unittest configuration 38849e9cbSAndrew Jones# 45e61cba0SAndrew Jones# [unittest_name] 58849e9cbSAndrew Jones# file = <name>.flat # Name of the flat file to be used. 68849e9cbSAndrew Jones# smp = <num> # Number of processors the VM will use 78849e9cbSAndrew Jones# # during this test. Use $MAX_SMP to use 88849e9cbSAndrew Jones# # the maximum the host supports. Defaults 98849e9cbSAndrew Jones# # to one. 108849e9cbSAndrew Jones# extra_params = -append <params...> # Additional parameters used. 118849e9cbSAndrew Jones# arch = arm|arm64 # Select one if the test case is 128849e9cbSAndrew Jones# # specific to only one. 138849e9cbSAndrew Jones# groups = <group_name1> <group_name2> ... # Used to identify test cases 148849e9cbSAndrew Jones# # with run_tests -g ... 159a008986SSuraj Jitindar Singh# # Specify group_name=nodefault 169a008986SSuraj Jitindar Singh# # to have test not run by 179a008986SSuraj Jitindar Singh# # default 188849e9cbSAndrew Jones# accel = kvm|tcg # Optionally specify if test must run with 198849e9cbSAndrew Jones# # kvm or tcg. If not specified, then kvm will 208849e9cbSAndrew Jones# # be used when available. 21fd149358SAndrew Jones# timeout = <duration> # Optionally specify a timeout. 227019e650SLaurent Vivier# check = <path>=<value> # check a file for a particular value before running 237019e650SLaurent Vivier# # a test. The check line can contain multiple files 247019e650SLaurent Vivier# # to check separated by a space but each check 257019e650SLaurent Vivier# # parameter needs to be of the form <path>=<value> 268849e9cbSAndrew Jones############################################################################## 275e61cba0SAndrew Jones 285e61cba0SAndrew Jones# 295e61cba0SAndrew Jones# Test that the configured number of processors (smp = <num>), and 305e61cba0SAndrew Jones# that the configured amount of memory (-m <MB>) are correctly setup 315e61cba0SAndrew Jones# by the framework. 325e61cba0SAndrew Jones# 3390b91265SAndrew Jones[selftest-setup] 345e61cba0SAndrew Jonesfile = selftest.flat 350415feeaSAndrew Jonessmp = 2 360415feeaSAndrew Jonesextra_params = -m 256 -append 'setup smp=2 mem=256' 375e61cba0SAndrew Jonesgroups = selftest 382edfe428SAndrew Jones 39f052fea1SAndrew Jones# Test vector setup and exception handling (kernel mode). 4090b91265SAndrew Jones[selftest-vectors-kernel] 412edfe428SAndrew Jonesfile = selftest.flat 42f052fea1SAndrew Jonesextra_params = -append 'vectors-kernel' 432edfe428SAndrew Jonesgroups = selftest 442edfe428SAndrew Jones 45f052fea1SAndrew Jones# Test vector setup and exception handling (user mode). 4690b91265SAndrew Jones[selftest-vectors-user] 472edfe428SAndrew Jonesfile = selftest.flat 48f052fea1SAndrew Jonesextra_params = -append 'vectors-user' 492edfe428SAndrew Jonesgroups = selftest 500415feeaSAndrew Jones 510415feeaSAndrew Jones# Test SMP support 5290b91265SAndrew Jones[selftest-smp] 530415feeaSAndrew Jonesfile = selftest.flat 545e78b70dSAndrew Jonessmp = $MAX_SMP 550415feeaSAndrew Jonesextra_params = -append 'smp' 560415feeaSAndrew Jonesgroups = selftest 57f7f81c6aSAlexander Gordeev 58ac4a67b6SAndrew Jones# Test PCI emulation 59f7f81c6aSAlexander Gordeev[pci-test] 60f7f81c6aSAlexander Gordeevfile = pci-test.flat 61f7f81c6aSAlexander Gordeevgroups = pci 624244065bSChristopher Covington 634244065bSChristopher Covington# Test PMU support 6457ec1086SEric Auger[pmu-cycle-counter] 654244065bSChristopher Covingtonfile = pmu.flat 664244065bSChristopher Covingtongroups = pmu 6757ec1086SEric Augerextra_params = -append 'cycle-counter 0' 688f76a347SChristopher Covington 694870738cSEric Auger[pmu-event-introspection] 704870738cSEric Augerfile = pmu.flat 714870738cSEric Augergroups = pmu 724870738cSEric Augerarch = arm64 734870738cSEric Augerextra_params = -append 'pmu-event-introspection' 744870738cSEric Auger 754ce2a804SEric Auger[pmu-event-counter-config] 764ce2a804SEric Augerfile = pmu.flat 774ce2a804SEric Augergroups = pmu 784ce2a804SEric Augerarch = arm64 794ce2a804SEric Augerextra_params = -append 'pmu-event-counter-config' 804ce2a804SEric Auger 814ce2a804SEric Auger[pmu-basic-event-count] 824ce2a804SEric Augerfile = pmu.flat 834ce2a804SEric Augergroups = pmu 844ce2a804SEric Augerarch = arm64 854ce2a804SEric Augerextra_params = -append 'pmu-basic-event-count' 864ce2a804SEric Auger 874ce2a804SEric Auger[pmu-mem-access] 884ce2a804SEric Augerfile = pmu.flat 894ce2a804SEric Augergroups = pmu 904ce2a804SEric Augerarch = arm64 914ce2a804SEric Augerextra_params = -append 'pmu-mem-access' 924ce2a804SEric Auger 93bb9a5adcSEric Auger[pmu-sw-incr] 94bb9a5adcSEric Augerfile = pmu.flat 95bb9a5adcSEric Augergroups = pmu 96bb9a5adcSEric Augerarch = arm64 97bb9a5adcSEric Augerextra_params = -append 'pmu-sw-incr' 98bb9a5adcSEric Auger 99*66fee034SEric Auger[pmu-chained-counters] 100*66fee034SEric Augerfile = pmu.flat 101*66fee034SEric Augergroups = pmu 102*66fee034SEric Augerarch = arm64 103*66fee034SEric Augerextra_params = -append 'pmu-chained-counters' 104*66fee034SEric Auger 105*66fee034SEric Auger[pmu-chained-sw-incr] 106*66fee034SEric Augerfile = pmu.flat 107*66fee034SEric Augergroups = pmu 108*66fee034SEric Augerarch = arm64 109*66fee034SEric Augerextra_params = -append 'pmu-chained-sw-incr' 110*66fee034SEric Auger 1118f76a347SChristopher Covington# Test PMU support (TCG) with -icount IPC=1 1125d01d087SAndrew Jones#[pmu-tcg-icount-1] 1135d01d087SAndrew Jones#file = pmu.flat 11457ec1086SEric Auger#extra_params = -icount 0 -append 'cycle-counter 1' 1155d01d087SAndrew Jones#groups = pmu 1165d01d087SAndrew Jones#accel = tcg 1178f76a347SChristopher Covington 1188f76a347SChristopher Covington# Test PMU support (TCG) with -icount IPC=256 1195d01d087SAndrew Jones#[pmu-tcg-icount-256] 1205d01d087SAndrew Jones#file = pmu.flat 12157ec1086SEric Auger#extra_params = -icount 8 -append 'cycle-counter 256' 1225d01d087SAndrew Jones#groups = pmu 1235d01d087SAndrew Jones#accel = tcg 124ac4a67b6SAndrew Jones 125ac4a67b6SAndrew Jones# Test GIC emulation 126ac4a67b6SAndrew Jones[gicv2-ipi] 127ac4a67b6SAndrew Jonesfile = gic.flat 128ac4a67b6SAndrew Jonessmp = $((($MAX_SMP < 8)?$MAX_SMP:8)) 129ac4a67b6SAndrew Jonesextra_params = -machine gic-version=2 -append 'ipi' 130ac4a67b6SAndrew Jonesgroups = gic 1312e2d471dSAndrew Jones 13278ad7e95SAndre Przywara[gicv2-mmio] 13378ad7e95SAndre Przywarafile = gic.flat 13478ad7e95SAndre Przywarasmp = $((($MAX_SMP < 8)?$MAX_SMP:8)) 13578ad7e95SAndre Przywaraextra_params = -machine gic-version=2 -append 'mmio' 13678ad7e95SAndre Przywaragroups = gic 13778ad7e95SAndre Przywara 13878ad7e95SAndre Przywara[gicv2-mmio-up] 13978ad7e95SAndre Przywarafile = gic.flat 14078ad7e95SAndre Przywarasmp = 1 14178ad7e95SAndre Przywaraextra_params = -machine gic-version=2 -append 'mmio' 14278ad7e95SAndre Przywaragroups = gic 14378ad7e95SAndre Przywara 14478ad7e95SAndre Przywara[gicv2-mmio-3p] 14578ad7e95SAndre Przywarafile = gic.flat 14678ad7e95SAndre Przywarasmp = $((($MAX_SMP < 3)?$MAX_SMP:3)) 14778ad7e95SAndre Przywaraextra_params = -machine gic-version=2 -append 'mmio' 14878ad7e95SAndre Przywaragroups = gic 14978ad7e95SAndre Przywara 1502e2d471dSAndrew Jones[gicv3-ipi] 1512e2d471dSAndrew Jonesfile = gic.flat 1522e2d471dSAndrew Jonessmp = $MAX_SMP 1532e2d471dSAndrew Jonesextra_params = -machine gic-version=3 -append 'ipi' 1542e2d471dSAndrew Jonesgroups = gic 155bec58c1cSLevente Kurusa 156c152d8bcSChristoffer Dall[gicv2-active] 157c152d8bcSChristoffer Dallfile = gic.flat 158c152d8bcSChristoffer Dallsmp = $((($MAX_SMP < 8)?$MAX_SMP:8)) 159c152d8bcSChristoffer Dallextra_params = -machine gic-version=2 -append 'active' 160c152d8bcSChristoffer Dallgroups = gic 161c152d8bcSChristoffer Dall 162c152d8bcSChristoffer Dall[gicv3-active] 163c152d8bcSChristoffer Dallfile = gic.flat 164c152d8bcSChristoffer Dallsmp = $MAX_SMP 165c152d8bcSChristoffer Dallextra_params = -machine gic-version=3 -append 'active' 166c152d8bcSChristoffer Dallgroups = gic 167c152d8bcSChristoffer Dall 168bec58c1cSLevente Kurusa# Test PSCI emulation 169bec58c1cSLevente Kurusa[psci] 170bec58c1cSLevente Kurusafile = psci.flat 171bec58c1cSLevente Kurusasmp = $MAX_SMP 172f082e37fSAndrew Jonesgroups = psci 173f2f220deSAlexander Graf 174f2f220deSAlexander Graf# Timer tests 1759e5e817bSAndrew Jones[timer] 176f2f220deSAlexander Graffile = timer.flat 177f2f220deSAlexander Grafgroups = timer 17824dd2adaSAlexandru Eliseitimeout = 10s 1795d9e5a90SAndrew Jonesarch = arm64 180090e1532SShih-Wei Li 181090e1532SShih-Wei Li# Exit tests 182090e1532SShih-Wei Li[micro-bench] 183090e1532SShih-Wei Lifile = micro-bench.flat 184090e1532SShih-Wei Lismp = 2 185090e1532SShih-Wei Ligroups = nodefault,micro-bench 186090e1532SShih-Wei Liaccel = kvm 187090e1532SShih-Wei Liarch = arm64 1882861c740SAlexandru Elisei 1892861c740SAlexandru Elisei# Cache emulation tests 1902861c740SAlexandru Elisei[cache] 1912861c740SAlexandru Eliseifile = cache.flat 1922861c740SAlexandru Eliseiarch = arm64 1932861c740SAlexandru Eliseigroups = cache 194