Staging: hv: move hyperv code out of staging directory

After many years wandering the desert, it is finally time for the
Microsoft HyperV code to move out of the staging directory.  Or at least
the core hyperv bus code, and the utility driver, the rest still have
some review to get through by the various subsystem maintainers.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
This commit is contained in:
Greg Kroah-Hartman 2011-10-04 12:29:52 -07:00
parent 715a4801e7
commit 46a9719136
21 changed files with 41 additions and 45 deletions

View File

@ -130,4 +130,6 @@ source "drivers/iommu/Kconfig"
source "drivers/virt/Kconfig" source "drivers/virt/Kconfig"
source "drivers/hv/Kconfig"
endmenu endmenu

View File

@ -127,3 +127,5 @@ obj-$(CONFIG_IOMMU_SUPPORT) += iommu/
# Virtualization drivers # Virtualization drivers
obj-$(CONFIG_VIRT_DRIVERS) += virt/ obj-$(CONFIG_VIRT_DRIVERS) += virt/
obj-$(CONFIG_HYPERV) += hv/

14
drivers/hv/Kconfig Normal file
View File

@ -0,0 +1,14 @@
config HYPERV
tristate "Microsoft Hyper-V client drivers"
depends on X86 && ACPI && PCI
help
Select this option to run Linux as a Hyper-V client operating
system.
config HYPERV_UTILS
tristate "Microsoft Hyper-V Utilities driver"
depends on HYPERV && CONNECTOR && NLS
help
Select this option to enable the Hyper-V Utilities.

7
drivers/hv/Makefile Normal file
View File

@ -0,0 +1,7 @@
obj-$(CONFIG_HYPERV) += hv_vmbus.o
obj-$(CONFIG_HYPERV_UTILS) += hv_utils.o
hv_vmbus-y := vmbus_drv.o \
hv.o connection.o channel.o \
channel_mgmt.o ring_buffer.o
hv_utils-y := hv_util.o hv_kvp.o

View File

@ -26,8 +26,8 @@
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/slab.h> #include <linux/slab.h>
#include <linux/module.h> #include <linux/module.h>
#include <linux/hyperv.h>
#include "hyperv.h"
#include "hyperv_vmbus.h" #include "hyperv_vmbus.h"
#define NUM_PAGES_SPANNED(addr, len) \ #define NUM_PAGES_SPANNED(addr, len) \

View File

