lkml.org 
[lkml]   [2010]   [Feb]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: Problem with auto-detecting a HV environment from within Linux
From
Hi Greg,

On Fri, Feb 26, 2010 at 2:46 AM, Greg KH <greg@kroah.com> wrote:
>
> On Thu, Feb 25, 2010 at 11:40:52PM +0000, Haiyang Zhang wrote:
> > > -----Original Message-----
> > > From: Greg KH [mailto:greg@kroah.com]
> > > Sent: Thursday, February 25, 2010 6:07 PM
> > > If so, what is the vendor and product id of this device?
> >
> > The Vendor:Device Id is: 1414:5353
> > 00:08.0 VGA compatible controller [0300]: Microsoft Corporation Device [1414:5353]
> >
> > This hasn't been changed since the first release of HyperV. I will ask
> > around about the future stability of the VGA card (and the DMI).
>
> Ok, below are 2 patches that I will queue up in my tree.
>
> Can you test them to verify that they work properly?
>
> thanks,
>
> greg k-h
>
> From: Greg Kroah-Hartman <gregkh@suse.de>
> Subject: Staging: hv: add a pci device table
>
> This allows the HV core to be properly found and autoloaded
> by the system tools.
>
> It uses the Microsoft virtual VGA device to trigger this.
>
> Cc: Haiyang Zhang <haiyangz@microsoft.com>
> Cc: Hank Janssen <hjanssen@microsoft.com>
> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
> ---
>  drivers/staging/hv/vmbus_drv.c |   17 +++++++++++++++++
>  1 file changed, 17 insertions(+)
>
> --- a/drivers/staging/hv/vmbus_drv.c
> +++ b/drivers/staging/hv/vmbus_drv.c
> @@ -24,6 +24,7 @@
>  #include <linux/irq.h>
>  #include <linux/interrupt.h>
>  #include <linux/sysctl.h>
> +#include <linux/pci.h>
>  #include "VersionInfo.h"
>  #include "osd.h"
>  #include "logging.h"
> @@ -974,6 +975,22 @@ static void __exit vmbus_exit(void)
>        return;
>  }
>
> +/*
> + * We use a PCI table to determine if we should autoload this driver  This is
> + * needed by distro tools to determine if the hyperv drivers should be
> + * installed and/or configured.  We don't do anything else with the table, but
> + * it needs to be present.
> + *
> + * We might consider triggering off of DMI table info as well, as that does
> + * decribe the virtual machine being run on, but not all configuration tools
> + * seem to be able to handle DMI device ids properly.
> + */
> +const static struct pci_device_id microsoft_hv_pci_table[] = {

You can have:
const static DEFINE_PCI_DEVICE_TABLE(microsoft_hv_pci_table) = {

> +       { PCI_DEVICE(0x1414, 0x5353) }, /* VGA compatible controller */
> +       { 0 }
> +};
> +MODULE_DEVICE_TABLE(pci, microsoft_hv_pci_table);
> +

Cheers,
Ameya.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2010-02-26 10:51    [W:0.189 / U:0.176 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site