c4604bcaba3edf141752bd08775e1c02189a875e
[openwrt/svn-archive/archive.git] / package / kernel / modules / virtual.mk
1 #
2 # Copyright (C) 2010 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 VIRTUAL_MENU:=Virtualization Support
9
10
11 define KernelPackage/virtio-balloon
12 SUBMENU:=$(VIRTUAL_MENU)
13 TITLE:=VirtIO balloon driver
14 DEPENDS:=@TARGET_x86_kvm_guest
15 KCONFIG:=CONFIG_VIRTIO_BALLOON
16 FILES:=$(LINUX_DIR)/drivers/virtio/virtio_balloon.$(LINUX_KMOD_SUFFIX)
17 AUTOLOAD:=$(call AutoLoad,06,virtio-balloon)
18 endef
19
20 define KernelPackage/virtio-balloon/description
21 Kernel module for VirtIO memory ballooning support
22 endef
23
24 $(eval $(call KernelPackage,virtio-balloon))
25
26
27 define KernelPackage/virtio-net
28 SUBMENU:=$(VIRTUAL_MENU)
29 TITLE:=VirtIO network driver
30 DEPENDS:=@TARGET_x86_kvm_guest
31 KCONFIG:=CONFIG_VIRTIO_NET
32 FILES:=$(LINUX_DIR)/drivers/net/virtio_net.$(LINUX_KMOD_SUFFIX)
33 AUTOLOAD:=$(call AutoLoad,50,virtio_net)
34 endef
35
36 define KernelPackage/virtio-net/description
37 Kernel module for the VirtIO paravirtualized network device
38 endef
39
40 $(eval $(call KernelPackage,virtio-net))
41
42
43 define KernelPackage/virtio-random
44 SUBMENU:=$(VIRTUAL_MENU)
45 TITLE:=VirtIO Random Number Generator support
46 DEPENDS:=@TARGET_x86_kvm_guest
47 KCONFIG:=CONFIG_HW_RANDOM_VIRTIO
48 FILES:=$(LINUX_DIR)/drivers/char/hw_random/virtio-rng.$(LINUX_KMOD_SUFFIX)
49 AUTOLOAD:=$(call AutoLoad,09,virtio-rng)
50 endef
51
52 define KernelPackage/virtio-random/description
53 Kernel module for the VirtIO Random Number Generator
54 endef
55
56 $(eval $(call KernelPackage,virtio-random))
57
58 define KernelPackage/xen-fs
59 SUBMENU:=$(VIRTUAL_MENU)
60 TITLE:=Xen filesystem
61 DEPENDS:=@TARGET_x86_xen_domu
62 KCONFIG:= \
63 CONFIG_XENFS \
64 CONFIG_XEN_COMPAT_XENFS=y
65 FILES:=$(LINUX_DIR)/drivers/xen/xenfs/xenfs.ko
66 AUTOLOAD:=$(call AutoLoad,05,xenfs)
67 endef
68
69 define KernelPackage/xen-fs/description
70 Kernel module for the Xen filesystem
71 endef
72
73 $(eval $(call KernelPackage,xen-fs))
74
75
76 define KernelPackage/xen-evtchn
77 SUBMENU:=$(VIRTUAL_MENU)
78 TITLE:=Xen event channels
79 DEPENDS:=@TARGET_x86_xen_domu
80 KCONFIG:=CONFIG_XEN_DEV_EVTCHN
81 ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.37)),1)
82 FILES:=$(LINUX_DIR)/drivers/xen/xen-evtchn.ko
83 AUTOLOAD:=$(call AutoLoad,06,xen-evtchn)
84 else
85 FILES:=$(LINUX_DIR)/drivers/xen/evtchn.ko
86 AUTOLOAD:=$(call AutoLoad,06,evtchn)
87 endif
88 endef
89
90 define KernelPackage/xen-evtchn/description
91 Kernel module for the /dev/xen/evtchn device
92 endef
93
94 $(eval $(call KernelPackage,xen-evtchn))
95
96 # FIXME: the FB support should be moved to a separate kmod
97 define KernelPackage/xen-fbdev
98 SUBMENU:=$(VIRTUAL_MENU)
99 TITLE:=Xen virtual frame buffer
100 DEPENDS:=@TARGET_x86_xen_domu
101 KCONFIG:= \
102 CONFIG_XEN_FBDEV_FRONTEND \
103 CONFIG_FB \
104 CONFIG_FB_DEFERRED_IO=y \
105 CONFIG_FB_SYS_COPYAREA \
106 CONFIG_FB_SYS_FILLRECT \
107 CONFIG_FB_SYS_FOPS \
108 CONFIG_FB_SYS_IMAGEBLIT \
109 CONFIG_FIRMWARE_EDID=n
110 FILES:= \
111 $(LINUX_DIR)/drivers/video/xen-fbfront.ko \
112 $(LINUX_DIR)/drivers/video/fb.ko \
113 $(LINUX_DIR)/drivers/video/syscopyarea.ko \
114 $(LINUX_DIR)/drivers/video/sysfillrect.ko \
115 $(LINUX_DIR)/drivers/video/fb_sys_fops.ko \
116 $(LINUX_DIR)/drivers/video/sysimgblt.ko
117 AUTOLOAD:=$(call AutoLoad,07, \
118 fb \
119 syscopyarea \
120 sysfillrect \
121 fb_sys_fops \
122 sysimgblt \
123 xen-fbfront \
124 )
125 endef
126
127 define KernelPackage/xen-fbdev/description
128 Kernel module for the Xen virtual frame buffer
129 endef
130
131 $(eval $(call KernelPackage,xen-fbdev))
132
133
134 define KernelPackage/xen-kbddev
135 SUBMENU:=$(VIRTUAL_MENU)
136 TITLE:=Xen virtual keyboard and mouse
137 DEPENDS:=@TARGET_x86_xen_domu
138 KCONFIG:=CONFIG_XEN_KBDDEV_FRONTEND
139 FILES:=$(LINUX_DIR)/drivers/input/xen-kbdfront.ko
140 AUTOLOAD:=$(call AutoLoad,08,xen-kbdfront)
141 endef
142
143 define KernelPackage/xen-kbddev/description
144 Kernel module for the Xen virtual keyboard and mouse
145 endef
146
147 $(eval $(call KernelPackage,xen-kbddev))
148
149
150 define KernelPackage/xen-netdev
151 SUBMENU:=$(VIRTUAL_MENU)
152 TITLE:=Xen network device frontend
153 DEPENDS:=@TARGET_x86_xen_domu
154 KCONFIG:=CONFIG_XEN_NETDEV_FRONTEND
155 FILES:=$(LINUX_DIR)/drivers/net/xen-netfront.ko
156 AUTOLOAD:=$(call AutoLoad,09,xen-netfront)
157 endef
158
159 define KernelPackage/xen-netdev/description
160 Kernel module for the Xen network device frontend
161 endef
162
163 $(eval $(call KernelPackage,xen-netdev))
164
165
166 define KernelPackage/xen-pcidev
167 SUBMENU:=$(VIRTUAL_MENU)
168 TITLE:=Xen PCI device frontend
169 DEPENDS:=@TARGET_x86_xen_domu @LINUX_2_6_37||LINUX_2_6_38
170 KCONFIG:=CONFIG_XEN_PCIDEV_FRONTEND
171 FILES:=$(LINUX_DIR)/drivers/net/xen-pcifront.ko
172 AUTOLOAD:=$(call AutoLoad,10,xen-pcifront)
173 endef
174
175 define KernelPackage/xen-pcidev/description
176 Kernel module for the Xen network device frontend
177 endef
178
179 $(eval $(call KernelPackage,xen-pcidev))