Sparse tree for building drivers against unmodified Linux
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?)
Signed-off-by Xiaofeng Ling <[email protected]>
Signed-off-by Arun Sharma <[email protected]>
unmodified-sparse/balloon/Makefile +2 -0
@@ -0,0 +1,2 @@ + +obj-y += balloon.o
unmodified-sparse/blkfront/Kconfig +6 -0
@@ -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
@@ -0,0 +1,3 @@ + +obj-y := blkfront.o vbd.o +
unmodified-sparse/blktap/Makefile +3 -0
@@ -0,0 +1,3 @@ + +obj-y := blktap_userdev.o blktap_datapath.o blktap_controlmsg.o blktap.o +
unmodified-sparse/compile.sh +3 -0
@@ -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
@@ -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
@@ -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
@@ -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
@@ -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
@@ -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
@@ -0,0 +1,2 @@ + +obj-y := netfront.o
unmodified-sparse/TODO +5 -0
@@ -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
@@ -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)