]> xenbits.xensource.com Git - mini-os.git/commitdiff
mini-os: add CONFIG_PARAVIRT
authorJuergen Gross <jgross@suse.com>
Thu, 18 Aug 2016 11:00:27 +0000 (13:00 +0200)
committerJuergen Gross <jgross@suse.com>
Wed, 24 Aug 2016 10:14:11 +0000 (12:14 +0200)
Add a new config macro CONFIG_PARAVIRT which defaults to be defined on
x86. This is the first step for supporting a HVMlite Mini-OS.

Doing this via CONFIG_PARAVIRT instead of something like CONFIG_HVMLITE
was chosen as the arm port can then drop some dummy routines needed for
para-virtualization only.

Add include/paravirt.h for future support of paravirt specific
handling.

Signed-off-by: Juergen Gross <jgross@suse.com>
Reviewed-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Config.mk
include/paravirt.h [new file with mode: 0644]

index 8ab1a7e88fd9af972efa8360a739e5d5fd4ab76e..aa367613c348b6f566af46074816070db617e614 100644 (file)
--- a/Config.mk
+++ b/Config.mk
@@ -153,6 +153,11 @@ LDFLAGS-$(clang) += -plugin LLVMgold.so
 endif
 
 # Configuration defaults
+ifeq ($(TARGET_ARCH_FAM),x86)
+CONFIG_PARAVIRT ?= y
+else
+CONFIG_PARAVIRT ?= n
+endif
 CONFIG_START_NETWORK ?= y
 CONFIG_SPARSE_BSS ?= y
 CONFIG_QEMU_XS_ARGS ?= n
@@ -172,6 +177,7 @@ CONFIG_LWIP ?= $(lwip)
 CONFIG_BALLOON ?= n
 
 # Export config items as compiler directives
+DEFINES-$(CONFIG_PARAVIRT) += -DCONFIG_PARAVIRT
 DEFINES-$(CONFIG_START_NETWORK) += -DCONFIG_START_NETWORK
 DEFINES-$(CONFIG_SPARSE_BSS) += -DCONFIG_SPARSE_BSS
 DEFINES-$(CONFIG_QEMU_XS_ARGS) += -DCONFIG_QEMU_XS_ARGS
diff --git a/include/paravirt.h b/include/paravirt.h
new file mode 100644 (file)
index 0000000..7852e16
--- /dev/null
@@ -0,0 +1,33 @@
+/* -*-  Mode:C; c-basic-offset:4; tab-width:4 -*-
+ *
+ * (C) 2016 - Juergen Gross, SUSE Linux GmbH
+ *
+ * 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 _PARAVIRT_H
+#define _PARAVIRT_H
+
+#if defined(CONFIG_PARAVIRT)
+
+#else
+
+#endif
+
+#endif /* _PARAVIRT_H */