Commit ef52a81b authored by K. Y. Srinivasan's avatar K. Y. Srinivasan Committed by Greg Kroah-Hartman

Staging: hv: storvsc: Use the driver_data to identify ide

Use the driver_data to identify ide devices in storvsc_probe().
Signed-off-by: default avatarK. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: default avatarHaiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 84946899
...@@ -1359,17 +1359,20 @@ static struct scsi_host_template scsi_driver = { ...@@ -1359,17 +1359,20 @@ static struct scsi_host_template scsi_driver = {
.dma_boundary = PAGE_SIZE-1, .dma_boundary = PAGE_SIZE-1,
}; };
/* enum {
* The storvsc_probe function assumes that the IDE guid SCSI_GUID,
* is the second entry. IDE_GUID,
*/ };
static const struct hv_vmbus_device_id id_table[] = { static const struct hv_vmbus_device_id id_table[] = {
/* SCSI guid */ /* SCSI guid */
{ VMBUS_DEVICE(0xd9, 0x63, 0x61, 0xba, 0xa1, 0x04, 0x29, 0x4d, { VMBUS_DEVICE(0xd9, 0x63, 0x61, 0xba, 0xa1, 0x04, 0x29, 0x4d,
0xb6, 0x05, 0x72, 0xe2, 0xff, 0xb1, 0xdc, 0x7f) }, 0xb6, 0x05, 0x72, 0xe2, 0xff, 0xb1, 0xdc, 0x7f)
.driver_data = SCSI_GUID },
/* IDE guid */ /* IDE guid */
{ VMBUS_DEVICE(0x32, 0x26, 0x41, 0x32, 0xcb, 0x86, 0xa2, 0x44, { VMBUS_DEVICE(0x32, 0x26, 0x41, 0x32, 0xcb, 0x86, 0xa2, 0x44,
0x9b, 0x5c, 0x50, 0xd1, 0x41, 0x73, 0x54, 0xf5) }, 0x9b, 0x5c, 0x50, 0xd1, 0x41, 0x73, 0x54, 0xf5)
.driver_data = IDE_GUID },
{ }, { },
}; };
...@@ -1387,15 +1390,10 @@ static int storvsc_probe(struct hv_device *device, ...@@ -1387,15 +1390,10 @@ static int storvsc_probe(struct hv_device *device,
struct Scsi_Host *host; struct Scsi_Host *host;
struct hv_host_device *host_dev; struct hv_host_device *host_dev;
struct storvsc_device_info device_info; struct storvsc_device_info device_info;
bool dev_is_ide; bool dev_is_ide = ((dev_id->driver_data == IDE_GUID) ? true : false);
int path = 0; int path = 0;
int target = 0; int target = 0;
if (!memcmp(&device->dev_type.b, id_table[1].guid, sizeof(uuid_le)))
dev_is_ide = true;
else
dev_is_ide = false;
host = scsi_host_alloc(&scsi_driver, host = scsi_host_alloc(&scsi_driver,
sizeof(struct hv_host_device)); sizeof(struct hv_host_device));
if (!host) if (!host)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment