Skip to contentSkip to conversation

Add OBJCOPY to kvm-userspace/user/configure output

PATCH Applied Christian Ehrhardt 2 participants 4 messages Jan 9, 2008 2 messages not in the archive KVM

lore
Share & tools
lore
#0 lore raw

PATCH 1/3 Add OBJCOPY to kvm-userspace/user/configure output

Subject: [PATCH 1/3] Add OBJCOPY to kvm-userspace/user/configure output
From: Hollis Blanchard <hollisb-r/[email protected]>
From: Christian Ehrhardt <[email protected]>

Adds objectcopy to the configure script because it is needed for some kvmctl implementations for a simple binary loader.

---

1 file changed, 2 insertions(+)

user/configure | 2 ++

user/configure +2 -0
diff -r deef85d890df user/configure
@@ -4,6 +4,7 @@ kerneldir=/lib/modules/$(uname -r)/build
 kerneldir=/lib/modules/$(uname -r)/build
 cc=gcc
 ld=ld
+objcopy=objcopy
 arch=`uname -m | sed -e s/i.86/i386/`
 cross_prefix=
 
@@ -63,4 +64,5 @@ ARCH=$arch
 ARCH=$arch
 CC=$cross_prefix$cc
 LD=$cross_prefix$ld
+OBJCOPY=$cross_prefix$objcopy
 EOF

-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace

A message that is not in the archive (sent off-list or not yet received): 1199891476938-git-send-email-ehrhardt-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org

#2 lore raw

PATCH 2/3 Add PowerPC kvmctl harness and fix building the testcases

Subject: [PATCH 2/3] Add PowerPC kvmctl harness and fix building the testcases
From: Hollis Blanchard <hollisb-r/[email protected]>
From: Christian Ehrhardt <[email protected]>

These patches get the kvm-userspace/user/ test harness building and somewhat working for PowerPC. For the moment it's just a simply binary loader (hence the need for objcopy), but in the future it should be easy to add an ELF or even uImage loader.
This patch version removed x86 pio,io_table,misc_io code and some unused defines according to avi's comments.

---
 b/user/main-ppc.c       |  355 ++++++++++++++++++++++++++++++++++++++++++++++++
 user/config-powerpc.mak |   30 ++--
 2 files changed, 376 insertions(+), 9 deletions(-)
user/config-powerpc.mak +21 -9
diff -r f5bbfeaedb2c user/config-powerpc.mak
@@ -1,14 +1,26 @@ TEST_DIR=test/powerpc
-TEST_DIR=test/powerpc
 CFLAGS += -m32
 CFLAGS += -D__powerpc__
 CFLAGS += -I $(KERNELDIR)/include
+# for some reaons binutils hates tlbsx unless we say we're 405  :( 
+CFLAGS += -Wa,-mregnames,-m405
 
-tests= $(TEST_DIR)/io.S \
-	$(TEST_DIR)/spin.S \
-	$(TEST_DIR)/sprg.S \
-	$(TEST_DIR)/44x/tlbsx.S \
-	$(TEST_DIR)/44x/tlbwe_16KB.S \
-	$(TEST_DIR)/44x/tlbwe_hole.S \
-	$(TEST_DIR)/44x/tlbwe.S
+%.bin: %.o
+	$(OBJCOPY) -O binary $^ $@
 
-kvmctl_objs = main.o ../libkvm/libkvm.a
+testobjs := \
+	io.bin \
+	spin.bin \
+	sprg.bin \
+	44x/tlbsx.bin \
+	44x/tlbwe_16KB.bin \
+	44x/tlbwe_hole.bin \
+	44x/tlbwe.bin
+
+tests := $(addprefix test/powerpc/, $(testobjs))
+
+all: kvmctl $(tests)
+
+kvmctl_objs = main-ppc.o ../libkvm/libkvm.a
+
+arch_clean:
+	rm -f $(tests)
user/main-ppc.c new file +315 -0

315 lines not on this page · raw message

-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace

#3 lore raw

PATCH 3/3 Add dcr read/write to the PowerPC kvmctl implementation

In reply to a message not in the archive

Subject: [PATCH 3/3] Add dcr read/write to the PowerPC kvmctl implementation
From: Christian Ehrhardt <[email protected]>

Adds simple functions to catch dcr access while executing testcases printing information about that access when triggered.

---
 main-ppc.c |   15 +++++++++++++++
 1 files changed, 15 insertions(+)
user/main-ppc.c +15 -0
diff -r d19893c744fa user/main-ppc.c
@@ -146,6 +146,19 @@ static int test_mem_write(void *opaque, 
 	return 0;
 }
 
+static int test_dcr_read(kvm_context_t kvm, uint32_t dcrn, uint32_t *data)
+{
+	printf("%s: dcrn %04X\n", __func__, dcrn);
+	*data = 0;
+	return 0;
+}
+
+static int test_dcr_write(kvm_context_t kvm, uint32_t dcrn, uint32_t data)
+{
+	printf("%s: dcrn %04X data %04X\n", __func__, dcrn, data);
+	return 0;
+}
+
 static struct kvm_callbacks test_callbacks = {
 	.mmio_read   = test_mem_read,
 	.mmio_write  = test_mem_write,
@@ -155,6 +168,8 @@ static struct kvm_callbacks test_callbac
 	.try_push_interrupts = test_try_push_interrupts,
 	.post_kvm_run = test_post_kvm_run,
 	.pre_kvm_run = test_pre_kvm_run,
+	.powerpc_dcr_read = test_dcr_read,
+	.powerpc_dcr_write = test_dcr_write,
 };
 
 static unsigned long load_file(void *mem, const char *fname, int inval_icache)

-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace

A message that is not in the archive (sent off-list or not yet received): 1199891480765-git-send-email-ehrhardt-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org

Applied
#5 lore raw

Re: [PATCH 3/3] Add dcr read/write to the PowerPC kvmctl implementation

Quoted 7 lines · Christian Ehrhardt

Subject: [PATCH 3/3] Add dcr read/write to the PowerPC kvmctl implementation
From: Christian Ehrhardt <[email protected]>

Adds simple functions to catch dcr access while executing testcases printing information about that access when triggered.

Applied all, thanks.

Signature · 8 lines
error compiling committee.c: too many arguments to function


-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace