virtual.mk 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179
  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. VIRTUAL_MENU:=Virtualization Support
  8. define KernelPackage/virtio-balloon
  9. SUBMENU:=$(VIRTUAL_MENU)
  10. TITLE:=VirtIO balloon driver
  11. DEPENDS:=@TARGET_x86_kvm_guest
  12. KCONFIG:=CONFIG_VIRTIO_BALLOON
  13. FILES:=$(LINUX_DIR)/drivers/virtio/virtio_balloon.ko
  14. AUTOLOAD:=$(call AutoLoad,06,virtio-balloon)
  15. endef
  16. define KernelPackage/virtio-balloon/description
  17. Kernel module for VirtIO memory ballooning support
  18. endef
  19. $(eval $(call KernelPackage,virtio-balloon))
  20. define KernelPackage/virtio-net
  21. SUBMENU:=$(VIRTUAL_MENU)
  22. TITLE:=VirtIO network driver
  23. DEPENDS:=@TARGET_x86_kvm_guest
  24. KCONFIG:=CONFIG_VIRTIO_NET
  25. FILES:=$(LINUX_DIR)/drivers/net/virtio_net.ko
  26. AUTOLOAD:=$(call AutoLoad,50,virtio_net)
  27. endef
  28. define KernelPackage/virtio-net/description
  29. Kernel module for the VirtIO paravirtualized network device
  30. endef
  31. $(eval $(call KernelPackage,virtio-net))
  32. define KernelPackage/virtio-random
  33. SUBMENU:=$(VIRTUAL_MENU)
  34. TITLE:=VirtIO Random Number Generator support
  35. DEPENDS:=@TARGET_x86_kvm_guest
  36. KCONFIG:=CONFIG_HW_RANDOM_VIRTIO
  37. FILES:=$(LINUX_DIR)/drivers/char/hw_random/virtio-rng.ko
  38. AUTOLOAD:=$(call AutoLoad,09,virtio-rng)
  39. endef
  40. define KernelPackage/virtio-random/description
  41. Kernel module for the VirtIO Random Number Generator
  42. endef
  43. $(eval $(call KernelPackage,virtio-random))
  44. define KernelPackage/xen-fs
  45. SUBMENU:=$(VIRTUAL_MENU)
  46. TITLE:=Xen filesystem
  47. DEPENDS:=@TARGET_x86_xen_domu
  48. KCONFIG:= \
  49. CONFIG_XENFS \
  50. CONFIG_XEN_COMPAT_XENFS=y
  51. FILES:=$(LINUX_DIR)/drivers/xen/xenfs/xenfs.ko
  52. AUTOLOAD:=$(call AutoLoad,05,xenfs)
  53. endef
  54. define KernelPackage/xen-fs/description
  55. Kernel module for the Xen filesystem
  56. endef
  57. $(eval $(call KernelPackage,xen-fs))
  58. define KernelPackage/xen-evtchn
  59. SUBMENU:=$(VIRTUAL_MENU)
  60. TITLE:=Xen event channels
  61. DEPENDS:=@TARGET_x86_xen_domu
  62. KCONFIG:=CONFIG_XEN_DEV_EVTCHN
  63. ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.37)),1)
  64. FILES:=$(LINUX_DIR)/drivers/xen/xen-evtchn.ko
  65. AUTOLOAD:=$(call AutoLoad,06,xen-evtchn)
  66. else
  67. FILES:=$(LINUX_DIR)/drivers/xen/evtchn.ko
  68. AUTOLOAD:=$(call AutoLoad,06,evtchn)
  69. endif
  70. endef
  71. define KernelPackage/xen-evtchn/description
  72. Kernel module for the /dev/xen/evtchn device
  73. endef
  74. $(eval $(call KernelPackage,xen-evtchn))
  75. # FIXME: the FB support should be moved to a separate kmod
  76. define KernelPackage/xen-fbdev
  77. SUBMENU:=$(VIRTUAL_MENU)
  78. TITLE:=Xen virtual frame buffer
  79. DEPENDS:=@TARGET_x86_xen_domu
  80. KCONFIG:= \
  81. CONFIG_XEN_FBDEV_FRONTEND \
  82. CONFIG_FB \
  83. CONFIG_FB_DEFERRED_IO=y \
  84. CONFIG_FB_SYS_COPYAREA \
  85. CONFIG_FB_SYS_FILLRECT \
  86. CONFIG_FB_SYS_FOPS \
  87. CONFIG_FB_SYS_IMAGEBLIT \
  88. CONFIG_FIRMWARE_EDID=n
  89. FILES:= \
  90. $(LINUX_DIR)/drivers/video/xen-fbfront.ko \
  91. $(LINUX_DIR)/drivers/video/fb.ko \
  92. $(LINUX_DIR)/drivers/video/syscopyarea.ko \
  93. $(LINUX_DIR)/drivers/video/sysfillrect.ko \
  94. $(LINUX_DIR)/drivers/video/fb_sys_fops.ko \
  95. $(LINUX_DIR)/drivers/video/sysimgblt.ko
  96. AUTOLOAD:=$(call AutoLoad,07, \
  97. fb \
  98. syscopyarea \
  99. sysfillrect \
  100. fb_sys_fops \
  101. sysimgblt \
  102. xen-fbfront \
  103. )
  104. endef
  105. define KernelPackage/xen-fbdev/description
  106. Kernel module for the Xen virtual frame buffer
  107. endef
  108. $(eval $(call KernelPackage,xen-fbdev))
  109. define KernelPackage/xen-kbddev
  110. SUBMENU:=$(VIRTUAL_MENU)
  111. TITLE:=Xen virtual keyboard and mouse
  112. DEPENDS:=@TARGET_x86_xen_domu
  113. KCONFIG:=CONFIG_XEN_KBDDEV_FRONTEND
  114. FILES:=$(LINUX_DIR)/drivers/input/xen-kbdfront.ko
  115. AUTOLOAD:=$(call AutoLoad,08,xen-kbdfront)
  116. endef
  117. define KernelPackage/xen-kbddev/description
  118. Kernel module for the Xen virtual keyboard and mouse
  119. endef
  120. $(eval $(call KernelPackage,xen-kbddev))
  121. define KernelPackage/xen-netdev
  122. SUBMENU:=$(VIRTUAL_MENU)
  123. TITLE:=Xen network device frontend
  124. DEPENDS:=@TARGET_x86_xen_domu
  125. KCONFIG:=CONFIG_XEN_NETDEV_FRONTEND
  126. FILES:=$(LINUX_DIR)/drivers/net/xen-netfront.ko
  127. AUTOLOAD:=$(call AutoLoad,09,xen-netfront)
  128. endef
  129. define KernelPackage/xen-netdev/description
  130. Kernel module for the Xen network device frontend
  131. endef
  132. $(eval $(call KernelPackage,xen-netdev))
  133. define KernelPackage/xen-pcidev
  134. SUBMENU:=$(VIRTUAL_MENU)
  135. TITLE:=Xen PCI device frontend
  136. DEPENDS:=@TARGET_x86_xen_domu @!LINUX_2_6_30&&!LINUX_2_6_31&&!LINUX_2_6_32&&!LINUX_2_6_36
  137. KCONFIG:=CONFIG_XEN_PCIDEV_FRONTEND
  138. FILES:=$(LINUX_DIR)/drivers/xen/platform-pci.ko
  139. AUTOLOAD:=$(call AutoLoad,10,xen-pcifront)
  140. endef
  141. define KernelPackage/xen-pcidev/description
  142. Kernel module for the Xen network device frontend
  143. endef
  144. $(eval $(call KernelPackage,xen-pcidev))