diff options
author | Bob Moore <robert.moore@intel.com> | 2008-04-10 11:06:44 -0400 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2008-04-22 19:09:25 -0400 |
commit | 66d3ca9ea28e1b3d591083772fd797b9b46410b8 (patch) | |
tree | 71d34c39cd081e4fe46e024023d3146c8fc9fff3 /drivers/acpi/resources/rscalc.c | |
parent | d8846574ed4a81be319bf68728f9cca9af595afd (diff) |
ACPICA: Fixes for size of StartDependent resource descriptor
Fixed a couple of size calculation issues with the variable-length
Start Dependent resource descriptor.
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Alexey Starikovskiy <astarikovskiy@suse.de>
Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/acpi/resources/rscalc.c')
-rw-r--r-- | drivers/acpi/resources/rscalc.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/acpi/resources/rscalc.c b/drivers/acpi/resources/rscalc.c index db0a835e3317..d801823de016 100644 --- a/drivers/acpi/resources/rscalc.c +++ b/drivers/acpi/resources/rscalc.c | |||
@@ -213,11 +213,22 @@ acpi_rs_get_aml_length(struct acpi_resource * resource, acpi_size * size_needed) | |||
213 | switch (resource->type) { | 213 | switch (resource->type) { |
214 | case ACPI_RESOURCE_TYPE_IRQ: | 214 | case ACPI_RESOURCE_TYPE_IRQ: |
215 | 215 | ||
216 | /* Length can be 3 or 2 */ | ||
217 | |||
216 | if (resource->data.irq.descriptor_length == 2) { | 218 | if (resource->data.irq.descriptor_length == 2) { |
217 | total_size--; | 219 | total_size--; |
218 | } | 220 | } |
219 | break; | 221 | break; |
220 | 222 | ||
223 | case ACPI_RESOURCE_TYPE_START_DEPENDENT: | ||
224 | |||
225 | /* Length can be 1 or 0 */ | ||
226 | |||
227 | if (resource->data.irq.descriptor_length == 0) { | ||
228 | total_size--; | ||
229 | } | ||
230 | break; | ||
231 | |||
221 | case ACPI_RESOURCE_TYPE_VENDOR: | 232 | case ACPI_RESOURCE_TYPE_VENDOR: |
222 | /* | 233 | /* |
223 | * Vendor Defined Resource: | 234 | * Vendor Defined Resource: |