diff options
-rw-r--r-- | arch/ia64/kernel/acpi-ext.c | 6 | ||||
-rw-r--r-- | arch/ia64/pci/pci.c | 14 | ||||
-rw-r--r-- | arch/x86/pci/acpi.c | 26 | ||||
-rw-r--r-- | arch/x86/pci/mmconfig-shared.c | 6 | ||||
-rw-r--r-- | drivers/acpi/acpi_memhotplug.c | 8 | ||||
-rw-r--r-- | drivers/acpi/acpica/nsxfobj.c | 44 | ||||
-rw-r--r-- | drivers/acpi/acpica/rsaddr.c | 9 | ||||
-rw-r--r-- | drivers/acpi/acpica/rsdumpinfo.c | 59 | ||||
-rw-r--r-- | drivers/acpi/acpica/rsxface.c | 10 | ||||
-rw-r--r-- | drivers/acpi/acpica/tbxface.c | 39 | ||||
-rw-r--r-- | drivers/acpi/pci_root.c | 6 | ||||
-rw-r--r-- | drivers/acpi/resource.c | 24 | ||||
-rw-r--r-- | drivers/char/hpet.c | 4 | ||||
-rw-r--r-- | drivers/hv/vmbus_drv.c | 4 | ||||
-rw-r--r-- | drivers/pci/hotplug/sgi_hotplug.c | 13 | ||||
-rw-r--r-- | drivers/pnp/pnpacpi/rsparser.c | 16 | ||||
-rw-r--r-- | drivers/xen/xen-acpi-memhotplug.c | 8 | ||||
-rw-r--r-- | include/acpi/acpixf.h | 6 | ||||
-rw-r--r-- | include/acpi/acrestyp.h | 40 |
19 files changed, 132 insertions, 210 deletions
diff --git a/arch/ia64/kernel/acpi-ext.c b/arch/ia64/kernel/acpi-ext.c index 8b9318d311a0..bd09bf74f187 100644 --- a/arch/ia64/kernel/acpi-ext.c +++ b/arch/ia64/kernel/acpi-ext.c | |||
@@ -69,10 +69,10 @@ static acpi_status find_csr_space(struct acpi_resource *resource, void *data) | |||
69 | status = acpi_resource_to_address64(resource, &addr); | 69 | status = acpi_resource_to_address64(resource, &addr); |
70 | if (ACPI_SUCCESS(status) && | 70 | if (ACPI_SUCCESS(status) && |
71 | addr.resource_type == ACPI_MEMORY_RANGE && | 71 | addr.resource_type == ACPI_MEMORY_RANGE && |
72 | addr.address_length && | 72 | addr.address.address_length && |
73 | addr.producer_consumer == ACPI_CONSUMER) { | 73 | addr.producer_consumer == ACPI_CONSUMER) { |
74 | space->base = addr.minimum; | 74 | space->base = addr.address.minimum; |
75 | space->length = addr.address_length; | 75 | space->length = addr.address.address_length; |
76 | return AE_CTRL_TERMINATE; | 76 | return AE_CTRL_TERMINATE; |
77 | } | 77 | } |
78 | return AE_OK; /* keep looking */ | 78 | return AE_OK; /* keep looking */ |
diff --git a/arch/ia64/pci/pci.c b/arch/ia64/pci/pci.c index 900cc93e5409..48cc65705db4 100644 --- a/arch/ia64/pci/pci.c +++ b/arch/ia64/pci/pci.c | |||
@@ -188,12 +188,12 @@ static u64 add_io_space(struct pci_root_info *info, | |||
188 | 188 | ||
189 | name = (char *)(iospace + 1); | 189 | name = (char *)(iospace + 1); |
190 | 190 | ||
191 | min = addr->minimum; | 191 | min = addr->address.minimum; |
192 | max = min + addr->address_length - 1; | 192 | max = min + addr->address.address_length - 1; |
193 | if (addr->info.io.translation_type == ACPI_SPARSE_TRANSLATION) | 193 | if (addr->info.io.translation_type == ACPI_SPARSE_TRANSLATION) |
194 | sparse = 1; | 194 | sparse = 1; |
195 | 195 | ||
196 | space_nr = new_space(addr->translation_offset, sparse); | 196 | space_nr = new_space(addr->address.translation_offset, sparse); |
197 | if (space_nr == ~0) | 197 | if (space_nr == ~0) |
198 | goto free_resource; | 198 | goto free_resource; |
199 | 199 | ||
@@ -247,7 +247,7 @@ static acpi_status resource_to_window(struct acpi_resource *resource, | |||
247 | if (ACPI_SUCCESS(status) && | 247 | if (ACPI_SUCCESS(status) && |
248 | (addr->resource_type == ACPI_MEMORY_RANGE || | 248 | (addr->resource_type == ACPI_MEMORY_RANGE || |
249 | addr->resource_type == ACPI_IO_RANGE) && | 249 | addr->resource_type == ACPI_IO_RANGE) && |
250 | addr->address_length && | 250 | addr->address.address_length && |
251 | addr->producer_consumer == ACPI_PRODUCER) | 251 | addr->producer_consumer == ACPI_PRODUCER) |
252 | return AE_OK; | 252 | return AE_OK; |
253 | 253 | ||
@@ -284,7 +284,7 @@ static acpi_status add_window(struct acpi_resource *res, void *data) | |||
284 | if (addr.resource_type == ACPI_MEMORY_RANGE) { | 284 | if (addr.resource_type == ACPI_MEMORY_RANGE) { |
285 | flags = IORESOURCE_MEM; | 285 | flags = IORESOURCE_MEM; |
286 | root = &iomem_resource; | 286 | root = &iomem_resource; |
287 | offset = addr.translation_offset; | 287 | offset = addr.address.translation_offset; |
288 | } else if (addr.resource_type == ACPI_IO_RANGE) { | 288 | } else if (addr.resource_type == ACPI_IO_RANGE) { |
289 | flags = IORESOURCE_IO; | 289 | flags = IORESOURCE_IO; |
290 | root = &ioport_resource; | 290 | root = &ioport_resource; |
@@ -297,8 +297,8 @@ static acpi_status add_window(struct acpi_resource *res, void *data) | |||
297 | resource = &info->res[info->res_num]; | 297 | resource = &info->res[info->res_num]; |
298 | resource->name = info->name; | 298 | resource->name = info->name; |
299 | resource->flags = flags; | 299 | resource->flags = flags; |
300 | resource->start = addr.minimum + offset; | 300 | resource->start = addr.address.minimum + offset; |
301 | resource->end = resource->start + addr.address_length - 1; | 301 | resource->end = resource->start + addr.address.address_length - 1; |
302 | info->res_offset[info->res_num] = offset; | 302 | info->res_offset[info->res_num] = offset; |
303 | 303 | ||
304 | if (insert_resource(root, resource)) { | 304 | if (insert_resource(root, resource)) { |
diff --git a/arch/x86/pci/acpi.c b/arch/x86/pci/acpi.c index cfd1b132b8e3..bb98afd0591e 100644 --- a/arch/x86/pci/acpi.c +++ b/arch/x86/pci/acpi.c | |||
@@ -231,23 +231,23 @@ static acpi_status resource_to_addr(struct acpi_resource *resource, | |||
231 | case ACPI_RESOURCE_TYPE_MEMORY24: | 231 | case ACPI_RESOURCE_TYPE_MEMORY24: |
232 | memory24 = &resource->data.memory24; | 232 | memory24 = &resource->data.memory24; |
233 | addr->resource_type = ACPI_MEMORY_RANGE; | 233 | addr->resource_type = ACPI_MEMORY_RANGE; |
234 | addr->minimum = memory24->minimum; | 234 | addr->address.minimum = memory24->minimum; |
235 | addr->address_length = memory24->address_length; | 235 | addr->address.address_length = memory24->address_length; |
236 | addr->maximum = addr->minimum + addr->address_length - 1; | 236 | addr->address.maximum = addr->address.minimum + addr->address.address_length - 1; |
237 | return AE_OK; | 237 | return AE_OK; |
238 | case ACPI_RESOURCE_TYPE_MEMORY32: | 238 | case ACPI_RESOURCE_TYPE_MEMORY32: |
239 | memory32 = &resource->data.memory32; | 239 | memory32 = &resource->data.memory32; |
240 | addr->resource_type = ACPI_MEMORY_RANGE; | 240 | addr->resource_type = ACPI_MEMORY_RANGE; |
241 | addr->minimum = memory32->minimum; | 241 | addr->address.minimum = memory32->minimum; |
242 | addr->address_length = memory32->address_length; | 242 | addr->address.address_length = memory32->address_length; |
243 | addr->maximum = addr->minimum + addr->address_length - 1; | 243 | addr->address.maximum = addr->address.minimum + addr->address.address_length - 1; |
244 | return AE_OK; | 244 | return AE_OK; |
245 | case ACPI_RESOURCE_TYPE_FIXED_MEMORY32: | 245 | case ACPI_RESOURCE_TYPE_FIXED_MEMORY32: |
246 | fixed_memory32 = &resource->data.fixed_memory32; | 246 | fixed_memory32 = &resource->data.fixed_memory32; |
247 | addr->resource_type = ACPI_MEMORY_RANGE; | 247 | addr->resource_type = ACPI_MEMORY_RANGE; |
248 | addr->minimum = fixed_memory32->address; | 248 | addr->address.minimum = fixed_memory32->address; |
249 | addr->address_length = fixed_memory32->address_length; | 249 | addr->address.address_length = fixed_memory32->address_length; |
250 | addr->maximum = addr->minimum + addr->address_length - 1; | 250 | addr->address.maximum = addr->address.minimum + addr->address.address_length - 1; |
251 | return AE_OK; | 251 | return AE_OK; |
252 | case ACPI_RESOURCE_TYPE_ADDRESS16: | 252 | case ACPI_RESOURCE_TYPE_ADDRESS16: |
253 | case ACPI_RESOURCE_TYPE_ADDRESS32: | 253 | case ACPI_RESOURCE_TYPE_ADDRESS32: |
@@ -256,7 +256,7 @@ static acpi_status resource_to_addr(struct acpi_resource *resource, | |||
256 | if (ACPI_SUCCESS(status) && | 256 | if (ACPI_SUCCESS(status) && |
257 | (addr->resource_type == ACPI_MEMORY_RANGE || | 257 | (addr->resource_type == ACPI_MEMORY_RANGE || |
258 | addr->resource_type == ACPI_IO_RANGE) && | 258 | addr->resource_type == ACPI_IO_RANGE) && |
259 | addr->address_length > 0) { | 259 | addr->address.address_length > 0) { |
260 | return AE_OK; | 260 | return AE_OK; |
261 | } | 261 | } |
262 | break; | 262 | break; |
@@ -298,8 +298,8 @@ static acpi_status setup_resource(struct acpi_resource *acpi_res, void *data) | |||
298 | } else | 298 | } else |
299 | return AE_OK; | 299 | return AE_OK; |
300 | 300 | ||
301 | start = addr.minimum + addr.translation_offset; | 301 | start = addr.address.minimum + addr.address.translation_offset; |
302 | orig_end = end = addr.maximum + addr.translation_offset; | 302 | orig_end = end = addr.address.maximum + addr.address.translation_offset; |
303 | 303 | ||
304 | /* Exclude non-addressable range or non-addressable portion of range */ | 304 | /* Exclude non-addressable range or non-addressable portion of range */ |
305 | end = min(end, (u64)iomem_resource.end); | 305 | end = min(end, (u64)iomem_resource.end); |
@@ -320,7 +320,7 @@ static acpi_status setup_resource(struct acpi_resource *acpi_res, void *data) | |||
320 | res->flags = flags; | 320 | res->flags = flags; |
321 | res->start = start; | 321 | res->start = start; |
322 | res->end = end; | 322 | res->end = end; |
323 | info->res_offset[info->res_num] = addr.translation_offset; | 323 | info->res_offset[info->res_num] = addr.address.translation_offset; |
324 | info->res_num++; | 324 | info->res_num++; |
325 | 325 | ||
326 | if (!pci_use_crs) | 326 | if (!pci_use_crs) |
diff --git a/arch/x86/pci/mmconfig-shared.c b/arch/x86/pci/mmconfig-shared.c index 326198a4434e..5a8dceac3094 100644 --- a/arch/x86/pci/mmconfig-shared.c +++ b/arch/x86/pci/mmconfig-shared.c | |||
@@ -397,12 +397,12 @@ static acpi_status check_mcfg_resource(struct acpi_resource *res, void *data) | |||
397 | 397 | ||
398 | status = acpi_resource_to_address64(res, &address); | 398 | status = acpi_resource_to_address64(res, &address); |
399 | if (ACPI_FAILURE(status) || | 399 | if (ACPI_FAILURE(status) || |
400 | (address.address_length <= 0) || | 400 | (address.address.address_length <= 0) || |
401 | (address.resource_type != ACPI_MEMORY_RANGE)) | 401 | (address.resource_type != ACPI_MEMORY_RANGE)) |
402 | return AE_OK; | 402 | return AE_OK; |
403 | 403 | ||
404 | if ((mcfg_res->start >= address.minimum) && | 404 | if ((mcfg_res->start >= address.address.minimum) && |
405 | (mcfg_res->end < (address.minimum + address.address_length))) { | 405 | (mcfg_res->end < (address.address.minimum + address.address.address_length))) { |
406 | mcfg_res->flags = 1; | 406 | mcfg_res->flags = 1; |
407 | return AE_CTRL_TERMINATE; | 407 | return AE_CTRL_TERMINATE; |
408 | } | 408 | } |
diff --git a/drivers/acpi/acpi_memhotplug.c b/drivers/acpi/acpi_memhotplug.c index 23e2319ead41..ee28f4d15625 100644 --- a/drivers/acpi/acpi_memhotplug.c +++ b/drivers/acpi/acpi_memhotplug.c | |||
@@ -101,8 +101,8 @@ acpi_memory_get_resource(struct acpi_resource *resource, void *context) | |||
101 | /* Can we combine the resource range information? */ | 101 | /* Can we combine the resource range information? */ |
102 | if ((info->caching == address64.info.mem.caching) && | 102 | if ((info->caching == address64.info.mem.caching) && |
103 | (info->write_protect == address64.info.mem.write_protect) && | 103 | (info->write_protect == address64.info.mem.write_protect) && |
104 | (info->start_addr + info->length == address64.minimum)) { | 104 | (info->start_addr + info->length == address64.address.minimum)) { |
105 | info->length += address64.address_length; | 105 | info->length += address64.address.address_length; |
106 | return AE_OK; | 106 | return AE_OK; |
107 | } | 107 | } |
108 | } | 108 | } |
@@ -114,8 +114,8 @@ acpi_memory_get_resource(struct acpi_resource *resource, void *context) | |||
114 | INIT_LIST_HEAD(&new->list); | 114 | INIT_LIST_HEAD(&new->list); |
115 | new->caching = address64.info.mem.caching; | 115 | new->caching = address64.info.mem.caching; |
116 | new->write_protect = address64.info.mem.write_protect; | 116 | new->write_protect = address64.info.mem.write_protect; |
117 | new->start_addr = address64.minimum; | 117 | new->start_addr = address64.address.minimum; |
118 | new->length = address64.address_length; | 118 | new->length = address64.address.address_length; |
119 | list_add_tail(&new->list, &mem_device->res_list); | 119 | list_add_tail(&new->list, &mem_device->res_list); |
120 | 120 | ||
121 | return AE_OK; | 121 | return AE_OK; |
diff --git a/drivers/acpi/acpica/nsxfobj.c b/drivers/acpi/acpica/nsxfobj.c index dae9401be7a2..51a83298c18d 100644 --- a/drivers/acpi/acpica/nsxfobj.c +++ b/drivers/acpi/acpica/nsxfobj.c | |||
@@ -53,50 +53,6 @@ ACPI_MODULE_NAME("nsxfobj") | |||
53 | 53 | ||
54 | /******************************************************************************* | 54 | /******************************************************************************* |
55 | * | 55 | * |
56 | * FUNCTION: acpi_get_id | ||
57 | * | ||
58 | * PARAMETERS: Handle - Handle of object whose id is desired | ||
59 | * ret_id - Where the id will be placed | ||
60 | * | ||
61 | * RETURN: Status | ||
62 | * | ||
63 | * DESCRIPTION: This routine returns the owner id associated with a handle | ||
64 | * | ||
65 | ******************************************************************************/ | ||
66 | acpi_status acpi_get_id(acpi_handle handle, acpi_owner_id * ret_id) | ||
67 | { | ||
68 | struct acpi_namespace_node *node; | ||
69 | acpi_status status; | ||
70 | |||
71 | /* Parameter Validation */ | ||
72 | |||
73 | if (!ret_id) { | ||
74 | return (AE_BAD_PARAMETER); | ||
75 | } | ||
76 | |||
77 | status = acpi_ut_acquire_mutex(ACPI_MTX_NAMESPACE); | ||
78 | if (ACPI_FAILURE(status)) { | ||
79 | return (status); | ||
80 | } | ||
81 | |||
82 | /* Convert and validate the handle */ | ||
83 | |||
84 | node = acpi_ns_validate_handle(handle); | ||
85 | if (!node) { | ||
86 | (void)acpi_ut_release_mutex(ACPI_MTX_NAMESPACE); | ||
87 | return (AE_BAD_PARAMETER); | ||
88 | } | ||
89 | |||
90 | *ret_id = node->owner_id; | ||
91 | |||
92 | status = acpi_ut_release_mutex(ACPI_MTX_NAMESPACE); | ||
93 | return (status); | ||
94 | } | ||
95 | |||
96 | ACPI_EXPORT_SYMBOL(acpi_get_id) | ||
97 | |||
98 | /******************************************************************************* | ||
99 | * | ||
100 | * FUNCTION: acpi_get_type | 56 | * FUNCTION: acpi_get_type |
101 | * | 57 | * |
102 | * PARAMETERS: handle - Handle of object whose type is desired | 58 | * PARAMETERS: handle - Handle of object whose type is desired |
diff --git a/drivers/acpi/acpica/rsaddr.c b/drivers/acpi/acpica/rsaddr.c index 916fd095ff34..94a3a057042c 100644 --- a/drivers/acpi/acpica/rsaddr.c +++ b/drivers/acpi/acpica/rsaddr.c | |||
@@ -74,7 +74,7 @@ struct acpi_rsconvert_info acpi_rs_convert_address16[5] = { | |||
74 | * Address Translation Offset | 74 | * Address Translation Offset |
75 | * Address Length | 75 | * Address Length |
76 | */ | 76 | */ |
77 | {ACPI_RSC_MOVE16, ACPI_RS_OFFSET(data.address16.granularity), | 77 | {ACPI_RSC_MOVE16, ACPI_RS_OFFSET(data.address16.address.granularity), |
78 | AML_OFFSET(address16.granularity), | 78 | AML_OFFSET(address16.granularity), |
79 | 5}, | 79 | 5}, |
80 | 80 | ||
@@ -112,7 +112,7 @@ struct acpi_rsconvert_info acpi_rs_convert_address32[5] = { | |||
112 | * Address Translation Offset | 112 | * Address Translation Offset |
113 | * Address Length | 113 | * Address Length |
114 | */ | 114 | */ |
115 | {ACPI_RSC_MOVE32, ACPI_RS_OFFSET(data.address32.granularity), | 115 | {ACPI_RSC_MOVE32, ACPI_RS_OFFSET(data.address32.address.granularity), |
116 | AML_OFFSET(address32.granularity), | 116 | AML_OFFSET(address32.granularity), |
117 | 5}, | 117 | 5}, |
118 | 118 | ||
@@ -150,7 +150,7 @@ struct acpi_rsconvert_info acpi_rs_convert_address64[5] = { | |||
150 | * Address Translation Offset | 150 | * Address Translation Offset |
151 | * Address Length | 151 | * Address Length |
152 | */ | 152 | */ |
153 | {ACPI_RSC_MOVE64, ACPI_RS_OFFSET(data.address64.granularity), | 153 | {ACPI_RSC_MOVE64, ACPI_RS_OFFSET(data.address64.address.granularity), |
154 | AML_OFFSET(address64.granularity), | 154 | AML_OFFSET(address64.granularity), |
155 | 5}, | 155 | 5}, |
156 | 156 | ||
@@ -194,7 +194,8 @@ struct acpi_rsconvert_info acpi_rs_convert_ext_address64[5] = { | |||
194 | * Address Length | 194 | * Address Length |
195 | * Type-Specific Attribute | 195 | * Type-Specific Attribute |
196 | */ | 196 | */ |
197 | {ACPI_RSC_MOVE64, ACPI_RS_OFFSET(data.ext_address64.granularity), | 197 | {ACPI_RSC_MOVE64, |
198 | ACPI_RS_OFFSET(data.ext_address64.address.granularity), | ||
198 | AML_OFFSET(ext_address64.granularity), | 199 | AML_OFFSET(ext_address64.granularity), |
199 | 6} | 200 | 6} |
200 | }; | 201 | }; |
diff --git a/drivers/acpi/acpica/rsdumpinfo.c b/drivers/acpi/acpica/rsdumpinfo.c index 2f9332d5c973..6ba7ad5faa9c 100644 --- a/drivers/acpi/acpica/rsdumpinfo.c +++ b/drivers/acpi/acpica/rsdumpinfo.c | |||
@@ -183,15 +183,15 @@ struct acpi_rsdump_info acpi_rs_dump_address16[8] = { | |||
183 | {ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE(acpi_rs_dump_address16), | 183 | {ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE(acpi_rs_dump_address16), |
184 | "16-Bit WORD Address Space", NULL}, | 184 | "16-Bit WORD Address Space", NULL}, |
185 | {ACPI_RSD_ADDRESS, 0, NULL, NULL}, | 185 | {ACPI_RSD_ADDRESS, 0, NULL, NULL}, |
186 | {ACPI_RSD_UINT16, ACPI_RSD_OFFSET(address16.granularity), "Granularity", | 186 | {ACPI_RSD_UINT16, ACPI_RSD_OFFSET(address16.address.granularity), |
187 | NULL}, | 187 | "Granularity", NULL}, |
188 | {ACPI_RSD_UINT16, ACPI_RSD_OFFSET(address16.minimum), "Address Minimum", | 188 | {ACPI_RSD_UINT16, ACPI_RSD_OFFSET(address16.address.minimum), |
189 | NULL}, | 189 | "Address Minimum", NULL}, |
190 | {ACPI_RSD_UINT16, ACPI_RSD_OFFSET(address16.maximum), "Address Maximum", | 190 | {ACPI_RSD_UINT16, ACPI_RSD_OFFSET(address16.address.maximum), |
191 | NULL}, | 191 | "Address Maximum", NULL}, |
192 | {ACPI_RSD_UINT16, ACPI_RSD_OFFSET(address16.translation_offset), | 192 | {ACPI_RSD_UINT16, ACPI_RSD_OFFSET(address16.address.translation_offset), |
193 | "Translation Offset", NULL}, | 193 | "Translation Offset", NULL}, |
194 | {ACPI_RSD_UINT16, ACPI_RSD_OFFSET(address16.address_length), | 194 | {ACPI_RSD_UINT16, ACPI_RSD_OFFSET(address16.address.address_length), |
195 | "Address Length", NULL}, | 195 | "Address Length", NULL}, |
196 | {ACPI_RSD_SOURCE, ACPI_RSD_OFFSET(address16.resource_source), NULL, NULL} | 196 | {ACPI_RSD_SOURCE, ACPI_RSD_OFFSET(address16.resource_source), NULL, NULL} |
197 | }; | 197 | }; |
@@ -200,15 +200,15 @@ struct acpi_rsdump_info acpi_rs_dump_address32[8] = { | |||
200 | {ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE(acpi_rs_dump_address32), | 200 | {ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE(acpi_rs_dump_address32), |
201 | "32-Bit DWORD Address Space", NULL}, | 201 | "32-Bit DWORD Address Space", NULL}, |
202 | {ACPI_RSD_ADDRESS, 0, NULL, NULL}, | 202 | {ACPI_RSD_ADDRESS, 0, NULL, NULL}, |
203 | {ACPI_RSD_UINT32, ACPI_RSD_OFFSET(address32.granularity), "Granularity", | 203 | {ACPI_RSD_UINT32, ACPI_RSD_OFFSET(address32.address.granularity), |
204 | NULL}, | 204 | "Granularity", NULL}, |
205 | {ACPI_RSD_UINT32, ACPI_RSD_OFFSET(address32.minimum), "Address Minimum", | 205 | {ACPI_RSD_UINT32, ACPI_RSD_OFFSET(address32.address.minimum), |
206 | NULL}, | 206 | "Address Minimum", NULL}, |
207 | {ACPI_RSD_UINT32, ACPI_RSD_OFFSET(address32.maximum), "Address Maximum", | 207 | {ACPI_RSD_UINT32, ACPI_RSD_OFFSET(address32.address.maximum), |
208 | NULL}, | 208 | "Address Maximum", NULL}, |
209 | {ACPI_RSD_UINT32, ACPI_RSD_OFFSET(address32.translation_offset), | 209 | {ACPI_RSD_UINT32, ACPI_RSD_OFFSET(address32.address.translation_offset), |
210 | "Translation Offset", NULL}, | 210 | "Translation Offset", NULL}, |
211 | {ACPI_RSD_UINT32, ACPI_RSD_OFFSET(address32.address_length), | 211 | {ACPI_RSD_UINT32, ACPI_RSD_OFFSET(address32.address.address_length), |
212 | "Address Length", NULL}, | 212 | "Address Length", NULL}, |
213 | {ACPI_RSD_SOURCE, ACPI_RSD_OFFSET(address32.resource_source), NULL, NULL} | 213 | {ACPI_RSD_SOURCE, ACPI_RSD_OFFSET(address32.resource_source), NULL, NULL} |
214 | }; | 214 | }; |
@@ -217,15 +217,15 @@ struct acpi_rsdump_info acpi_rs_dump_address64[8] = { | |||
217 | {ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE(acpi_rs_dump_address64), | 217 | {ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE(acpi_rs_dump_address64), |
218 | "64-Bit QWORD Address Space", NULL}, | 218 | "64-Bit QWORD Address Space", NULL}, |
219 | {ACPI_RSD_ADDRESS, 0, NULL, NULL}, | 219 | {ACPI_RSD_ADDRESS, 0, NULL, NULL}, |
220 | {ACPI_RSD_UINT64, ACPI_RSD_OFFSET(address64.granularity), "Granularity", | 220 | {ACPI_RSD_UINT64, ACPI_RSD_OFFSET(address64.address.granularity), |
221 | NULL}, | 221 | "Granularity", NULL}, |
222 | {ACPI_RSD_UINT64, ACPI_RSD_OFFSET(address64.minimum), "Address Minimum", | 222 | {ACPI_RSD_UINT64, ACPI_RSD_OFFSET(address64.address.minimum), |
223 | NULL}, | 223 | "Address Minimum", NULL}, |
224 | {ACPI_RSD_UINT64, ACPI_RSD_OFFSET(address64.maximum), "Address Maximum", | 224 | {ACPI_RSD_UINT64, ACPI_RSD_OFFSET(address64.address.maximum), |
225 | NULL}, | 225 | "Address Maximum", NULL}, |
226 | {ACPI_RSD_UINT64, ACPI_RSD_OFFSET(address64.translation_offset), | 226 | {ACPI_RSD_UINT64, ACPI_RSD_OFFSET(address64.address.translation_offset), |
227 | "Translation Offset", NULL}, | 227 | "Translation Offset", NULL}, |
228 | {ACPI_RSD_UINT64, ACPI_RSD_OFFSET(address64.address_length), | 228 | {ACPI_RSD_UINT64, ACPI_RSD_OFFSET(address64.address.address_length), |
229 | "Address Length", NULL}, | 229 | "Address Length", NULL}, |
230 | {ACPI_RSD_SOURCE, ACPI_RSD_OFFSET(address64.resource_source), NULL, NULL} | 230 | {ACPI_RSD_SOURCE, ACPI_RSD_OFFSET(address64.resource_source), NULL, NULL} |
231 | }; | 231 | }; |
@@ -234,15 +234,16 @@ struct acpi_rsdump_info acpi_rs_dump_ext_address64[8] = { | |||
234 | {ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE(acpi_rs_dump_ext_address64), | 234 | {ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE(acpi_rs_dump_ext_address64), |
235 | "64-Bit Extended Address Space", NULL}, | 235 | "64-Bit Extended Address Space", NULL}, |
236 | {ACPI_RSD_ADDRESS, 0, NULL, NULL}, | 236 | {ACPI_RSD_ADDRESS, 0, NULL, NULL}, |
237 | {ACPI_RSD_UINT64, ACPI_RSD_OFFSET(ext_address64.granularity), | 237 | {ACPI_RSD_UINT64, ACPI_RSD_OFFSET(ext_address64.address.granularity), |
238 | "Granularity", NULL}, | 238 | "Granularity", NULL}, |
239 | {ACPI_RSD_UINT64, ACPI_RSD_OFFSET(ext_address64.minimum), | 239 | {ACPI_RSD_UINT64, ACPI_RSD_OFFSET(ext_address64.address.minimum), |
240 | "Address Minimum", NULL}, | 240 | "Address Minimum", NULL}, |
241 | {ACPI_RSD_UINT64, ACPI_RSD_OFFSET(ext_address64.maximum), | 241 | {ACPI_RSD_UINT64, ACPI_RSD_OFFSET(ext_address64.address.maximum), |
242 | "Address Maximum", NULL}, | 242 | "Address Maximum", NULL}, |
243 | {ACPI_RSD_UINT64, ACPI_RSD_OFFSET(ext_address64.translation_offset), | 243 | {ACPI_RSD_UINT64, |
244 | ACPI_RSD_OFFSET(ext_address64.address.translation_offset), | ||
244 | "Translation Offset", NULL}, | 245 | "Translation Offset", NULL}, |
245 | {ACPI_RSD_UINT64, ACPI_RSD_OFFSET(ext_address64.address_length), | 246 | {ACPI_RSD_UINT64, ACPI_RSD_OFFSET(ext_address64.address.address_length), |
246 | "Address Length", NULL}, | 247 | "Address Length", NULL}, |
247 | {ACPI_RSD_UINT64, ACPI_RSD_OFFSET(ext_address64.type_specific), | 248 | {ACPI_RSD_UINT64, ACPI_RSD_OFFSET(ext_address64.type_specific), |
248 | "Type-Specific Attribute", NULL} | 249 | "Type-Specific Attribute", NULL} |
diff --git a/drivers/acpi/acpica/rsxface.c b/drivers/acpi/acpica/rsxface.c index 877ab9202133..295287891174 100644 --- a/drivers/acpi/acpica/rsxface.c +++ b/drivers/acpi/acpica/rsxface.c | |||
@@ -60,11 +60,11 @@ ACPI_MODULE_NAME("rsxface") | |||
60 | ACPI_COPY_FIELD(out, in, min_address_fixed); \ | 60 | ACPI_COPY_FIELD(out, in, min_address_fixed); \ |
61 | ACPI_COPY_FIELD(out, in, max_address_fixed); \ | 61 | ACPI_COPY_FIELD(out, in, max_address_fixed); \ |
62 | ACPI_COPY_FIELD(out, in, info); \ | 62 | ACPI_COPY_FIELD(out, in, info); \ |
63 | ACPI_COPY_FIELD(out, in, granularity); \ | 63 | ACPI_COPY_FIELD(out, in, address.granularity); \ |
64 | ACPI_COPY_FIELD(out, in, minimum); \ | 64 | ACPI_COPY_FIELD(out, in, address.minimum); \ |
65 | ACPI_COPY_FIELD(out, in, maximum); \ | 65 | ACPI_COPY_FIELD(out, in, address.maximum); \ |
66 | ACPI_COPY_FIELD(out, in, translation_offset); \ | 66 | ACPI_COPY_FIELD(out, in, address.translation_offset); \ |
67 | ACPI_COPY_FIELD(out, in, address_length); \ | 67 | ACPI_COPY_FIELD(out, in, address.address_length); \ |
68 | ACPI_COPY_FIELD(out, in, resource_source); | 68 | ACPI_COPY_FIELD(out, in, resource_source); |
69 | /* Local prototypes */ | 69 | /* Local prototypes */ |
70 | static acpi_status | 70 | static acpi_status |
diff --git a/drivers/acpi/acpica/tbxface.c b/drivers/acpi/acpica/tbxface.c index 6482b0ded652..0f9dd80b1cdd 100644 --- a/drivers/acpi/acpica/tbxface.c +++ b/drivers/acpi/acpica/tbxface.c | |||
@@ -265,45 +265,6 @@ ACPI_EXPORT_SYMBOL(acpi_get_table_header) | |||
265 | 265 | ||
266 | /******************************************************************************* | 266 | /******************************************************************************* |
267 | * | 267 | * |
268 | * FUNCTION: acpi_unload_table_id | ||
269 | * | ||
270 | * PARAMETERS: id - Owner ID of the table to be removed. | ||
271 | * | ||
272 | * RETURN: Status | ||
273 | * | ||
274 | * DESCRIPTION: This routine is used to force the unload of a table (by id) | ||
275 | * | ||
276 | ******************************************************************************/ | ||
277 | acpi_status acpi_unload_table_id(acpi_owner_id id) | ||
278 | { | ||
279 | int i; | ||
280 | acpi_status status = AE_NOT_EXIST; | ||
281 | |||
282 | ACPI_FUNCTION_TRACE(acpi_unload_table_id); | ||
283 | |||
284 | /* Find table in the global table list */ | ||
285 | for (i = 0; i < acpi_gbl_root_table_list.current_table_count; ++i) { | ||
286 | if (id != acpi_gbl_root_table_list.tables[i].owner_id) { | ||
287 | continue; | ||
288 | } | ||
289 | /* | ||
290 | * Delete all namespace objects owned by this table. Note that these | ||
291 | * objects can appear anywhere in the namespace by virtue of the AML | ||
292 | * "Scope" operator. Thus, we need to track ownership by an ID, not | ||
293 | * simply a position within the hierarchy | ||
294 | */ | ||
295 | acpi_tb_delete_namespace_by_owner(i); | ||
296 | status = acpi_tb_release_owner_id(i); | ||
297 | acpi_tb_set_table_loaded_flag(i, FALSE); | ||
298 | break; | ||
299 | } | ||
300 | return_ACPI_STATUS(status); | ||
301 | } | ||
302 | |||
303 | ACPI_EXPORT_SYMBOL(acpi_unload_table_id) | ||
304 | |||
305 | /******************************************************************************* | ||
306 | * | ||
307 | * FUNCTION: acpi_get_table_with_size | 268 | * FUNCTION: acpi_get_table_with_size |
308 | * | 269 | * |
309 | * PARAMETERS: signature - ACPI signature of needed table | 270 | * PARAMETERS: signature - ACPI signature of needed table |
diff --git a/drivers/acpi/pci_root.c b/drivers/acpi/pci_root.c index c6bcb8c719d8..e53e0f659204 100644 --- a/drivers/acpi/pci_root.c +++ b/drivers/acpi/pci_root.c | |||
@@ -112,10 +112,10 @@ get_root_bridge_busnr_callback(struct acpi_resource *resource, void *data) | |||
112 | if (ACPI_FAILURE(status)) | 112 | if (ACPI_FAILURE(status)) |
113 | return AE_OK; | 113 | return AE_OK; |
114 | 114 | ||
115 | if ((address.address_length > 0) && | 115 | if ((address.address.address_length > 0) && |
116 | (address.resource_type == ACPI_BUS_NUMBER_RANGE)) { | 116 | (address.resource_type == ACPI_BUS_NUMBER_RANGE)) { |
117 | res->start = address.minimum; | 117 | res->start = address.address.minimum; |
118 | res->end = address.minimum + address.address_length - 1; | 118 | res->end = address.address.minimum + address.address.address_length - 1; |
119 | } | 119 | } |
120 | 120 | ||
121 | return AE_OK; | 121 | return AE_OK; |
diff --git a/drivers/acpi/resource.c b/drivers/acpi/resource.c index 782a0d15c25f..d0a4d90c6bcc 100644 --- a/drivers/acpi/resource.c +++ b/drivers/acpi/resource.c | |||
@@ -202,22 +202,22 @@ bool acpi_dev_resource_address_space(struct acpi_resource *ares, | |||
202 | if (ACPI_FAILURE(status)) | 202 | if (ACPI_FAILURE(status)) |
203 | return false; | 203 | return false; |
204 | 204 | ||
205 | res->start = addr.minimum; | 205 | res->start = addr.address.minimum; |
206 | res->end = addr.maximum; | 206 | res->end = addr.address.maximum; |
207 | window = addr.producer_consumer == ACPI_PRODUCER; | 207 | window = addr.producer_consumer == ACPI_PRODUCER; |
208 | 208 | ||
209 | switch(addr.resource_type) { | 209 | switch(addr.resource_type) { |
210 | case ACPI_MEMORY_RANGE: | 210 | case ACPI_MEMORY_RANGE: |
211 | len = addr.maximum - addr.minimum + 1; | 211 | len = addr.address.maximum - addr.address.minimum + 1; |
212 | res->flags = acpi_dev_memresource_flags(len, | 212 | res->flags = acpi_dev_memresource_flags(len, |
213 | addr.info.mem.write_protect, | 213 | addr.info.mem.write_protect, |
214 | window); | 214 | window); |
215 | break; | 215 | break; |
216 | case ACPI_IO_RANGE: | 216 | case ACPI_IO_RANGE: |
217 | io_decode = addr.granularity == 0xfff ? | 217 | io_decode = addr.address.granularity == 0xfff ? |
218 | ACPI_DECODE_10 : ACPI_DECODE_16; | 218 | ACPI_DECODE_10 : ACPI_DECODE_16; |
219 | res->flags = acpi_dev_ioresource_flags(addr.minimum, | 219 | res->flags = acpi_dev_ioresource_flags(addr.address.minimum, |
220 | addr.maximum, | 220 | addr.address.maximum, |
221 | io_decode, window); | 221 | io_decode, window); |
222 | break; | 222 | break; |
223 | case ACPI_BUS_NUMBER_RANGE: | 223 | case ACPI_BUS_NUMBER_RANGE: |
@@ -253,22 +253,22 @@ bool acpi_dev_resource_ext_address_space(struct acpi_resource *ares, | |||
253 | 253 | ||
254 | ext_addr = &ares->data.ext_address64; | 254 | ext_addr = &ares->data.ext_address64; |
255 | 255 | ||
256 | res->start = ext_addr->minimum; | 256 | res->start = ext_addr->address.minimum; |
257 | res->end = ext_addr->maximum; | 257 | res->end = ext_addr->address.maximum; |
258 | window = ext_addr->producer_consumer == ACPI_PRODUCER; | 258 | window = ext_addr->producer_consumer == ACPI_PRODUCER; |
259 | 259 | ||
260 | switch(ext_addr->resource_type) { | 260 | switch(ext_addr->resource_type) { |
261 | case ACPI_MEMORY_RANGE: | 261 | case ACPI_MEMORY_RANGE: |
262 | len = ext_addr->maximum - ext_addr->minimum + 1; | 262 | len = ext_addr->address.maximum - ext_addr->address.minimum + 1; |
263 | res->flags = acpi_dev_memresource_flags(len, | 263 | res->flags = acpi_dev_memresource_flags(len, |
264 | ext_addr->info.mem.write_protect, | 264 | ext_addr->info.mem.write_protect, |
265 | window); | 265 | window); |
266 | break; | 266 | break; |
267 | case ACPI_IO_RANGE: | 267 | case ACPI_IO_RANGE: |
268 | io_decode = ext_addr->granularity == 0xfff ? | 268 | io_decode = ext_addr->address.granularity == 0xfff ? |
269 | ACPI_DECODE_10 : ACPI_DECODE_16; | 269 | ACPI_DECODE_10 : ACPI_DECODE_16; |
270 | res->flags = acpi_dev_ioresource_flags(ext_addr->minimum, | 270 | res->flags = acpi_dev_ioresource_flags(ext_addr->address.minimum, |
271 | ext_addr->maximum, | 271 | ext_addr->address.maximum, |
272 | io_decode, window); | 272 | io_decode, window); |
273 | break; | 273 | break; |
274 | case ACPI_BUS_NUMBER_RANGE: | 274 | case ACPI_BUS_NUMBER_RANGE: |
diff --git a/drivers/char/hpet.c b/drivers/char/hpet.c index d5d4cd82b9f7..5c0baa9ffc64 100644 --- a/drivers/char/hpet.c +++ b/drivers/char/hpet.c | |||
@@ -976,8 +976,8 @@ static acpi_status hpet_resources(struct acpi_resource *res, void *data) | |||
976 | status = acpi_resource_to_address64(res, &addr); | 976 | status = acpi_resource_to_address64(res, &addr); |
977 | 977 | ||
978 | if (ACPI_SUCCESS(status)) { | 978 | if (ACPI_SUCCESS(status)) { |
979 | hdp->hd_phys_address = addr.minimum; | 979 | hdp->hd_phys_address = addr.address.minimum; |
980 | hdp->hd_address = ioremap(addr.minimum, addr.address_length); | 980 | hdp->hd_address = ioremap(addr.address.minimum, addr.address.address_length); |
981 | 981 | ||
982 | if (hpet_is_known(hdp)) { | 982 | if (hpet_is_known(hdp)) { |
983 | iounmap(hdp->hd_address); | 983 | iounmap(hdp->hd_address); |
diff --git a/drivers/hv/vmbus_drv.c b/drivers/hv/vmbus_drv.c index 4d6b26979fbd..bb3725b672cf 100644 --- a/drivers/hv/vmbus_drv.c +++ b/drivers/hv/vmbus_drv.c | |||
@@ -861,8 +861,8 @@ static acpi_status vmbus_walk_resources(struct acpi_resource *res, void *ctx) | |||
861 | break; | 861 | break; |
862 | 862 | ||
863 | case ACPI_RESOURCE_TYPE_ADDRESS64: | 863 | case ACPI_RESOURCE_TYPE_ADDRESS64: |
864 | hyperv_mmio.start = res->data.address64.minimum; | 864 | hyperv_mmio.start = res->data.address64.address.minimum; |
865 | hyperv_mmio.end = res->data.address64.maximum; | 865 | hyperv_mmio.end = res->data.address64.address.maximum; |
866 | break; | 866 | break; |
867 | } | 867 | } |
868 | 868 | ||
diff --git a/drivers/pci/hotplug/sgi_hotplug.c b/drivers/pci/hotplug/sgi_hotplug.c index bada20999870..c32fb786d48e 100644 --- a/drivers/pci/hotplug/sgi_hotplug.c +++ b/drivers/pci/hotplug/sgi_hotplug.c | |||
@@ -475,7 +475,7 @@ static int disable_slot(struct hotplug_slot *bss_hotplug_slot) | |||
475 | struct slot *slot = bss_hotplug_slot->private; | 475 | struct slot *slot = bss_hotplug_slot->private; |
476 | struct pci_dev *dev, *temp; | 476 | struct pci_dev *dev, *temp; |
477 | int rc; | 477 | int rc; |
478 | acpi_owner_id ssdt_id = 0; | 478 | acpi_handle ssdt_hdl = NULL; |
479 | 479 | ||
480 | /* Acquire update access to the bus */ | 480 | /* Acquire update access to the bus */ |
481 | mutex_lock(&sn_hotplug_mutex); | 481 | mutex_lock(&sn_hotplug_mutex); |
@@ -522,7 +522,7 @@ static int disable_slot(struct hotplug_slot *bss_hotplug_slot) | |||
522 | if (ACPI_SUCCESS(ret) && | 522 | if (ACPI_SUCCESS(ret) && |
523 | (adr>>16) == (slot->device_num + 1)) { | 523 | (adr>>16) == (slot->device_num + 1)) { |
524 | /* retain the owner id */ | 524 | /* retain the owner id */ |
525 | acpi_get_id(chandle, &ssdt_id); | 525 | ssdt_hdl = chandle; |
526 | 526 | ||
527 | ret = acpi_bus_get_device(chandle, | 527 | ret = acpi_bus_get_device(chandle, |
528 | &device); | 528 | &device); |
@@ -547,12 +547,13 @@ static int disable_slot(struct hotplug_slot *bss_hotplug_slot) | |||
547 | pci_unlock_rescan_remove(); | 547 | pci_unlock_rescan_remove(); |
548 | 548 | ||
549 | /* Remove the SSDT for the slot from the ACPI namespace */ | 549 | /* Remove the SSDT for the slot from the ACPI namespace */ |
550 | if (SN_ACPI_BASE_SUPPORT() && ssdt_id) { | 550 | if (SN_ACPI_BASE_SUPPORT() && ssdt_hdl) { |
551 | acpi_status ret; | 551 | acpi_status ret; |
552 | ret = acpi_unload_table_id(ssdt_id); | 552 | ret = acpi_unload_parent_table(ssdt_hdl); |
553 | if (ACPI_FAILURE(ret)) { | 553 | if (ACPI_FAILURE(ret)) { |
554 | printk(KERN_ERR "%s: acpi_unload_table_id failed (0x%x) for id %d\n", | 554 | acpi_handle_err(ssdt_hdl, |
555 | __func__, ret, ssdt_id); | 555 | "%s: acpi_unload_parent_table failed (0x%x)\n", |
556 | __func__, ret); | ||
556 | /* try to continue on */ | 557 | /* try to continue on */ |
557 | } | 558 | } |
558 | } | 559 | } |
diff --git a/drivers/pnp/pnpacpi/rsparser.c b/drivers/pnp/pnpacpi/rsparser.c index 66977ebf13b3..2d9bc789af0f 100644 --- a/drivers/pnp/pnpacpi/rsparser.c +++ b/drivers/pnp/pnpacpi/rsparser.c | |||
@@ -410,12 +410,12 @@ static __init void pnpacpi_parse_address_option(struct pnp_dev *dev, | |||
410 | if (p->resource_type == ACPI_MEMORY_RANGE) { | 410 | if (p->resource_type == ACPI_MEMORY_RANGE) { |
411 | if (p->info.mem.write_protect == ACPI_READ_WRITE_MEMORY) | 411 | if (p->info.mem.write_protect == ACPI_READ_WRITE_MEMORY) |
412 | flags = IORESOURCE_MEM_WRITEABLE; | 412 | flags = IORESOURCE_MEM_WRITEABLE; |
413 | pnp_register_mem_resource(dev, option_flags, p->minimum, | 413 | pnp_register_mem_resource(dev, option_flags, p->address.minimum, |
414 | p->minimum, 0, p->address_length, | 414 | p->address.minimum, 0, p->address.address_length, |
415 | flags); | 415 | flags); |
416 | } else if (p->resource_type == ACPI_IO_RANGE) | 416 | } else if (p->resource_type == ACPI_IO_RANGE) |
417 | pnp_register_port_resource(dev, option_flags, p->minimum, | 417 | pnp_register_port_resource(dev, option_flags, p->address.minimum, |
418 | p->minimum, 0, p->address_length, | 418 | p->address.minimum, 0, p->address.address_length, |
419 | IORESOURCE_IO_FIXED); | 419 | IORESOURCE_IO_FIXED); |
420 | } | 420 | } |
421 | 421 | ||
@@ -429,12 +429,12 @@ static __init void pnpacpi_parse_ext_address_option(struct pnp_dev *dev, | |||
429 | if (p->resource_type == ACPI_MEMORY_RANGE) { | 429 | if (p->resource_type == ACPI_MEMORY_RANGE) { |
430 | if (p->info.mem.write_protect == ACPI_READ_WRITE_MEMORY) | 430 | if (p->info.mem.write_protect == ACPI_READ_WRITE_MEMORY) |
431 | flags = IORESOURCE_MEM_WRITEABLE; | 431 | flags = IORESOURCE_MEM_WRITEABLE; |
432 | pnp_register_mem_resource(dev, option_flags, p->minimum, | 432 | pnp_register_mem_resource(dev, option_flags, p->address.minimum, |
433 | p->minimum, 0, p->address_length, | 433 | p->address.minimum, 0, p->address.address_length, |
434 | flags); | 434 | flags); |
435 | } else if (p->resource_type == ACPI_IO_RANGE) | 435 | } else if (p->resource_type == ACPI_IO_RANGE) |
436 | pnp_register_port_resource(dev, option_flags, p->minimum, | 436 | pnp_register_port_resource(dev, option_flags, p->address.minimum, |
437 | p->minimum, 0, p->address_length, | 437 | p->address.minimum, 0, p->address.address_length, |
438 | IORESOURCE_IO_FIXED); | 438 | IORESOURCE_IO_FIXED); |
439 | } | 439 | } |
440 | 440 | ||
diff --git a/drivers/xen/xen-acpi-memhotplug.c b/drivers/xen/xen-acpi-memhotplug.c index 34e40b733f9a..4fc886cd5586 100644 --- a/drivers/xen/xen-acpi-memhotplug.c +++ b/drivers/xen/xen-acpi-memhotplug.c | |||
@@ -117,8 +117,8 @@ acpi_memory_get_resource(struct acpi_resource *resource, void *context) | |||
117 | list_for_each_entry(info, &mem_device->res_list, list) { | 117 | list_for_each_entry(info, &mem_device->res_list, list) { |
118 | if ((info->caching == address64.info.mem.caching) && | 118 | if ((info->caching == address64.info.mem.caching) && |
119 | (info->write_protect == address64.info.mem.write_protect) && | 119 | (info->write_protect == address64.info.mem.write_protect) && |
120 | (info->start_addr + info->length == address64.minimum)) { | 120 | (info->start_addr + info->length == address64.address.minimum)) { |
121 | info->length += address64.address_length; | 121 | info->length += address64.address.address_length; |
122 | return AE_OK; | 122 | return AE_OK; |
123 | } | 123 | } |
124 | } | 124 | } |
@@ -130,8 +130,8 @@ acpi_memory_get_resource(struct acpi_resource *resource, void *context) | |||
130 | INIT_LIST_HEAD(&new->list); | 130 | INIT_LIST_HEAD(&new->list); |
131 | new->caching = address64.info.mem.caching; | 131 | new->caching = address64.info.mem.caching; |
132 | new->write_protect = address64.info.mem.write_protect; | 132 | new->write_protect = address64.info.mem.write_protect; |
133 | new->start_addr = address64.minimum; | 133 | new->start_addr = address64.address.minimum; |
134 | new->length = address64.address_length; | 134 | new->length = address64.address.address_length; |
135 | list_add_tail(&new->list, &mem_device->res_list); | 135 | list_add_tail(&new->list, &mem_device->res_list); |
136 | 136 | ||
137 | return AE_OK; | 137 | return AE_OK; |
diff --git a/include/acpi/acpixf.h b/include/acpi/acpixf.h index 5ba78464c1b1..5dd21bc18ce6 100644 --- a/include/acpi/acpixf.h +++ b/include/acpi/acpixf.h | |||
@@ -891,12 +891,6 @@ ACPI_APP_DEPENDENT_RETURN_VOID(ACPI_PRINTF_LIKE(1) | |||
891 | ACPI_GLOBAL(u8, acpi_gbl_permanent_mmap); | 891 | ACPI_GLOBAL(u8, acpi_gbl_permanent_mmap); |
892 | 892 | ||
893 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | 893 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status |
894 | acpi_get_id(acpi_handle object, | ||
895 | acpi_owner_id * out_type)) | ||
896 | |||
897 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status acpi_unload_table_id(acpi_owner_id id)) | ||
898 | |||
899 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | ||
900 | acpi_get_table_with_size(acpi_string signature, | 894 | acpi_get_table_with_size(acpi_string signature, |
901 | u32 instance, | 895 | u32 instance, |
902 | struct acpi_table_header | 896 | struct acpi_table_header |
diff --git a/include/acpi/acrestyp.h b/include/acpi/acrestyp.h index eb760ca0b2e0..0b75e01212c7 100644 --- a/include/acpi/acrestyp.h +++ b/include/acpi/acrestyp.h | |||
@@ -305,43 +305,51 @@ struct acpi_resource_source { | |||
305 | u8 max_address_fixed; \ | 305 | u8 max_address_fixed; \ |
306 | union acpi_resource_attribute info; | 306 | union acpi_resource_attribute info; |
307 | 307 | ||
308 | struct acpi_resource_address { | 308 | struct acpi_address16_attribute { |
309 | ACPI_RESOURCE_ADDRESS_COMMON}; | 309 | u16 granularity; |
310 | |||
311 | struct acpi_resource_address16 { | ||
312 | ACPI_RESOURCE_ADDRESS_COMMON u16 granularity; | ||
313 | u16 minimum; | 310 | u16 minimum; |
314 | u16 maximum; | 311 | u16 maximum; |
315 | u16 translation_offset; | 312 | u16 translation_offset; |
316 | u16 address_length; | 313 | u16 address_length; |
317 | struct acpi_resource_source resource_source; | ||
318 | }; | 314 | }; |
319 | 315 | ||
320 | struct acpi_resource_address32 { | 316 | struct acpi_address32_attribute { |
321 | ACPI_RESOURCE_ADDRESS_COMMON u32 granularity; | 317 | u32 granularity; |
322 | u32 minimum; | 318 | u32 minimum; |
323 | u32 maximum; | 319 | u32 maximum; |
324 | u32 translation_offset; | 320 | u32 translation_offset; |
325 | u32 address_length; | 321 | u32 address_length; |
326 | struct acpi_resource_source resource_source; | ||
327 | }; | 322 | }; |
328 | 323 | ||
329 | struct acpi_resource_address64 { | 324 | struct acpi_address64_attribute { |
330 | ACPI_RESOURCE_ADDRESS_COMMON u64 granularity; | 325 | u64 granularity; |
331 | u64 minimum; | 326 | u64 minimum; |
332 | u64 maximum; | 327 | u64 maximum; |
333 | u64 translation_offset; | 328 | u64 translation_offset; |
334 | u64 address_length; | 329 | u64 address_length; |
330 | }; | ||
331 | |||
332 | struct acpi_resource_address { | ||
333 | ACPI_RESOURCE_ADDRESS_COMMON}; | ||
334 | |||
335 | struct acpi_resource_address16 { | ||
336 | ACPI_RESOURCE_ADDRESS_COMMON struct acpi_address16_attribute address; | ||
337 | struct acpi_resource_source resource_source; | ||
338 | }; | ||
339 | |||
340 | struct acpi_resource_address32 { | ||
341 | ACPI_RESOURCE_ADDRESS_COMMON struct acpi_address32_attribute address; | ||
342 | struct acpi_resource_source resource_source; | ||
343 | }; | ||
344 | |||
345 | struct acpi_resource_address64 { | ||
346 | ACPI_RESOURCE_ADDRESS_COMMON struct acpi_address64_attribute address; | ||
335 | struct acpi_resource_source resource_source; | 347 | struct acpi_resource_source resource_source; |
336 | }; | 348 | }; |
337 | 349 | ||
338 | struct acpi_resource_extended_address64 { | 350 | struct acpi_resource_extended_address64 { |
339 | ACPI_RESOURCE_ADDRESS_COMMON u8 revision_ID; | 351 | ACPI_RESOURCE_ADDRESS_COMMON u8 revision_ID; |
340 | u64 granularity; | 352 | struct acpi_address64_attribute address; |
341 | u64 minimum; | ||
342 | u64 maximum; | ||
343 | u64 translation_offset; | ||
344 | u64 address_length; | ||
345 | u64 type_specific; | 353 | u64 type_specific; |
346 | }; | 354 | }; |
347 | 355 | ||