summaryrefslogtreecommitdiffstats
path: root/qemu/tests/multiboot
diff options
context:
space:
mode:
Diffstat (limited to 'qemu/tests/multiboot')
-rw-r--r--qemu/tests/multiboot/Makefile21
-rw-r--r--qemu/tests/multiboot/libc.c151
-rw-r--r--qemu/tests/multiboot/libc.h62
-rw-r--r--qemu/tests/multiboot/link.ld19
-rw-r--r--qemu/tests/multiboot/mmap.c56
-rw-r--r--qemu/tests/multiboot/mmap.out92
-rw-r--r--qemu/tests/multiboot/module.txt1
-rw-r--r--qemu/tests/multiboot/modules.c55
-rw-r--r--qemu/tests/multiboot/modules.out38
-rw-r--r--qemu/tests/multiboot/multiboot.h66
-rwxr-xr-xqemu/tests/multiboot/run_test.sh88
-rw-r--r--qemu/tests/multiboot/start.S51
12 files changed, 0 insertions, 700 deletions
diff --git a/qemu/tests/multiboot/Makefile b/qemu/tests/multiboot/Makefile
deleted file mode 100644
index 36f01dc64..000000000
--- a/qemu/tests/multiboot/Makefile
+++ /dev/null
@@ -1,21 +0,0 @@
-CC=gcc
-CCFLAGS=-m32 -Wall -Wextra -Werror -fno-stack-protector -nostdinc -fno-builtin
-ASFLAGS=-m32
-
-LD=ld
-LDFLAGS=-melf_i386 -T link.ld
-LIBS=$(shell $(CC) $(CCFLAGS) -print-libgcc-file-name)
-
-all: mmap.elf modules.elf
-
-mmap.elf: start.o mmap.o libc.o
- $(LD) $(LDFLAGS) -o $@ $^ $(LIBS)
-
-modules.elf: start.o modules.o libc.o
- $(LD) $(LDFLAGS) -o $@ $^ $(LIBS)
-
-%.o: %.c
- $(CC) $(CCFLAGS) -c -o $@ $^
-
-%.o: %.S
- $(CC) $(ASFLAGS) -c -o $@ $^
diff --git a/qemu/tests/multiboot/libc.c b/qemu/tests/multiboot/libc.c
deleted file mode 100644
index 6df9bda96..000000000
--- a/qemu/tests/multiboot/libc.c
+++ /dev/null
@@ -1,151 +0,0 @@
-/*
- * Copyright (c) 2013 Kevin Wolf <kwolf@redhat.com>
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
-
-#include "libc.h"
-
-void* memcpy(void *dest, const void *src, int n)
-{
- char *d = dest;
- const char *s = src;
-
- while (n--) {
- *d++ = *s++;
- }
-
- return dest;
-}
-
-static void print_char(char c)
-{
- outb(0xe9, c);
-}
-
-static void print_str(char *s)
-{
- while (*s) {
- print_char(*s++);
- }
-}
-
-static void print_num(uint64_t value, int base)
-{
- char digits[] = "0123456789abcdef";
- char buf[32] = { 0 };
- int i = sizeof(buf) - 2;
-
- do {
- buf[i--] = digits[value % base];
- value /= base;
- } while (value);
-
- print_str(&buf[i + 1]);
-}
-
-void printf(const char *fmt, ...)
-{
- va_list ap;
- uint64_t val;
- char *str;
- int base;
- int has_long;
- int alt_form;
-
- va_start(ap, fmt);
-
- for (; *fmt; fmt++) {
- if (*fmt != '%') {
- print_char(*fmt);
- continue;
- }
- fmt++;
-
- if (*fmt == '#') {
- fmt++;
- alt_form = 1;
- } else {
- alt_form = 0;
- }
-
- if (*fmt == 'l') {
- fmt++;
- if (*fmt == 'l') {
- fmt++;
- has_long = 2;
- } else {
- has_long = 1;
- }
- } else {
- has_long = 0;
- }
-
- switch (*fmt) {
- case 'x':
- case 'p':
- base = 16;
- goto convert_number;
- case 'd':
- case 'i':
- case 'u':
- base = 10;
- goto convert_number;
- case 'o':
- base = 8;
- goto convert_number;
-
- convert_number:
- switch (has_long) {
- case 0:
- val = va_arg(ap, unsigned int);
- break;
- case 1:
- val = va_arg(ap, unsigned long);
- break;
- case 2:
- val = va_arg(ap, unsigned long long);
- break;
- }
-
- if (alt_form && base == 16) {
- print_str("0x");
- }
-
- print_num(val, base);
- break;
-
- case 's':
- str = va_arg(ap, char*);
- print_str(str);
- break;
- case '%':
- print_char(*fmt);
- break;
- default:
- print_char('%');
- print_char(*fmt);
- break;
- }
- }
-
- va_end(ap);
-}
-
-
diff --git a/qemu/tests/multiboot/libc.h b/qemu/tests/multiboot/libc.h
deleted file mode 100644
index 04c9922c2..000000000
--- a/qemu/tests/multiboot/libc.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Copyright (c) 2013 Kevin Wolf <kwolf@redhat.com>
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
-
-#ifndef LIBC_H
-#define LIBC_H
-
-/* Integer types */
-
-typedef unsigned long long uint64_t;
-typedef unsigned int uint32_t;
-typedef unsigned short uint16_t;
-typedef unsigned char uint8_t;
-
-typedef signed long long int64_t;
-typedef signed int int32_t;
-typedef signed short int16_t;
-typedef signed char int8_t;
-
-typedef uint32_t uintptr_t;
-
-
-/* stdarg.h */
-
-typedef __builtin_va_list va_list;
-#define va_start(ap, X) __builtin_va_start(ap, X)
-#define va_arg(ap, type) __builtin_va_arg(ap, type)
-#define va_end(ap) __builtin_va_end(ap)
-
-
-/* Port I/O functions */
-
-static inline void outb(uint16_t port, uint8_t data)
-{
- asm volatile ("outb %0, %1" : : "a" (data), "Nd" (port));
-}
-
-
-/* Misc functions */
-
-void printf(const char *fmt, ...);
-void* memcpy(void *dest, const void *src, int n);
-
-#endif
diff --git a/qemu/tests/multiboot/link.ld b/qemu/tests/multiboot/link.ld
deleted file mode 100644
index 3d49b58c6..000000000
--- a/qemu/tests/multiboot/link.ld
+++ /dev/null
@@ -1,19 +0,0 @@
-ENTRY(_start)
-
-SECTIONS
-{
- . = 0x100000;
- .text : {
- *(multiboot)
- *(.text)
- }
- .data ALIGN(4096) : {
- *(.data)
- }
- .rodata ALIGN(4096) : {
- *(.rodata)
- }
- .bss ALIGN(4096) : {
- *(.bss)
- }
-}
diff --git a/qemu/tests/multiboot/mmap.c b/qemu/tests/multiboot/mmap.c
deleted file mode 100644
index 766b003f3..000000000
--- a/qemu/tests/multiboot/mmap.c
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * Copyright (c) 2013 Kevin Wolf <kwolf@redhat.com>
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
-
-#include "libc.h"
-#include "multiboot.h"
-
-int test_main(uint32_t magic, struct mb_info *mbi)
-{
- uintptr_t entry_addr;
- struct mb_mmap_entry *entry;
-
- (void) magic;
-
- printf("Lower memory: %dk\n", mbi->mem_lower);
- printf("Upper memory: %dk\n", mbi->mem_upper);
-
- printf("\ne820 memory map:\n");
-
- for (entry_addr = mbi->mmap_addr;
- entry_addr < mbi->mmap_addr + mbi->mmap_length;
- entry_addr += entry->size + 4)
- {
- entry = (struct mb_mmap_entry*) entry_addr;
-
- printf("%#llx - %#llx: type %d [entry size: %d]\n",
- entry->base_addr,
- entry->base_addr + entry->length,
- entry->type,
- entry->size);
- }
-
- printf("\nmmap start: %#x\n", mbi->mmap_addr);
- printf("mmap end: %#x\n", mbi->mmap_addr + mbi->mmap_length);
- printf("real mmap end: %#x\n", entry_addr);
-
- return 0;
-}
diff --git a/qemu/tests/multiboot/mmap.out b/qemu/tests/multiboot/mmap.out
deleted file mode 100644
index 003e109b4..000000000
--- a/qemu/tests/multiboot/mmap.out
+++ /dev/null
@@ -1,92 +0,0 @@
-
-
-
-=== Running test case: mmap.elf ===
-
-Lower memory: 639k
-Upper memory: 129920k
-
-e820 memory map:
-0x0 - 0x9fc00: type 1 [entry size: 20]
-0x9fc00 - 0xa0000: type 2 [entry size: 20]
-0xf0000 - 0x100000: type 2 [entry size: 20]
-0x100000 - 0x7fe0000: type 1 [entry size: 20]
-0x7fe0000 - 0x8000000: type 2 [entry size: 20]
-0xfffc0000 - 0x100000000: type 2 [entry size: 20]
-
-mmap start: 0x9000
-mmap end: 0x9090
-real mmap end: 0x9090
-
-
-=== Running test case: mmap.elf -m 1.1M ===
-
-Lower memory: 639k
-Upper memory: 104k
-
-e820 memory map:
-0x0 - 0x9fc00: type 1 [entry size: 20]
-0x9fc00 - 0xa0000: type 2 [entry size: 20]
-0xf0000 - 0x100000: type 2 [entry size: 20]
-0x100000 - 0x11a000: type 1 [entry size: 20]
-0xfffc0000 - 0x100000000: type 2 [entry size: 20]
-
-mmap start: 0x9000
-mmap end: 0x9078
-real mmap end: 0x9078
-
-
-=== Running test case: mmap.elf -m 2G ===
-
-Lower memory: 639k
-Upper memory: 2096000k
-
-e820 memory map:
-0x0 - 0x9fc00: type 1 [entry size: 20]
-0x9fc00 - 0xa0000: type 2 [entry size: 20]
-0xf0000 - 0x100000: type 2 [entry size: 20]
-0x100000 - 0x7ffe0000: type 1 [entry size: 20]
-0x7ffe0000 - 0x80000000: type 2 [entry size: 20]
-0xfffc0000 - 0x100000000: type 2 [entry size: 20]
-
-mmap start: 0x9000
-mmap end: 0x9090
-real mmap end: 0x9090
-
-
-=== Running test case: mmap.elf -m 4G ===
-
-Lower memory: 639k
-Upper memory: 3144576k
-
-e820 memory map:
-0x0 - 0x9fc00: type 1 [entry size: 20]
-0x9fc00 - 0xa0000: type 2 [entry size: 20]
-0xf0000 - 0x100000: type 2 [entry size: 20]
-0x100000 - 0xbffe0000: type 1 [entry size: 20]
-0xbffe0000 - 0xc0000000: type 2 [entry size: 20]
-0xfffc0000 - 0x100000000: type 2 [entry size: 20]
-0x100000000 - 0x140000000: type 1 [entry size: 20]
-
-mmap start: 0x9000
-mmap end: 0x90a8
-real mmap end: 0x90a8
-
-
-=== Running test case: mmap.elf -m 8G ===
-
-Lower memory: 639k
-Upper memory: 3144576k
-
-e820 memory map:
-0x0 - 0x9fc00: type 1 [entry size: 20]
-0x9fc00 - 0xa0000: type 2 [entry size: 20]
-0xf0000 - 0x100000: type 2 [entry size: 20]
-0x100000 - 0xbffe0000: type 1 [entry size: 20]
-0xbffe0000 - 0xc0000000: type 2 [entry size: 20]
-0xfffc0000 - 0x100000000: type 2 [entry size: 20]
-0x100000000 - 0x240000000: type 1 [entry size: 20]
-
-mmap start: 0x9000
-mmap end: 0x90a8
-real mmap end: 0x90a8
diff --git a/qemu/tests/multiboot/module.txt b/qemu/tests/multiboot/module.txt
deleted file mode 100644
index 54c1d2798..000000000
--- a/qemu/tests/multiboot/module.txt
+++ /dev/null
@@ -1 +0,0 @@
-This is a test file that is used as a multiboot module.
diff --git a/qemu/tests/multiboot/modules.c b/qemu/tests/multiboot/modules.c
deleted file mode 100644
index 531601fb3..000000000
--- a/qemu/tests/multiboot/modules.c
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- * Copyright (c) 2015 Kevin Wolf <kwolf@redhat.com>
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
-
-#include "libc.h"
-#include "multiboot.h"
-
-int test_main(uint32_t magic, struct mb_info *mbi)
-{
- struct mb_module *mod;
- unsigned int i;
-
- (void) magic;
-
- printf("Module list with %d entries at %x\n",
- mbi->mods_count, mbi->mods_addr);
-
- for (i = 0, mod = (struct mb_module*) mbi->mods_addr;
- i < mbi->mods_count;
- i++, mod++)
- {
- char buf[1024];
- unsigned int size = mod->mod_end - mod->mod_start;
-
- printf("[%p] Module: %x - %x (%d bytes) '%s'\n",
- mod, mod->mod_start, mod->mod_end, size, mod->string);
-
- /* Print test file, but remove the newline at the end */
- if (size < sizeof(buf)) {
- memcpy(buf, (void*) mod->mod_start, size);
- buf[size - 1] = '\0';
- printf(" Content: '%s'\n", buf);
- }
- }
-
- return 0;
-}
diff --git a/qemu/tests/multiboot/modules.out b/qemu/tests/multiboot/modules.out
deleted file mode 100644
index 163670803..000000000
--- a/qemu/tests/multiboot/modules.out
+++ /dev/null
@@ -1,38 +0,0 @@
-
-
-
-=== Running test case: modules.elf ===
-
-Module list with 0 entries at 102000
-
-
-=== Running test case: modules.elf -initrd module.txt ===
-
-Module list with 1 entries at 102000
-[102000] Module: 103000 - 103038 (56 bytes) 'module.txt'
- Content: 'This is a test file that is used as a multiboot module.'
-
-
-=== Running test case: modules.elf -initrd module.txt argument ===
-
-Module list with 1 entries at 102000
-[102000] Module: 103000 - 103038 (56 bytes) 'module.txt argument'
- Content: 'This is a test file that is used as a multiboot module.'
-
-
-=== Running test case: modules.elf -initrd module.txt argument,,with,,commas ===
-
-Module list with 1 entries at 102000
-[102000] Module: 103000 - 103038 (56 bytes) 'module.txt argument,with,commas'
- Content: 'This is a test file that is used as a multiboot module.'
-
-
-=== Running test case: modules.elf -initrd module.txt,module.txt argument,module.txt ===
-
-Module list with 3 entries at 102000
-[102000] Module: 103000 - 103038 (56 bytes) 'module.txt'
- Content: 'This is a test file that is used as a multiboot module.'
-[102010] Module: 104000 - 104038 (56 bytes) 'module.txt argument'
- Content: 'This is a test file that is used as a multiboot module.'
-[102020] Module: 105000 - 105038 (56 bytes) 'module.txt'
- Content: 'This is a test file that is used as a multiboot module.'
diff --git a/qemu/tests/multiboot/multiboot.h b/qemu/tests/multiboot/multiboot.h
deleted file mode 100644
index 4eb1fbe5d..000000000
--- a/qemu/tests/multiboot/multiboot.h
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * Copyright (c) 2013 Kevin Wolf <kwolf@redhat.com>
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
-
-#ifndef MULTIBOOT_H
-#define MULTIBOOT_H
-
-#include "libc.h"
-
-struct mb_info {
- uint32_t flags;
- uint32_t mem_lower;
- uint32_t mem_upper;
- uint32_t boot_device;
- uint32_t cmdline;
- uint32_t mods_count;
- uint32_t mods_addr;
- char syms[16];
- uint32_t mmap_length;
- uint32_t mmap_addr;
- uint32_t drives_length;
- uint32_t drives_addr;
- uint32_t config_table;
- uint32_t boot_loader_name;
- uint32_t apm_table;
- uint32_t vbe_control_info;
- uint32_t vbe_mode_info;
- uint16_t vbe_mode;
- uint16_t vbe_interface_seg;
- uint16_t vbe_interface_off;
- uint16_t vbe_interface_len;
-} __attribute__((packed));
-
-struct mb_module {
- uint32_t mod_start;
- uint32_t mod_end;
- uint32_t string;
- uint32_t reserved;
-} __attribute__((packed));
-
-struct mb_mmap_entry {
- uint32_t size;
- uint64_t base_addr;
- uint64_t length;
- uint32_t type;
-} __attribute__((packed));
-
-#endif
diff --git a/qemu/tests/multiboot/run_test.sh b/qemu/tests/multiboot/run_test.sh
deleted file mode 100755
index 78d7edfc3..000000000
--- a/qemu/tests/multiboot/run_test.sh
+++ /dev/null
@@ -1,88 +0,0 @@
-#!/bin/bash
-
-# Copyright (c) 2013 Kevin Wolf <kwolf@redhat.com>
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
-# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-# THE SOFTWARE.
-
-QEMU=${QEMU:-"../../x86_64-softmmu/qemu-system-x86_64"}
-
-run_qemu() {
- local kernel=$1
- shift
-
- echo -e "\n\n=== Running test case: $kernel $@ ===\n" >> test.log
-
- $QEMU \
- -kernel $kernel \
- -display none \
- -device isa-debugcon,chardev=stdio \
- -chardev file,path=test.out,id=stdio \
- -device isa-debug-exit,iobase=0xf4,iosize=0x4 \
- "$@"
- ret=$?
-
- cat test.out >> test.log
-}
-
-mmap() {
- run_qemu mmap.elf
- run_qemu mmap.elf -m 1.1M
- run_qemu mmap.elf -m 2G
- run_qemu mmap.elf -m 4G
- run_qemu mmap.elf -m 8G
-}
-
-modules() {
- run_qemu modules.elf
- run_qemu modules.elf -initrd module.txt
- run_qemu modules.elf -initrd "module.txt argument"
- run_qemu modules.elf -initrd "module.txt argument,,with,,commas"
- run_qemu modules.elf -initrd "module.txt,module.txt argument,module.txt"
-}
-
-make all
-
-for t in mmap modules; do
-
- echo > test.log
- $t
-
- debugexit=$((ret & 0x1))
- ret=$((ret >> 1))
- pass=1
-
- if [ $debugexit != 1 ]; then
- echo -e "\e[31m ?? \e[0m $t (no debugexit used, exit code $ret)"
- pass=0
- elif [ $ret != 0 ]; then
- echo -e "\e[31mFAIL\e[0m $t (exit code $ret)"
- pass=0
- fi
-
- if ! diff $t.out test.log > /dev/null 2>&1; then
- echo -e "\e[31mFAIL\e[0m $t (output difference)"
- diff -u $t.out test.log
- pass=0
- fi
-
- if [ $pass == 1 ]; then
- echo -e "\e[32mPASS\e[0m $t"
- fi
-
-done
diff --git a/qemu/tests/multiboot/start.S b/qemu/tests/multiboot/start.S
deleted file mode 100644
index 7d3395965..000000000
--- a/qemu/tests/multiboot/start.S
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * Copyright (c) 2013 Kevin Wolf <kwolf@redhat.com>
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
-
-.section multiboot
-
-#define MB_MAGIC 0x1badb002
-#define MB_FLAGS 0x0
-#define MB_CHECKSUM -(MB_MAGIC + MB_FLAGS)
-
-.align 4
-.int MB_MAGIC
-.int MB_FLAGS
-.int MB_CHECKSUM
-
-.section .text
-.global _start
-_start:
- mov $stack, %esp
- push %ebx
- push %eax
- call test_main
-
- /* Test device exit */
- outl %eax, $0xf4
-
- cli
- hlt
- jmp .
-
-.section bss
-.space 8192
-stack: