Skip to contentSkip to conversation

Sparse tree for building drivers against unmodified Linux

PATCH New Arun Sharma 1 participant 1 message Aug 11, 2005

lore
Share & tools
lore
#0 lore raw

PATCH 2/2 Sparse tree for building drivers against unmodified Linux

[ This is for community feedback, the patch is not ready yet ]

Sparse tree for building drivers against unmodified Linux

evtchn.c is derived from the ia64 version (Matt Chapman?)

unmodified-sparse/balloon/Makefile +2 -0
@@ -0,0 +1,2 @@
+
+obj-y += balloon.o
unmodified-sparse/blkfront/Kconfig +6 -0
diff -x'include*' -urN b/unmodified-sparse/blkfront/Kconfig xen-vbd-testing.hg/unmodified-sparse/blkfront/Kconfig
@@ -0,0 +1,6 @@
+
+config XENBLOCK
+	tristate "Block device driver"
+	depends on ARCH_XEN
+	help
+	  Block device driver for Xen
unmodified-sparse/blkfront/Makefile +3 -0
diff -x'include*' -urN b/unmodified-sparse/blkfront/Makefile xen-vbd-testing.hg/unmodified-sparse/blkfront/Makefile
@@ -0,0 +1,3 @@
+
+obj-y	:= blkfront.o vbd.o
+
unmodified-sparse/blktap/Makefile +3 -0
diff -x'include*' -urN b/unmodified-sparse/blktap/Makefile xen-vbd-testing.hg/unmodified-sparse/blktap/Makefile
@@ -0,0 +1,3 @@
+
+obj-y	:= blktap_userdev.o blktap_datapath.o blktap_controlmsg.o blktap.o 
+
unmodified-sparse/compile.sh +3 -0
diff -x'include*' -urN b/unmodified-sparse/compile.sh xen-vbd-testing.hg/unmodified-sparse/compile.sh
@@ -0,0 +1,3 @@
+./mkbuildtree
+make -C `pwd`/../pristine-linux-2.6.12 M=$PWD V=1 $*
+
unmodified-sparse/evtchn-pci/evtchn.c +106 -0

106 lines not on this page · raw message

unmodified-sparse/evtchn-pci/evtchn-pci.c +257 -0

257 lines not on this page · raw message

unmodified-sparse/evtchn-pci/Makefile +7 -0
diff -x'include*' -urN b/unmodified-sparse/evtchn-pci/Makefile xen-vbd-testing.hg/unmodified-sparse/evtchn-pci/Makefile
@@ -0,0 +1,7 @@
+EXTRA_CFLAGS += -I$(PWD)/../include -DCONFIG_VMX -DCONFIG_VMX_GUEST
+EVTCHN=xevtchn
+
+obj-y	+= $(EVTCHN).o
+
+$(EVTCHN)-objs := ctrl_if.o gnttab.o xen_proc.o evtchn.o evtchn-pci.o
+
unmodified-sparse/evtchn-pci/vmx-config.h +11 -0
diff -x'include*' -urN b/unmodified-sparse/evtchn-pci/vmx-config.h xen-vbd-testing.hg/unmodified-sparse/evtchn-pci/vmx-config.h
@@ -0,0 +1,11 @@
+#ifndef _VMX_CONFIG_H_
+#define _VMX_CONFIG_H_
+
+#define CONFIG_XEN_SHADOW_MODE
+#define CONFIG_XEN_BLKDEV_GRANT
+#define CONFIG_XEN_NETDEV_GRANT
+#define CONFIG_XEN_NETDEV_GRANT_RX
+#define CONFIG_XEN_NETDEV_GRANT_TX
+#define XEN_EVTCHN_MASK_OPS
+
+#endif /* _VMX_CONFIG_H_ */
unmodified-sparse/evtchn-pci/vmx-support.c +148 -0

148 lines not on this page · raw message

unmodified-sparse/evtchn-pci/vmx-support.h +78 -0

78 lines not on this page · raw message

