diff options
| author | Gerd Hoffmann <kraxel@redhat.com> | 2014-02-24 08:17:09 -0500 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2014-02-24 19:15:05 -0500 |
| commit | 90eedf0cbe4ba2a316633d6547d331c8b30517e7 (patch) | |
| tree | 99e109013846a9c500331b525a8617deeb2525b1 /drivers/hv | |
| parent | 4eb923f8787fabbbc450364d34ebe69813448862 (diff) | |
vmbus: use resource for hyperv mmio region
Use a resource for the hyperv mmio region instead of start/size
variables. Register the region properly so it shows up in
/proc/iomem.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/hv')
| -rw-r--r-- | drivers/hv/vmbus_drv.c | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/drivers/hv/vmbus_drv.c b/drivers/hv/vmbus_drv.c index 2352ae481e87..a14f60340bfc 100644 --- a/drivers/hv/vmbus_drv.c +++ b/drivers/hv/vmbus_drv.c | |||
| @@ -43,10 +43,12 @@ static struct acpi_device *hv_acpi_dev; | |||
| 43 | static struct tasklet_struct msg_dpc; | 43 | static struct tasklet_struct msg_dpc; |
| 44 | static struct completion probe_event; | 44 | static struct completion probe_event; |
| 45 | static int irq; | 45 | static int irq; |
| 46 | u64 hyperv_mmio_start; | 46 | |
| 47 | EXPORT_SYMBOL_GPL(hyperv_mmio_start); | 47 | struct resource hyperv_mmio = { |
| 48 | u64 hyperv_mmio_size; | 48 | .name = "hyperv mmio", |
| 49 | EXPORT_SYMBOL_GPL(hyperv_mmio_size); | 49 | .flags = IORESOURCE_MEM, |
| 50 | }; | ||
| 51 | EXPORT_SYMBOL_GPL(hyperv_mmio); | ||
| 50 | 52 | ||
| 51 | static int vmbus_exists(void) | 53 | static int vmbus_exists(void) |
| 52 | { | 54 | { |
| @@ -902,8 +904,8 @@ static acpi_status vmbus_walk_resources(struct acpi_resource *res, void *ctx) | |||
| 902 | break; | 904 | break; |
| 903 | 905 | ||
| 904 | case ACPI_RESOURCE_TYPE_ADDRESS64: | 906 | case ACPI_RESOURCE_TYPE_ADDRESS64: |
| 905 | hyperv_mmio_start = res->data.address64.minimum; | 907 | hyperv_mmio.start = res->data.address64.minimum; |
| 906 | hyperv_mmio_size = res->data.address64.address_length; | 908 | hyperv_mmio.end = res->data.address64.maximum; |
| 907 | break; | 909 | break; |
| 908 | } | 910 | } |
| 909 | 911 | ||
| @@ -933,6 +935,8 @@ static int vmbus_acpi_add(struct acpi_device *device) | |||
| 933 | 935 | ||
| 934 | if (ACPI_FAILURE(result)) | 936 | if (ACPI_FAILURE(result)) |
| 935 | goto acpi_walk_err; | 937 | goto acpi_walk_err; |
| 938 | if (hyperv_mmio.start && hyperv_mmio.end) | ||
| 939 | request_resource(&iomem_resource, &hyperv_mmio); | ||
| 936 | } | 940 | } |
| 937 | ret_val = 0; | 941 | ret_val = 0; |
| 938 | 942 | ||