@ -28,8 +28,8 @@
#include <linux/list.h> #include <linux/list.h>
#include <linux/module.h> #include <linux/module.h>
#include <linux/completion.h> #include <linux/completion.h>
#include <linux/hyperv.h>
#include "hyperv.h"
#include "hyperv_vmbus.h" #include "hyperv_vmbus.h"
struct vmbus_channel_message_table_entry { struct vmbus_channel_message_table_entry {

View File

@ -29,8 +29,8 @@
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/slab.h> #include <linux/slab.h>
#include <linux/vmalloc.h> #include <linux/vmalloc.h>
#include <linux/hyperv.h>
#include "hyperv.h"
#include "hyperv_vmbus.h" #include "hyperv_vmbus.h"

View File

@ -25,8 +25,8 @@
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/slab.h> #include <linux/slab.h>
#include <linux/vmalloc.h> #include <linux/vmalloc.h>
#include <linux/hyperv.h>
#include "hyperv.h"
#include "hyperv_vmbus.h" #include "hyperv_vmbus.h"
/* The one and only */ /* The one and only */

View File

@ -26,8 +26,8 @@
#include <linux/nls.h> #include <linux/nls.h>
#include <linux/connector.h> #include <linux/connector.h>
#include <linux/workqueue.h> #include <linux/workqueue.h>
#include <linux/hyperv.h>
#include "hyperv.h"
#include "hv_kvp.h" #include "hv_kvp.h"

View File

@ -26,8 +26,8 @@
#include <linux/slab.h> #include <linux/slab.h>
#include <linux/sysctl.h> #include <linux/sysctl.h>
#include <linux/reboot.h> #include <linux/reboot.h>
#include <linux/hyperv.h>
#include "hyperv.h"
#include "hv_kvp.h" #include "hv_kvp.h"

View File

@ -28,8 +28,7 @@
#include <linux/list.h> #include <linux/list.h>
#include <asm/sync_bitops.h> #include <asm/sync_bitops.h>
#include <linux/atomic.h> #include <linux/atomic.h>
#include <linux/hyperv.h>
#include "hyperv.h"
/* /*
* The below CPUID leaves are present if VersionAndFeatures.HypervisorPresent * The below CPUID leaves are present if VersionAndFeatures.HypervisorPresent

View File

@ -25,8 +25,8 @@
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/hyperv.h>
#include "hyperv.h"
#include "hyperv_vmbus.h" #include "hyperv_vmbus.h"

View File

@ -32,8 +32,8 @@
#include <linux/acpi.h> #include <linux/acpi.h>
#include <acpi/acpi_bus.h> #include <acpi/acpi_bus.h>
#include <linux/completion.h> #include <linux/completion.h>
#include <linux/hyperv.h>
#include "hyperv.h"
#include "hyperv_vmbus.h" #include "hyperv_vmbus.h"

View File

@ -1,39 +1,17 @@
config HYPERV
tristate "Microsoft Hyper-V client drivers"
depends on X86 && ACPI && PCI
default n
help
Select this option to run Linux as a Hyper-V client operating
system.
if HYPERV
config HYPERV_STORAGE config HYPERV_STORAGE
tristate "Microsoft Hyper-V virtual storage driver" tristate "Microsoft Hyper-V virtual storage driver"
depends on SCSI depends on HYPERV && SCSI
default HYPERV
help help
Select this option to enable the Hyper-V virtual storage driver. Select this option to enable the Hyper-V virtual storage driver.
config HYPERV_NET config HYPERV_NET
tristate "Microsoft Hyper-V virtual network driver" tristate "Microsoft Hyper-V virtual network driver"
depends on NET depends on HYPERV && NET
default HYPERV
help help
Select this option to enable the Hyper-V virtual network driver. Select this option to enable the Hyper-V virtual network driver.
config HYPERV_UTILS
tristate "Microsoft Hyper-V Utilities driver"
depends on CONNECTOR && NLS
default HYPERV
help
Select this option to enable the Hyper-V Utilities.
config HYPERV_MOUSE config HYPERV_MOUSE
tristate "Microsoft Hyper-V mouse driver" tristate "Microsoft Hyper-V mouse driver"
depends on HID depends on HYPERV && HID
default HYPERV
help help
Select this option to enable the Hyper-V mouse driver. Select this option to enable the Hyper-V mouse driver.
endif

View File

@ -1,12 +1,7 @@
obj-$(CONFIG_HYPERV) += hv_vmbus.o hv_timesource.o obj-$(CONFIG_HYPERV) += hv_timesource.o
obj-$(CONFIG_HYPERV_STORAGE) += hv_storvsc.o obj-$(CONFIG_HYPERV_STORAGE) += hv_storvsc.o
obj-$(CONFIG_HYPERV_NET) += hv_netvsc.o obj-$(CONFIG_HYPERV_NET) += hv_netvsc.o
obj-$(CONFIG_HYPERV_UTILS) += hv_utils.o
obj-$(CONFIG_HYPERV_MOUSE) += hv_mouse.o obj-$(CONFIG_HYPERV_MOUSE) += hv_mouse.o
hv_vmbus-y := vmbus_drv.o \
hv.o connection.o channel.o \
channel_mgmt.o ring_buffer.o
hv_storvsc-y := storvsc_drv.o hv_storvsc-y := storvsc_drv.o
hv_netvsc-y := netvsc_drv.o netvsc.o rndis_filter.o hv_netvsc-y := netvsc_drv.o netvsc.o rndis_filter.o
hv_utils-y := hv_util.o hv_kvp.o

View File

@ -22,8 +22,7 @@
#include <linux/input.h> #include <linux/input.h>
#include <linux/hid.h> #include <linux/hid.h>
#include <linux/hiddev.h> #include <linux/hiddev.h>
#include <linux/hyperv.h>
#include "hyperv.h"
struct hv_input_dev_info { struct hv_input_dev_info {

View File

@ -26,7 +26,7 @@
#define _HYPERV_NET_H #define _HYPERV_NET_H
#include <linux/list.h> #include <linux/list.h>
#include "hyperv.h" #include <linux/hyperv.h>
/* Fwd declaration */ /* Fwd declaration */
struct hv_netvsc_packet; struct hv_netvsc_packet;

View File

@ -31,6 +31,7 @@
#include <linux/slab.h> #include <linux/slab.h>
#include <linux/module.h> #include <linux/module.h>
#include <linux/device.h> #include <linux/device.h>
#include <linux/hyperv.h>
#include <scsi/scsi.h> #include <scsi/scsi.h>
#include <scsi/scsi_cmnd.h> #include <scsi/scsi_cmnd.h>
#include <scsi/scsi_host.h> #include <scsi/scsi_host.h>
@ -40,7 +41,6 @@
#include <scsi/scsi_devinfo.h> #include <scsi/scsi_devinfo.h>
#include <scsi/scsi_dbg.h> #include <scsi/scsi_dbg.h>
#include "hyperv.h"
#define STORVSC_RING_BUFFER_SIZE (20*PAGE_SIZE) #define STORVSC_RING_BUFFER_SIZE (20*PAGE_SIZE)
static int storvsc_ringbuffer_size = STORVSC_RING_BUFFER_SIZE; static int storvsc_ringbuffer_size = STORVSC_RING_BUFFER_SIZE;