kernel/modules: add xen-privcmd package
[openwrt.git] / package / kernel / linux / 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 define KernelPackage/virtio-balloon
11   SUBMENU:=$(VIRTUAL_MENU)
12   TITLE:=VirtIO balloon driver
13   DEPENDS:=@TARGET_x86_kvm_guest
14   KCONFIG:=CONFIG_VIRTIO_BALLOON
15   FILES:=$(LINUX_DIR)/drivers/virtio/virtio_balloon.ko
16   AUTOLOAD:=$(call AutoLoad,06,virtio-balloon)
17 endef
18
19 define KernelPackage/virtio-balloon/description
20  Kernel module for VirtIO memory ballooning support
21 endef
22
23 $(eval $(call KernelPackage,virtio-balloon))
24
25
26 define KernelPackage/virtio-net
27   SUBMENU:=$(VIRTUAL_MENU)
28   TITLE:=VirtIO network driver
29   DEPENDS:=@TARGET_x86_kvm_guest
30   KCONFIG:=CONFIG_VIRTIO_NET
31   FILES:=$(LINUX_DIR)/drivers/net/virtio_net.ko
32   AUTOLOAD:=$(call AutoLoad,50,virtio_net)
33 endef
34
35 define KernelPackage/virtio-net/description
36  Kernel module for the VirtIO paravirtualized network device
37 endef
38
39 $(eval $(call KernelPackage,virtio-net))
40
41
42 define KernelPackage/virtio-random
43   SUBMENU:=$(VIRTUAL_MENU)
44   TITLE:=VirtIO Random Number Generator support
45   DEPENDS:=@TARGET_x86_kvm_guest
46   KCONFIG:=CONFIG_HW_RANDOM_VIRTIO
47   FILES:=$(LINUX_DIR)/drivers/char/hw_random/virtio-rng.ko
48   AUTOLOAD:=$(call AutoLoad,09,virtio-rng)
49 endef
50
51 define KernelPackage/virtio-random/description
52  Kernel module for the VirtIO Random Number Generator
53 endef
54
55 $(eval $(call KernelPackage,virtio-random))
56
57
58 define KernelPackage/xen-privcmd
59   SUBMENU:=$(VIRTUAL_MENU)
60   TITLE:=Xen private commands
61   DEPENDS:=@TARGET_x86_xen_domu
62   KCONFIG:=CONFIG_XEN_PRIVCMD
63   FILES:=$(LINUX_DIR)/drivers/xen/xen-privcmd.ko
64   AUTOLOAD:=$(call AutoLoad,04,xen-privcmd)
65 endef
66
67 define KernelPackage/xen-privcmd/description
68  Kernel module for Xen private commands
69 endef
70
71 $(eval $(call KernelPackage,xen-privcmd))
72
73
74 define KernelPackage/xen-fs
75   SUBMENU:=$(VIRTUAL_MENU)
76   TITLE:=Xen filesystem
77   DEPENDS:=@TARGET_x86_xen_domu +kmod-xen-privcmd
78   KCONFIG:= \
79         CONFIG_XENFS \
80         CONFIG_XEN_COMPAT_XENFS=y
81   FILES:=$(LINUX_DIR)/drivers/xen/xenfs/xenfs.ko
82   AUTOLOAD:=$(call AutoLoad,05,xenfs)
83 endef
84
85 define KernelPackage/xen-fs/description
86  Kernel module for the Xen filesystem
87 endef
88
89 $(eval $(call KernelPackage,xen-fs))
90
91
92 define KernelPackage/xen-evtchn
93   SUBMENU:=$(VIRTUAL_MENU)
94   TITLE:=Xen event channels
95   DEPENDS:=@TARGET_x86_xen_domu
96   KCONFIG:=CONFIG_XEN_DEV_EVTCHN
97   FILES:=$(LINUX_DIR)/drivers/xen/xen-evtchn.ko
98   AUTOLOAD:=$(call AutoLoad,06,xen-evtchn)
99 endef
100
101 define KernelPackage/xen-evtchn/description
102  Kernel module for the /dev/xen/evtchn device
103 endef
104
105 $(eval $(call KernelPackage,xen-evtchn))
106
107 define KernelPackage/xen-fbdev
108   SUBMENU:=$(VIRTUAL_MENU)
109   TITLE:=Xen virtual frame buffer
110   DEPENDS:=@TARGET_x86_xen_domu +kmod-fb
111   KCONFIG:= \
112         CONFIG_XEN_FBDEV_FRONTEND \
113         CONFIG_FB_DEFERRED_IO=y \
114         CONFIG_FB_SYS_COPYAREA \
115         CONFIG_FB_SYS_FILLRECT \
116         CONFIG_FB_SYS_FOPS \
117         CONFIG_FB_SYS_IMAGEBLIT \
118         CONFIG_FIRMWARE_EDID=n
119   FILES:= \
120         $(LINUX_DIR)/drivers/video/xen-fbfront.ko \
121         $(LINUX_DIR)/drivers/video/syscopyarea.ko \
122         $(LINUX_DIR)/drivers/video/sysfillrect.ko \
123         $(LINUX_DIR)/drivers/video/fb_sys_fops.ko \
124         $(LINUX_DIR)/drivers/video/sysimgblt.ko
125   AUTOLOAD:=$(call AutoLoad,07, \
126         fb \
127         syscopyarea \
128         sysfillrect \
129         fb_sys_fops \
130         sysimgblt \
131         xen-fbfront \
132   )
133 endef
134
135 define KernelPackage/xen-fbdev/description
136  Kernel module for the Xen virtual frame buffer
137 endef
138
139 $(eval $(call KernelPackage,xen-fbdev))
140
141
142 define KernelPackage/xen-kbddev
143   SUBMENU:=$(VIRTUAL_MENU)
144   TITLE:=Xen virtual keyboard and mouse
145   DEPENDS:=@TARGET_x86_xen_domu
146   KCONFIG:=CONFIG_XEN_KBDDEV_FRONTEND
147   FILES:=$(LINUX_DIR)/drivers/input/xen-kbdfront.ko
148   AUTOLOAD:=$(call AutoLoad,08,xen-kbdfront)
149 endef
150
151 define KernelPackage/xen-kbddev/description
152  Kernel module for the Xen virtual keyboard and mouse
153 endef
154
155 $(eval $(call KernelPackage,xen-kbddev))
156
157
158 define KernelPackage/xen-netdev
159   SUBMENU:=$(VIRTUAL_MENU)
160   TITLE:=Xen network device frontend
161   DEPENDS:=@TARGET_x86_xen_domu
162   KCONFIG:=CONFIG_XEN_NETDEV_FRONTEND
163   FILES:=$(LINUX_DIR)/drivers/net/xen-netfront.ko
164   AUTOLOAD:=$(call AutoLoad,09,xen-netfront)
165 endef
166
167 define KernelPackage/xen-netdev/description
168  Kernel module for the Xen network device frontend
169 endef
170
171 $(eval $(call KernelPackage,xen-netdev))
172
173
174 define KernelPackage/xen-pcidev
175   SUBMENU:=$(VIRTUAL_MENU)
176   TITLE:=Xen PCI device frontend
177   DEPENDS:=@TARGET_x86_xen_domu
178   KCONFIG:=CONFIG_XEN_PCIDEV_FRONTEND
179   FILES:=$(LINUX_DIR)/drivers/pci/xen-pcifront.ko
180   AUTOLOAD:=$(call AutoLoad,10,xen-pcifront)
181 endef
182
183 define KernelPackage/xen-pcidev/description
184  Kernel module for the Xen network device frontend
185 endef
186
187 $(eval $(call KernelPackage,xen-pcidev))