unmodified-sparse/Makefile +10 -0
diff -x'include*' -urN b/unmodified-sparse/Makefile xen-vbd-testing.hg/unmodified-sparse/Makefile
@@ -0,0 +1,10 @@
+CONFIG_XEN_EVTCHN_PCI           = m
+CONFIG_XEN_BLKDEV_FRONTEND	= m
+CONFIG_XEN_NETDEV_FRONTEND	= m
+
+obj-$(CONFIG_XEN_EVTCHN_PCI)	        += evtchn-pci/
+obj-$(CONFIG_XEN_BLKDEV_FRONTEND)	+= blkfront/
+obj-$(CONFIG_XEN_NETDEV_FRONTEND)	+= netfront/
+obj-m                                   += xenbus/
+
+CFLAGS  += -I$(M)/include -I$(M)/evtchn-pci
unmodified-sparse/mkbuildtree +24 -0
diff -x'include*' -urN b/unmodified-sparse/mkbuildtree xen-vbd-testing.hg/unmodified-sparse/mkbuildtree
@@ -0,0 +1,24 @@
+C=$PWD
+if [ ! -d include ];then
+	mkdir include
+fi
+cd include
+ln -sf ../../xen/include/public xen-public
+ln -sf ../../linux-2.6-xen-sparse/include/asm-xen asm-xen
+ln -sf asm-xen/asm-i386 asm-xen/asm
+ln -sf asm-xen/asm-i386 asm-i386
+ln -sf asm-xen/asm asm
+cd asm-xen
+ln -sf asm-i386 asm
+cd $C
+
+for d in $(find $C/../linux-2.6-xen-sparse/drivers/xen/ -type d -maxdepth 1 | sed -e 1d); do
+    if ! echo $d | egrep -q back\|evtchn; then
+        lndir $d $(basename $d) > /dev/null 2>&1
+    fi
+done
+
+ln -sf $C/../linux-2.6-xen-sparse/arch/xen/kernel/ctrl_if.c evtchn-pci
+ln -sf $C/../linux-2.6-xen-sparse/arch/xen/kernel/gnttab.c evtchn-pci
+ln -sf $C/../linux-2.6-xen-sparse/arch/xen/kernel/xen_proc.c evtchn-pci
+
unmodified-sparse/netfront/Kconfig +6 -0
diff -x'include*' -urN b/unmodified-sparse/netfront/Kconfig xen-vbd-testing.hg/unmodified-sparse/netfront/Kconfig
@@ -0,0 +1,6 @@
+
+config XENNET
+	tristate "Xen network driver"
+	depends on NETDEVICES && ARCH_XEN
+	help
+	  Network driver for Xen
unmodified-sparse/netfront/Makefile +2 -0
diff -x'include*' -urN b/unmodified-sparse/netfront/Makefile xen-vbd-testing.hg/unmodified-sparse/netfront/Makefile
@@ -0,0 +1,2 @@
+
+obj-y	:= netfront.o
unmodified-sparse/TODO +5 -0
diff -x'include*' -urN b/unmodified-sparse/TODO xen-vbd-testing.hg/unmodified-sparse/TODO
@@ -0,0 +1,5 @@
+- Fix XXX in vmx-support.h
+- Fix warnings in evtch-pci.c
+- How do we support changing phys->mach mapping in VMX domains?
+        - This code has been ifdef'ed out of netfront.c
+        - hypercall?
unmodified-sparse/xenbus/Makefile +10 -0
diff -x'include*' -urN b/unmodified-sparse/xenbus/Makefile xen-vbd-testing.hg/unmodified-sparse/xenbus/Makefile
@@ -0,0 +1,10 @@
+obj-y	+= xenbus.o
+
+xenbus-objs =
+xenbus-objs += xenbus_comms.o
+xenbus-objs += xenbus_xs.o
+xenbus-objs += xenbus_probe.o 
+
+XEN_TOOLS_DIR := "../tools"
+vpath %.h $(XEN_TOOLS_DIR)
+EXTRA_CFLAGS += -I $(XEN_TOOLS_DIR)